Gives golems the name of their master in an objective so it can be
easily checked by admins when they start punching people to death or by
the golem itself when it forgets after wandering off.
Adds a warning to admins when traitors start creating golems.
Logs who creates golems.
Requested by Ausops
changed the values so the equipment effect stays the same. Remove global_iterator datum.
- fiddled with equip_ready procs of mech tools.
- removed mecha/proc/do_after and /enter_after() procs.
- Renamed mech sleeper occupant var to "patient" to avoid confusion with the occupant of the mech.
- all non instant tool (drill) now show a progbar when drilling etc..
- action cooldown now use do_after_cooldown() (that itself uses do_after) and start_cooldown (for instantaneous actions).
- Removed mecha_equipment's destroy proc, it's now all in Destroy(). No confusion.
- modified mecha_equipment/proc/can_attach() to not check istype(mecha) b/c it can't not be. (so the child only have one istype check.
- Removed diamonddrill/can_attach() , all done at drill level.
- armor booster now only for combat mech, instead of all except honkmech.
- Removed dynhitby, dynbulletdamage, dynattackby, dynusepower(), dyngetcharge(), dynabsorbdamage()
- I split the tools.dm file into smaller ones: work tools, mining tools, other tools.
- I split mecha.dm into mecha.dm, mecha_topic.dm and mecha_defense.dm
- refactored mech weapon ballistic/launcher, new proj_init proc, more OOP.
- Moving consumes energy! Lights consumes energy. Fixes#9425.
- Fixed#7354 xeno not bursting if host is inside a mech.
- Added action buttons to mech. Moved toggle lights, internal tank, eject, view stats from verbs to action buttons, these can now only
be done via these buttons (removed them from the big stats window).
- Removed port connect verbs b/C it's automated now.
- regular hud is no longer hidden when inside a mech (doesn't matter b/c you can't interact with most stuff in it while in a mecha). Fixes issue 10387
- can't walk when shooting projectiles. Makes walking on your projectile a bit harder. Helps against issue 10315 (but doesn't fix it).
- also made into action buttons: the special abilities of certain combat mechs.
- Added thrown alerts for mech charge and integrity.
- Fixes teleporting occupant out not properly removing it from the mech. Fixes issue 10330
- fixes ballistic mech weapons spinning when launched. proc/throw_at() now has a spin argument instead of using var/allow_spin that was added to all atoms just for that.
- added a update_action_buttons() to ai/life() to handle ai mech.
- fixed the fraction argument in reaction(...., INGESTED, fraction) so the proper amounts of each reagent react, not all of it.
- slight optimization of datum/reagents/reaction()
- small optimization /datum/reagent/proc/reaction_mob
- the smoke's reagents no longer do direct transfer upon crossed()/move() but uses "reagents.reaction( mob, TOUCH)" only.
- fixes no ingesting smoke if it's in the dark.
- removed block gas smoke effect flag from clown mask and other non "actual" gas mask.
- refactor how protection against touched chems being absorbed is done. get_permeability_protection() to get that protection. No more
simple RNG get touched or not, now the amount that touches you depends on your protection and the volume in question.
- changes acid_act to take volume into account.
- chem_smoke now uses process() just like foam, we remove the reaction from crossed() and Move(), it's only done in process() now.
- optimization of effect/smoke, OOP! And now all smoke effects use objprocessing instead of shitty sleep/spawn
- removed mob var/coughedtime.
- add a volume check to item/acid_act(), there's a threshold to be able to melt and then a probability to melt (acidpwr&volume).
- greatly lowered the amount of reagent in the smoke from dead blobspore (so the volume isn't enough for melting)
- human/acid_act(): damage to limbs depends on acidpwr&volume.
- fixes metalfoam not working.
- smoke powder: only one start() call.
- Amound of smoke objects depends on amount of smoke recipe created.
- Adds an argument to add_reagent() to block automatic call of handle_reaction()
- When using reagents/proc/trans_to(), reactions are now only handled after every reagent is transfered and not before.
- Amount of smoke objects depends on amount of smoke reagent created.
- radius of foam reaction depends on amount of foam reagent created.
- The amount of other reagents inside the smoke/foam decides the life expectancy of the effect.
- The amount of reagents in each small smoke cloud/foam cell depends on the amount of other reagents in the initial reaction but also
how much smoke/foam was created (more smoke means dilution of the reagents).
- smoke/foam's reagent reaction on mob decreases the life expectancy of the effect (to avoid reagent duplication)
- The amount of reagent reacting with atoms is less if the life expectancy is high.(to avoid reagent duplication)
- The amount of movement from the smoke now depends on the number of smoke clouds created.
- removing some useless code in chem_grenade/prime().
- When calling human/acid_act(), item acid melting chance lowers after each each successful melt in the list, some of the acid is
"used" to melt that item so the next items have a lower chance to melt (to make melting every clothing harder).
- remove the banned reagent list from sprays, not needed anymore now that acid is nerfed.
- chem_grenade reaction, if there's no reagent left after reaction (smoke/foam/etc, reagents cleared) you don't get the steam effect
and immediate reaction with all atoms around the grenade explosion. (Fixes foam cleaner grenade deleting bloodstains around it as soon
as the grenade explodes, even if the foam hasn't reached the tile yet).
- melted storage items now drop their content instead of deleting everything.
Turfs now have a slowdown var that will determine how fast mobs move on
it.
Bluespace slimes can now create bluespace floor tiles which give -1
slowdown using blood
Sepia slimes can now create sepia floor tiles which give 2 slowdown
using blood
Camera and film reactions merged into a single water reaction
Bluespace crystal reaction moved to plasma