AI can now anchor/unanchor itself. Goes with Malf AI pinpointer tracking once it activates Delta for balance reasons. Please review/merge if satisfying enough.
Someone pointed out that they couldn't select it, I also noticed there
was one named "Dorfy" so I also added that. So now you select all three.
Thanks Adrinus
Reworks limb surgery/limb augmentation.dm to use a Switch
Ignore changes to do with "Requires_organic_chest" I removed it, but since re added it as it was preventing an exploit
According to my tests, unachored AI and Borgs behave as normal when
bumped by a mob.
A human can swap places with a borg if both have help intent on when
moving...
But a borg can't swap places with a human if both have help intent on,
if it's the borg that's moving. Apparently it's a normal behavior,
tested it on Sibyl.
AI don't have intents so they just get pushed.
pAIs aren't affected by bump, as they seem to act like as objects when
walked over or thrown.
Decoys seems to be some old MALF module that isn't in use anymore, so I
didn't touch it.
Add a Toggle Anchor Bolt verb to the AI that allows it to toggle his
'anchored' var and be dragged around. You cannot use the bolt verb in a
locker,disposal, pipe , on a mule or as a card.
Tested Interactions between AI and items :
-While the AI can be dragged, it cannot be pushed. You can however,
while dragging it, move it around on tiles(by clicking on said tile),if
you get stuck.
-Cannot be grabbed or click dropped into the gibber.
-Cannot be grabbed or click dropped into Cryo.
-Cannot be put in the DNA scanner.
-Cannot be put in the morgue, or the incinerator.
-CAN be grabbed or click dropped into a disposals bin, and flushed.
-CAN be put inside a locker. Once there's a locker below and you can
close it, you can drag the AI around - event if it's normally anchored.
If you open the closet while the AI is anchored, the Ai will still be in
a anchored state. Note that it's possible to do this trick without
needing to drag the Ai over a locker, PRIOR to this commit.
-Can drift in space, and can be mass-driver'd. Also Anchors don't work
in spess.Also Ai goes blind in spess. Honk.
-Can be pulled around on edges in space as normal, slip interaction
works normally.
-Can be telescience'd if unanchored.
-You can get on a mulebot!
Notable problem :
-Ai can be buckled/unbuckled to a chair, and when unbuckled it reverts
to an anchored state.Can be solved by using the verb again. Not a real
issue, but notable.
-Dragging an AI in open space can be a bit of a problem. If you take
sharp turns while jetpacking, the Ai will still drift in the previous
direction. You can stop the AI course by jumping by getting in front of
it. Dead AIs were however able to go through you, but Gia found a fix.
"Doesn't that defeat the purpose of the intellicard?"
No, because you only use the card for 3 cases :
1. In case of Rogue AIs, and it is unlikely it will let you drag it
around.
2. In case od dead AIs, in which case it will still need to be carded in
order to be resurected.
3. In order to steal the AI, and generally they don't like that as well.
So the intellicard will still show uses if this commit gets pulled.
Many thanks to Giacommand for babysitting me and helping me through the
coding and testing stages of this commit. Also, first baby commit, ho!
I've thought of this when Gia decided to change Telescience to not drag
anchored mobs, and realised that this create a lot of fun options for
the AI (rogue or not). Most of the interactions seems to be clear of
bugs, and I didn't get any runtimes when testing (except something about
NanoUI, but Gia and me assumed it was unrelated.)
Diseases now have a requires and a required_limb variable
if requires is 1 then it will run a check for required_limb (WHICH USES TYPEPATHS)
Reverts a turret change that git through into the pull for some reason
added some feedback messages in certain places
removed the hulk-like snowflake check that was really crappy anyways
Reworked a part of surgery/surgery_step.dm to use a switch
* The telescience computer starts with 3 artificial crystals.
* The crystals can be crushed to blink or you can throw it at someone to make them blink a short distance.
* You cannot teleport the AI or any anchored mob (unless they are buckled to an office chair).
* You can make the bluespace crystals from slimes or from research.
this is due to the original proc having a check in it now which saves us
millions of snowflakey checks, if you wish to heal a robotic limb use
heal_robotic_damage(brute,burn) it functions the same as heal_damage
but actually heals robotic limbs instead of organic ones
Updated the welding and wiring repairs to use this proc
Hey @Cheridan NO ISTYPES! :D
Ugh.. I mean "Removes" 10 totally unnecessary istypes
Fixes the healing of robotic limbs so that the message actually doesn't display now.
Credit to ACCount12 for digging around and finding some nifty code
that my brain never thought of
Cybernetic limbs
Multi-location operations
Limbs have sprites now (They never dropped before so it was irrelevant)
No Organic healing of Robotic limbs (But the message is still there, fixing soon)
No "organic" diseases in Robotic areas
No more operations in robotic areas - Cheer's Pete for the surgery system being so nice
Healing Robotic limbs with welders (brute) and cable (burn)
Probably other things I forget
For example, it will try to find players that are afk for 5 minutes or lower, if it fails it'll add a minute to the 5 minutes until it finds a candidate or until it reaches 10 minutes.
I changed the get_candidate for aliens so that their 5 minute bracket is instead 45 seconds. This is because a lot of the time larva need to be active ASAP to avoid danger (such as being spawned in dangerous areas) There was a cases of an AFK larva that was very easily killed of, making it fraustrating for the observers watching.