Commit Graph

138 Commits

Author SHA1 Message Date
tralezab e9988dffba whoops 2019-08-15 12:33:29 -07:00
tralezab 81529e49fe song for this fix: Seiko Matsuda - Aoi Sangoshou 2019-08-15 12:30:13 -07:00
tralezab 270f349a58 removes the stun from spraycans (#45048)
* removes stun from spraycans

* compiles

* now flashes the color you were sprayed with
2019-07-09 11:20:24 -04:00
nemvar 23648022c7 Gives tagger the art component (#45046)
* freespraycanbegone

* crayon

* Crayoncolor

* atomized
2019-07-08 14:02:15 -04:00
vuonojenmustaturska 8ddc9677c7 examine-code refactor (#44636)
* 1/4 done? maybe?

* more

* stuff

* incremental stuff

* stuff

* stuff & things

* mostly done but not yet

* stuffing

* stuffing 2: electric boogaloo

* Git Commit and the Kingdom of the Crystal Skull

* make it actually compile

* found more stuff

* fixes

* fix AI laws appearing out of order

* fix windows

* should be the remaining stuff

* this time for real

* i guess it should compile too

* fix sechuds
2019-06-19 22:07:57 +02:00
vuonojenmustaturska 58935e41c9 Fixes and speedups to spraycans/crayons (#44561)
* spraycan stuff

* tgui.js again

* Update text.dm
2019-06-18 15:25:49 +02:00
Emmett Gaines c3f95024b2 Gets rid of the GetComponent macros (#44220)
* Removes the GetComponent macros

* Regex replacement for GET_COMPONENT

Search: `GET_COMPONENT\( *(.+?) *, *(.+?) *\)`
Replace: `var$2/$1 = GetComponent($2)`

* Regex replacement for GET_COMPONENT_FROM

Search: `GET_COMPONENT_FROM\( *(.+?) *, *(.+?) *, *(.+?) *\)`
Replace: `var$2/$1 = $3.GetComponent($2)`
2019-06-04 17:39:58 +02:00
vuonojenmustaturska 6a106bc877 Remove reagent ids and use typepaths where applicable (#44166)
cl Naksu
code: reagent IDs have been removed in favor using reagent typepaths where applicable
fix: mechas, borg hyposprays etc no longer display internal reagent ids to the player
/cl
2019-05-31 21:57:26 +12:00
Akrilla 2d32be1904 Small storage refactor and examine change (#44109)
* Removes repeated line

* Description change for clothing items that can only store specific items

* Get all children of can_hold listed items.

* can_hold only needs the top most item, child items are dealt automatically

* cant_hold related change

* Text change

* Moves the item check to the line above, and removes the current.

* Same changes, but to belt/wallet code.

* Change to using signals instead

* Generic signal on datum/topic

* Cache typecache, and small signal change

* Small argument tweaks and remove unneeded lists

* Change to proc

* Change call can_holds/cant_holds to use new proc

* initial, and cleaned up display code

* Null check
2019-05-30 14:20:29 -04:00
vuonojenmustaturska fb45b7a017 Turns trait accessors into defines, fixes some bugs (#43820)
It's free performance.
2019-05-06 19:44:05 -04:00
AnturK 0c25ec40a5 Fix spraycan changing opacity and paint remover not working on objects (#43358)
The paint remover change is technically a buff but it was kinda
inconsistent with all other color removal sources.
2019-03-27 21:53:14 -07:00
ShizCalev cf701f94fc Improve rainbow crayon/spraycan click code (#43146) 2019-03-17 15:02:14 -07:00
Mickyan ca84639286 Allows coloring objects with spray cans (#42327) 2019-01-16 16:43:04 -05:00
ShizCalev 87faef9019 Adds logging to reagent transfers 2018-10-31 08:36:21 -04:00
kevinz000 3e7184c975 Combat/Stun (slip) overhaul staging, mobility flags, adds crawling (#39967)
Aiming to implement the framework oranges has detailed in https://tgstation13.org/phpBB/viewtopic.php?f=10&t=19102
Moves canmove to a bitflag in a new variable called mobility_flags, that will allow finer grain control of what someone can do codewise, for example, letting them move but not stand up, or stand up but not move.

Adds Immobilize()d status effect that freezes movement but does not prevent anything else.
Adds Paralyze()d which is oldstun "You can't do anything at all and knock down).
Stun() will now prevent any item/UI usage and movement (which is similar to before).
Knockdown() will now only knockdown without preventing item usage/movement.
People knocked down will be able to crawl at softcrit-speeds
Refactors some /mob variables and procs to /mob/living.
update_canmove() refactored to update_mobility() and will handle mobility_flags instead of the removed canmove

cl
rscadd: Crawling is now possible if you are down but not stunned. Obviously, you will be slower.
/cl
Refactors are done. I'd rather get this merged faster than try to fine tune stuff like slips. The most obvious gameplay effect this pr has will be crawling, and I believe I made tiny tweaks but I can't find it Anything I missed or weird behavior should be reported.
2018-10-11 11:22:21 +13:00
Mickyan c6803492ab Add new graffiti (#40559) 2018-09-29 19:47:52 -07:00
vuonojenmustaturska c704e58794 yeah maybe with this, the world will actually init 2018-09-11 18:42:59 +03:00
vuonojenmustaturska c15f7edbbf i opened the wrong file by accident, this is the result 2018-09-11 17:59:51 +03:00
81Denton d8393bed10 Add examine descs, air alarm construction descs (#39949)
A bunch of items were missing examine messages about their alt+click
functionality, I added them. Also, construction step descs for air alarms.
2018-09-05 23:06:23 -07:00
XDTM 3f32f8c110 [Ready]Logs when speech is forced by an external factor (#39964)
* Logs when speech is forced by an external factor

* makes say args uniform

* fix
2018-09-03 11:38:16 +02:00
Mickyan 764844f530 Artsy fartsy quirks (#39930)
add: Show your support for the fine arts with these new quirks:
add: Tagger: drawing graffiti takes half as many charges off your spraycan/crayon
add: Photographer: halves the cooldown after taking a picture
add: Musician: tune instruments to temporarily give your music beneficial effects such as clearing minor debuffs and improving mood.

These should be pretty straight forward, musician is especially interesting because you can share tuned instruments with other players, and think it has the potential for some interesting cooperation. For example, as a musician bartender you may decide to hand your tuned instrument to the mime so they can play music and have your customers not stumble around as much while also making them happier!

I don't think there's realistically any balance concerns. Most of the debuffs it clears can already be cleared by drinking tea, they're a pretty rare occurrence in a fight and are usually gone before you have the chance or need to do anything about them. At most helps you walk straight while you're drunk, really.

All these quirks make you start the shift with all the tools of the trade, to make them more worthwhile to take and make the player feel like their quirks are part of their character on a regular basis (ex. a player with the tagger quirk is more likely to make graffiti on a whim, a photographer will always have a camera to take pictures of interesting things etc. whereas they would otherwise have to round up supplies at roundstart every time)
2018-08-31 00:10:10 +12:00
Trevor Serpas bee0b5b2c3 Afterattack() Signal (#38606)
* adds signal and modifies each call of afterattack to call it's inherited proc

* uses new macro for sendsignal()

* map fuck

* skip precommithooks

* combine and negate 2 ifs
2018-07-07 02:00:25 -04:00
oranges 6f991c5056 Crayons no longer use charge when used on a canvas 2018-05-04 22:26:11 -05:00
kevinz000 ab993a117a Component Storage, Experimental attack_hand and [ui_]interact() refactors (#36696) 2018-04-12 14:46:14 +03:00
SailorDave 7f1c8ef88b Crayons and spraycans can no longer infinitely draw large graffiti (#36412)
🆑 SailorDave
fix: Crayons and spraycans can no longer draw an unlimited amount of large graffiti regardless of uses left.
/🆑

Fixes https://github.com/tgstation/tgstation/issues/35833

The check_empty() at the top of the afterattack() was only checking if the can was empty, not if the amount of charges left was less than the spray amount. This is fixed.
2018-03-19 08:07:28 +01:00
ShizCalev bfde5ac057 [s] Fixes altclick exploits (#35456)
* Fixes altclick exploits

* Removed free spam, fixes monkey altclicks

* replaced named args with proper defines

* More cleanup and fixes

* Better yet

* Another exploit fix

* pet carrier fix
2018-02-11 16:06:12 +13:00
ChuckTheJittai 02033f1756 All color inputs use current color as default choice
Went through all the color inputs and made the "default" argument the current color of what is being selected.
2018-01-21 13:07:35 -05:00
deathride58 813789c410 makes crayons place decals at the pixel you click 2018-01-01 19:07:46 -05:00
Ashe Higgs d447acdc6e All-In-One grinder results are now defined by type, not by huge lists (#33181)
I had some time free, and noticed how awful the reagent grinder code was - it used huge static lists containing types and their associated reagents from grinding.

This is now split into two new vars on /obj/item - var/list/grind_results and var/list/juice_results, as well as two new helper procs, on_grind() and on_juice() to allow those to change based on conditions like plant potency. Such checks and the like have been moved to that. If any of these procs return -1, the operation is canceled.

I also fixed some of the recipes that didn't work. The reagent IDs for them didn't exist, leading me to believe that they weren't tested. I corrected that! (I've tested every single recipe in this PR, with the exception of a few juicing-related ones.)
2017-12-15 10:48:25 +13:00
vuonojenmustaturska ae8207da99 These memes should stay dreams 2017-11-06 02:01:27 +02:00
KorPhaeron 360fbffac7 Fixes losing species preferences (#32093) 2017-10-26 18:59:57 +02:00
kevinz000 629662bbec Update crayons.dm (#32024) 2017-10-24 09:07:03 -04:00
Tad Hardesty 13f32a938b Improve extended examination text for many objects (#31381)
Plurality, capitalization, punctuation, and item icons have been
improved. Status displays now show the same text on examination that
they do visually. Inducers only show a success message when they
actually succeed.
2017-10-10 21:06:46 +13:00
XDTM 35d8a55926 Adds H.E.C.K. suits, spraycan_paintable component, and reworks item's attackby() (#30525)
* Adds hostile environiment suits

* NOBODY SAW THIS

* the CURSE

* c

* No more stun removal

* fix

* a

* in the chest

* back

* Fixes

* duh

* fucking helmets fucking secbots fucking past coders

* yeah

* REEEEE

* revert to here

* this better work

* cyberboss

* Update effects.dm

* check for charges

* B U L K

* spraycans

* READY

* the if, man

* why the fuck did it convert to spaces

* Fix it
2017-10-05 11:52:47 -04:00
Jordan Brown 4178c209f1 Configuration datum refactor (#30763)
* Configuration datum refactor

* More WIP

* New easier on the eyes format

* More WIP

* Finished config.txt

* Fucktons more WIP

* The end of conversion draws near...

* Add all this shit

* Done converting entries finally

* Hunting down compile errors

* More WIP

* MORE CONVERSIONS

* More WIP

* More WIP

* Oh shit only 90 errors this time!

* IT COMPILES!!!

* Fixes world start runtimes
2017-09-29 15:36:51 +13:00
MoreRobustThanYou c48def94d8 Removes gangs (#30056) 2017-08-31 17:31:49 -03:00
Jordan Brown af4d9a85c9 Repaths /obj/item/weapon to /obj/item (#29929) 2017-08-16 10:38:51 -03:00
ShizCalev d525b18d8d Completes major inhand split project (#29574)
* Completes split project

* More work on it. Should be more or less finished
2017-07-29 16:47:37 -03:00
ShizCalev 45d3d52af7 Made some object lists less terrible to read (#29304)
* spaces

* more spaces

* last ones
2017-07-18 10:44:29 -04:00
ShizCalev 59ef81245b Changes some 1s and 0s to TRUE and FALSE (#29144) 2017-07-10 10:31:34 -04:00
Joan Lung 2672d88800 Renames stun effects and changes stun input values as preliminary work for changing stuns to status effects (#28524) 2017-06-18 23:03:51 -03:00
Robustin 1a76285d1c Decentralization and Gang Clothes 2017-05-12 00:54:09 -04:00
PKPenguin321 c2bfa07473 Revert "Removes the gang gamemode" (#26915) 2017-05-04 21:19:02 -05:00
Lzimann 59eed8f11c Removes the gang gamemode 2017-05-02 14:28:55 -03:00
QualityVan 6ef65f5d2b Adds crayon grinding (#26605)
* Enables crayon grinding

* Adds color to red crayon powder and powder to black and white crayons.

* Lets you color stuff with crayon powder
2017-04-27 11:16:43 -03:00
MrPerson ff3f84ab81 Replaces /image with /mutable_appearance, where appropriate (#26518)
In cases where you're creating an image to use as an overlay, it makes more sense to use a mutable_appearance if you can. The image will create a static appearance for not just the image but also each intermediate step if you change vars along the way. The mutable appearance avoids this unnecessary and expensive process. The only situation that requires an image instead of a mutable_appearance is if the overlay is supposed to be directional. MA's ignore direction while images don't. I dunno why, probably another BYOND-ism.

I added a convenience function, mutable_appearance(), designed to emulate image(). Also went ahead and set the default plane of /mutable_appearance to FLOAT_PLANE because it's fucking 0 by default.

Several overlays that were image() calls were changed to just text strings when I could. overlays += "string" has the same result as overlays += image(icon, "string") and saves a proc call.
2017-04-25 12:15:16 +02:00
Cyberboss 9e1ef0ffe2 Global variable wrappers (#25325)
* Add the system for managed global variables

* Travis ban old globals

* So you CAN inline proccall, that's neat

* Fix that

* master.dm

* Remove the hack procs

* Move InitGlobals to the proper spot

* configuration.dm

* Fix the missing pre-slash

* clockcult.dm

* This is probably for the best

* Doy

* Fix shit

* Rest of the DEFINES tree

* Fix

* Use global. for access

* Update find_references_in_globals

Always hated that proc

Whoever made it must've bee a r e a l idiot...

* __HELPERS tree

* Move global initialization to master.

Fix the declaration

* database.dm

* Dat newline

* I said DECLARATIVE order!

* Here's something you can chew on @Iamgoofball

* game_modes.dm

* Fix this

* genetics.dm

* flavor_misc.dm

* More stuff

* Do it mso's way. Keep the controllers as global

* Make master actually see it

* Fix

* Finish _globalvars/lists

* Finish the rest of the _globalvars tree

* This is weird

* Migrate the controllers

* SLOTH -> GLOB

* Lighting globals

* round_start_time -> ticker

* PAI card list -> pai SS

* record_id_num -> static

* Diseases list -> SSdisease

* More disease globals to the SS

* More disease stuff

* Emote list

* Better and better

* Bluh

* So much stuff

* Ahh

* Wires

* dview

* station_areas

* Teleportlocs

* blood_splatter_icons

* Stuff and such

* More stuff

* RAD IO

* More stuff and such

* Blob shit

* Changeling stuff

* Add "Balance" to changelogs

* Balance for changelog compiler + Auto Tagging

* Update the PR template

* hivemind_bank

* Bip

* sacrificed

* Good shit

* Better define

* More cult shit

* Devil shit

* Gang shit

* > borers

Fix shit

* Rename the define

* Nuke

* Objectives

* Sandbox

* Multiverse sword

* Announce systems

* Stuff and such

* TC con

* Airlock

* doppllllerrrrrr

* holopads

* Shut up byond you inconsistent fuck

* Sneaky fuck

* Burp

* Bip

* Fixnshit

* Port without regard

* askdlfjs;

* asdfjasoidojfi

* Protected globals and more

* SO MANY

* ajsimkvahsaoisd

* akfdsiaopwimfeoiwafaw

* gsdfigjosidjfgiosdg

* AHHHHHHHHHHHHHHHHHHHHHHH!!!!!

* facerolll

* ASDFASDFASDF

* Removes the unused parts of dmm_suite

* WIP

* Fix quote

* asdfjauwfnkjs

* afwlunhskjfda

* asfjlaiwuefhaf

* SO CLOSE

* wwwweeeeeewwwww

* agdgmoewranwg

* HOLY MOTHER OF FUCK AND THATS JUST HALF THE JOB?!?

* Fix syntax errors

* 100 errors

* Another 100

* So many...

* Ugh

* More shit

* kilme

* Stuuuuuufffff

* ajrgmrlshio;djfa;sdkl

* jkbhkhjbmjvjmh

* soi soi soi

* butt

* TODAY WE LEARNED THAT GLOBAL AND STATIC ARE THE EXACT SAME FUCKING THING

* lllllllllllllllllllllllllllllllllllllllllll

* afsdijfiawhnflnjhnwsdfs

* yugykihlugk,kj

* time to go

* STUFFF!!!

* AAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!

* ngoaijdjlfkamsdlkf

* Break time

* aufjsdklfalsjfi

* CONTROL KAY AND PRAY

* IT COMPILEELEELELAKLJFKLDAFJLKFDJLADKJHFLJKAJGAHIEJALDFJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

* Goteem

* Fix testing mode

* This does not belong in this PR

* Convert it to a controller

* Eh, fuck this option

* Revert controllerization Ill do it some other time

* Fix

* Working controllerization

* FOR THE LOVE OF CHRIST PROTECT THE LOGS

* Protect admins and deadmins

* Use the inbuilt proc
2017-04-06 23:26:13 -06:00
Cyberboss d0bfbc3e13 Rename ticker to SSticker 2017-03-22 10:48:25 -04:00
Lzimann 5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
PJB3005 8ce6ae2b87 Merge remote-tracking branch 'upstream/master' into rebase-to-vg 2017-02-08 14:30:23 +01:00