Refactored some of the code into procs.
Small feature: bombs tick louder when they are 10 seconds or less left, nuclear bombs were given the same treatment but with 20 seconds.
Fixed a bug with the syndicate bomb wire datum not using the CanUse().
Adds a training bomb that doesn't explode but rather lets you know it would have exploded. Upon detonation or defusal it will give you your current score and rescramble the wires for another go. It should probably be added to the map somewhere in a pull that follows this.
Adds a badmin bomb that lets you summon in a number of whatever you want with var editing, it defaults to a single cookie.
Adds a specially skinned badmin clown bomb that summons in a 100 clowns by default. It honks!
Fixes a HUGE bug where, thanks to machinery automatically adding themselves to processing, bombs were ticking down two seconds at a time. This does mean that all bombs are now "nerfed" to twice the time it took before. Whether this is a good thing or should result in the timer going "back" to 30 seconds to keep the timing consistant is an open quesion.
Fuck having rounds ruined in the first 30 seconds by people throwing a bomb at genetics and pushing the button, and then spamming it since, due to it being Double Agent, every other agent is also buying bombs.
The bombs themselves no longer explode, the payloads (which now actually exist in the bombs) do.
This means that you can play cruel jokes on people by activating bombs with removed payloads or easily code in other kinds of payloads (there'll be a future pull with a few from me at the very least) and not have to touch the bomb code itself.
notransformation protection was stopping movement calls to the holder object.
Refractored code so wraith phase shift isn't copypaste just to change animations.
Added an extra safety check to check if targets selected via inputs were actually in range. Previously someone could open a bunch of inputs and activate them from what ever range.
Feature: After some serious testing (and because it was already being done on live servers thanks to wabbajack() preserving spells) I've removed the compatible_mobs list for mind_transfer, meaning you can now mind transfer to any player controled living mob.
Flowery fluff that no one would ever care about: changes the mindswap message for trying to swap into a dead guy, since a spell holder isn't nessisarily a space wizard
bugfix: gives notransform to etheral jaunting based on an observed edge case where a wizard was staff of changed while starting a jaunt and got stuck in bluespace for the rest of the round
meta: modified revive() so I could remove all that horrible snowflake I introduced to let reviving simple mobs come back
All the logging i have found in the code was changed to use the
proc(maybe i missed something)
Killed all runtimes found so far
Proc now handles all the checks, no need to add checks in the body of
object
Adds new functionality where wands will look different once they're out of charge for at a glace judgements
Adds a wand of nothing to the hacked item list for the autodrobe, by popular request