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>