* Initial work
* small fix
* another fix
* this better?
* proper type
* condensing this a bit
* functioning
* death reporting subsystemed
* fixed
* cleanup
* use proper sql sending
* listvar
* add more climbable things
* moving things while climbing them is considered shaking
* tabbing fix
* knockdown should stop climbing
* no need to bother
* spaces
* more climbable objects
* fix
* small fixes
* office climbables
* yet more stuff
* engineering things
* a few more
* it's funny
* fixes
* additional
* Moved to element
* some more stragglers
* unneeded
* more graceful
* cliffs require special handling
* don't do dumb init things
* unneeded sanitization, mass insert sanitizes
* some small condition fixes
* return if climbable
* incorporeal check
* stop using numbers directly
* .
---------
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
* removes vore
gif showing vore still works https://i.imgur.com/Vda4yns.gif
* More unarmed bugfixes
* No crawling while grabbed
* lazylen and return early
* The mob/living/Destroy() consolidation
* The mob/Destroy() consolidation
* The /mob/living/carbon/human consolidation
* The datum/Destroy() Consolidation
* The /atom/movable/Destroy() Consolidation
* for human
* Update settings
* Whitespace changes
* Comment out merger hooks in gitattributes
Corrupt maps would have to be resolved in repo before hooks could be updated
* Revert "Whitespace changes"
This reverts commit afbdd1d844.
* Whitespace again minus example
* Gitignore example changelog
* Restore changelog merge setting
* Keep older dmi hook attribute until hooks can be updated
* update vscode settings too
* Renormalize remaining
* Revert "Gitignore example changelog"
This reverts commit de22ad375d.
* Attempt to normalize example.yml (and another file I guess)
* Try again
This adds throw_alert() and /obj/screen/alert, a system that allows you
to do custom hud alerts for any variety of things from "You're too
cold!" to mecha status indicators for the pilot.
There's quite a few things that actually got replaced; the
fire/oxy/tox/co2 alerts are all now just alerts, as is nutrition. The
xenochimera feral indicator would probably be a good candidate for
conversion, but I didn't touch it in this PR. There's also a number of
new alerts, such as blindness, highness, legcuffed, buckled, handcuffed,
and probably some more I missed; read code/_onclick/hud/alert.dm and see
for yourself!
Additionally, a number of tweaks have been done to resisting code, to
make it so that there's an indicator when you're buckled or handcuffed,
and can just click the alert to start resisting. This includes a
refactor that combines the logic for lockers, holders, micros
escaping from shoes, and struggling in a gut all into one proc, called
container_resist(). This means that vore bellies actually no longer need
the resist override, but it's been left in place just in case someone
finds something else they want to use it for.
Also, the health and internals indicator got moved down one tile each.
Needed room for the alerts. If we add the oxygen tank action buttons
from /tg/ and remove the internals indicator, the health indicator can
go back where it was originally.
Was broken when taur riding was enabled and required some tweaks.
Took the chance to add a few extra features & fluff up hiding a bit.
If you're grabbed, grab someone, buckle yourself or are buckled by someone else you now become un-hidden. You cannot hide yourself while grabbed or buckled.
There are a few fluff messages for these circumstances but otherwise hiding behaves exactly as it used to.
Revealing a hidden mob is now its own proc. You can pass special fluff messages to mobs with this when they are revealed.
Now a mob is revealed when they die, are grabbed/grab something and when they buckle to something.
* Fixes Runtime in tools.dm,239: undefined variable /mob/living/simple_animal/retaliate/solargrub/var/handcuffed
* Add logging to help identify the cause of runtime in examining zshadow mobs.
* Fix Runtime in buckling.dm,165: Cannot execute null.forceMove().
* Fixes Runtime in robot_items.dm,31: Cannot read null.origin_tech
* Fixes Runtime in paper_bundle.dm,183: Cannot read null.loc
Mobs now have the ability to "crawl" to an adjacent turf by click-dragging themselves to it. This would allow people unable to stand to still move around, though very slowly. You could also do this to other movable mobs or objects, if you really wanted to.
Moving this way takes about 2.5 seconds, plus half a second for each point of weakness you have. For a person missing a leg, this would take 5 seconds. It only works if the mob doing this is alive, conscious, unrestrained, not stunned or paralyzed, and in an area with gravity - no crawling through space.
Mobs lying on the ground - again, with similar restrictions - are now able to buckle themselves to chairs or beds. For people missing legs or feet, this means no more being stuck helpless on the ground forever because Baldie McGreytide clicked on your wheelchair.
Tested in many different situations, and I've patched every bug that popped up.
Checks if what they're attacking 'bare-handed' is adjacent to the cyborg, and has something buckled to it. If not, it passes the click on to AI click like usual.
Buckling procs and vars have been moved down to /obj.
Behaviour is mostly the same, but you can buckle cuffed people to
pipes and they will automatically unbuckle if the cuffs are removed.
Signed-off-by: Mloc-Argent <colmohici@gmail.com>