Adds an organ harvester. It's a machine. A human goes in, and the machine starts removing organs and limbs and ejects them right next to the machine. The process can be stopped at any time by either disabling power or prying it open.
The machine does not work if the subject has clothes or appears alive. The health scan can be disabled by emagging, but they'll still need to be naked.
It consists of 4 micro-manipulators, each tier making it faster, but it shouldn't ever really go below 2.4 seconds for every iteration, barring magic fuckery
It's basically a slower acting gibber, but it preserves all limbs and organs.
Useful in conjunction with either a limb grower, bounties, extra food, organ replacement or for something yet to come
* adds signal and modifies each call of afterattack to call it's inherited proc
* uses new macro for sendsignal()
* map fuck
* skip precommithooks
* combine and negate 2 ifs
* Qdels all queries, adds sleep handling
* DB Core messages admins about undeleted queries
* Compile fixes. Adds missing set waitfor
* Remove world/New shennanigans. Add DBQuery/BlockingExecute()
* Less spammy notifications to admins about undeleted queries
* Increase dbcore fire time to 1 minute
* Upgrade undeleted query warning
* Better place of death
* Fix build
* Remove BlockingExecute, see BSQL PR for why
* Yep, missed that one.
* Psyche, that's the WRONG QUERY!!
* A Variety Of Updates
* Lovey Sprites!
* Adds implementation for listening status effects.
* Fixes implementation, uses defines instead of magic strings.
* Completely reworks status effect listeners
* Fixes Love Potions
* Fixes Approximately All The Things.jpg
I don't want this merged as soon as, I'd just rather normal drones to go away if no-one offers to fix their broken state.
Going to see if I can find out from someone how to edit maps tomorrow to remove the dispensers from them since you can't make them and I swear I've seen them before.
remove any way to obtain drones outside the dispenser
remove dispenser from maps
Edit: To better explain for the sake of a good PR body and a lack of a link to the PR a day ago, drones have been in the code in roughly the same state for 3 years (dispenser PR by Xhuis is missing from GitHub) and have gained laws admins enforce when they notice drones doing the wrong thing due to it being a ghost role. The code verbally dictates this will happen. The role hasn't been coded to prevent these many wrong things and has weak balance to begin with being a monkey with a vent ready backpack.
Administration hasn't stopped caring about this role. It should be in their direct hands until the role is clearly not an administration problem and fixed to represent that.
The component is initialized with any combination of three flags, EMP_PROTECT_SELF protects against effects that target the object itself, EMP_PROTECT_WIRES protects against wires being messed with similar to the NO_EMP_WIRES_1 flag which this PR removes, EMP_PROTECT_CONTENTS protects against things that are inside the object like organs, internal "non-virtual" power cells and the like
This enables (but doesn't introduce) new mechanics such as adding EMP shielding at runtime to any atom, or taking it away.
* patch-2
* does everything on the TODO list
FUCK YEAH
*breaks up the engineering node design ID's for readability
*linking the device via multitool is possible
*The machinery construction "recipes" are less shit and make a bit more sense
* coil
* did somebody say RUNTIMES?
*fixed runtimes when there is no link on the stacking machine console
*added feedback for unlinked consoles
*it's -> its
*proper typecheck
* achieved with [src]
The experimentor is less likely to produce food when it transforms an item
The experimentor no longer breaks when the toxic waste malfunction occurs multiple times and isn't cleaned up
The experimentor irridiate function actually chooses what item to make properly rather than picking from the start of the list
The food weight change is because the probweight var wasn't effective because food was added to the list before anything that would increase the var, it's so low because there's a ton of food and it should be possible to get other things. I tested it in game and food is still the most common thing to get, I could bump up the prob for non-food things if needed.
The toxic waste runtime would make the experimentor unfixable except for reconstructing, and that resets the experiments.
The previous method of picking was broken and pretty poorly coded, I moved it to an associative list and the existing and non-broken pickweight function (not sure if this is also a code change).