This commit does the following:
- Overhauls how pull works. It is now based on a mob verb,
mob/verb/pulled()
- Makes the pull icon much more responsive. It is now updated whenever a
mob starts or stops pulling an object, and instantly updates.
- This required HUD changes. God help me.
This commit adds baystation's rigsuit system on top of our own hardsuits;
Our own hardsuits still function fine and are around, but these are
available to admins. Next commit will contain balancing and player
implementation stuff.
This commit does the following:
- Updates a few of our inventory procs to -tg-'s latest
- Nukes the equip_e system from orbit
- Fancy UI for stripping people now
- Nuked fucking kitten ears from their snowflakey bullshit update_icons
shitty fuck fuck FUCK
- NUKED FUCKING METAL DETECTORS AHHHHHHHHHHHHHHHHHHHHHHHHHH
This commit overhauls a bunch of systems so that buckling works for
any subtype of /obj. This means that space vines and chairs and beds all
use the same system. A lot of stuff has been touched.
This commit overhauls the examine system to baystation's latest system,
including a more efficient verb approach, and a new status panel tab,
which shows more information for pre-defined objects.
This commit does the following:
- Replaces all instances of magic intent words, like "harm" and
"help" with defines, I_HELP, I_DISARM, I_GRAB, I_HARM
- Fixes a few manual grab instances left over in attack_alien, they
will now used grabbedby()
- Fixes flashers runtiming when flashing someone who lacks eyes.
- Fixes chem masters runtiming when told to make 0 pills.
- Fixes job objective completion runtiming when someone without a PDA
completes a job objective.
- Fixes the HUDs of clientless robots runtiming when trying to update.
- Fixes T-ray scanners causing runtimes when objects they're making
visible get deleted.
- Fixes mech bay recharge station turfs runtiming if destroyed while
missing a recharging port/console.
This commit first and foremost ports the -tg- atom pooling system, and
removes the old experimental system entirely.
Secondly, this PR modifies the qdel system to use a -tg- lookalike
"destroy hint" system, which means that individual objects can tell qdel
what to do with them beyond taking care of things they need to delete.
This ties into the atom pooling system via a new hint define,
QDEL_HINT_PUTINPOOL, which will place the atom in the pool instead of
deleting it as per standard.
Emitter beams are now fully pooled.
Qdel now has semi-compatibility with all datum types, however it is not
the same as -tg-'s "Queue everything!" system. It simply passes it through
the GC immediately and adds it to the "hard del" lists. This means that
reagents can be qdel'ed, but there is no purpose as of yet, as it is more
or less the same as just deleting them, with the added effect of adding
logs of them being deleted to the garbage collector.
pAIs inherited UnarmedAttack from /mob/living, which caused them to
attempt to attack_animal() things they clicked, which would generally
runtime on account of not having the variables expected from a
simple_animal.
Instead of a snowflake check in adjacent.dm, doors now actually properly
use their nice open_layer and close_layer when opening and closing, thus
removing the need for a snowflake check to open firelocks that would
appear on the same layer as doors.
This commit makes the ventcrawling system operate independant of
ventcrawling verbs. Every type of /mob/living now has a ventcrawling
variable, which allows them to interact with the ventcrawling system if
set to 1 or 2. The AltClickOn() defines for each ventcrawling mob have
been removed, and replaced with a single AltClick() define on ventcrawl
machinery.