This refactors the mob-eat-mob code and fixes a few bugs along the way.
- Bursting out of a stomach now has a 0.4 second delay between attacks,
so the message cannot be spammed.
- The list of mobs that can eat other mobs has been refactored to be a
subproc instead of a 255char~ list on one line.
- Mob grab uses #defines for the time it takes to eat something else,
now.
- Fixed xenomorphs bugging out the grab system, and made sure that fat
people can't actually eat them because of this.
This commit updates the /mob/living resist verb to -tg- standards. It is
no longer a giant mess of 1 single verb, it has been split into a central
verb with multiple sub-procs.
This is not a port of -tg-'s optimized resist code, it simply makes the
existing code a bit less terrible, and organized in sub procs like -tg-
This commit changes a bunch of objects fire_act's to temperature_expose,
to allow for superhot gas to act like an actual hotspot. This behaviour is
consistant with -tg-.
Carbon mobs do not actually need a fire_act, all it was doing was breaking
things with hardsuits. Reagent bombs are supposed to have a unique proc
instead of fire_act, so fixed.
This commit does the following;
- Repairs mob breathing by adding a new ticker process, mob_master, as
air_master is an unreliable ticker with it's customizable speed
- Restore firedoor attack_hand access
- You can now open and close firedoors by using no item, provided you
have access to them and they aren't locked.
This commit ports the base system of LINDA from TG. This version of linda
is the original version, with none of -tg-'s fixes, rewrites, or other
such improvements attached.
The mob ignite system has been 100% removed, as LINDA does not support
this normally. It may be added back in when the improvements and refactors
to LINDA have been ported.
High priority, needs to be merged and patched ASAP.
Need one of the other maintainers to check to see if this won't be
particularly process-intensive for the server.
Ventcrawling mobs now no longer get a teleportation menu, instead, they
are put inside the vents, the client gets an overlay of the pipes in the
pipe network, and it is up to them to navigate.
- De-braining and de-eying a detached head now sets the organ's vars
correctly.
- Slime people's (and golem's) slime cores are no longer robotic, this
will keep them from getting EMPed.
- As a side effect, this also fixes not being able to transplant slime
people brains.
- Fixes unEquip dropping organs.
Stuff goes under types.
Types have procs.
Never have 500 lines of repeated code again.
I came very close to crying while editing this. You should appreciate
that.
----
This commit entirely reworks how placing things on walls work- Posters
have intentionally been left alone to reduce the amount of lines
changed. With this commit, wall-mounted objects are no longer snowflaked
into the wall file.
### Current Changes
- Removes the rejecting verb from organs, I forgot to remove this along
with organ rejection.
- Fixes droplimb runtime.
- As a result, brute damage goring and burn ashing DESTROYS whatever
limb was dismembered. They didn't do so before due to the runtime.
- Fixes another runtime in organ_external.dm
- Makes it so you can actually clone brain transplantees.
- Makes it so you can actually rejuvenate brain transplantees.
### Todo
- [ ] Make slime person braincores able to be placed in humanized
monkeys again.
- [ ] Probably fix some other stuff.
This cleans up the code and properly integrates a few things, instead
of the absolutely tragic and insane code bypassing it, literally named
var/needtohack.