LaharlMontogmmery/-tg-station — pull request #1 by LaharlMontogmmery (2013-11-17 22:14:23+00:00)
Title: AI can now anchor/unanchor itself.

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 AI goes blind as soon as it enters space, and cannot anchor onto space tiles.
-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. That means you will not be able to walk through dead AIs, however.

"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.)