* Replaces a bunch of istypes with their proper macros
* i'm not sure doing a 100+ file changed pr on a whim is something you do when bored
especially if you do it by hand because you never actually learned the regex that would let you automate it
* i'm just... gonna do this, because that check was true a lot and it shouldn't matter
Adds a large ash and large molten item decal (for future use)
simplifies decal/cleanable/replace_decal() code a bit.
Changes construction() proc to on_construction() for consistency, same for deconstruction().
Made a deconstruct() proc for machinery and computer (also for future use).
* Sleepless perfect orbits #MOGA
We bind to Moved() and use datums and lists to track the orbits, no more sleeps, no more delay.
* Adds some null checks to orbit checks
* Forget to set orbiting.
Also sets orbiters before orbiting, to avoid edge cases of deleting a list then recreating it.
* Improves orbit, adds subsystem for orbits.
Most orbit loc changes will happen on move, subsystem runs every 2 ticks to make up for when that isn't the case.
Teslium is now easier to make, and as with most electronics, no longer mixes with water.
tesla_act and tesla_zap both now have arguments to specify whether they explode machinery. By default only the tesla engine will explode machinery. This means that Tesla Revolvers will no longer cause a large area to implode if there is no one nearby the target of it to shock. This also means that tesla-grill bolts will no longer blow things up.
- makes tesla bomb immune so it wont destroy itself
- makes lights spew fire when they explode instead of the regular explosion
- makes cameras with EMP immunity also have tesla immunity
tesla can now keep itself fully contained (at least on box)
Dissipate nerfed, only dissipates every 5 process() ticks (but takes off double)
Required growing energy's exponential growth dropped from 50% of current energy to 25% of current energy.
When shooting out shorter ranged zaps from the orbiting balls, it nerfs their power proportionally.
Grounding rods are seen as being 2 tiles closer than they are to increase their likelihood of being chosen.
These are the files with just tiny tweaks. Mostly modify an object's attackby so it does "return ..()" instead of "..()".
If there are other things in this commit, the PR's description will explain them.
Strong blobs are now much more resistant to brute damage. Don't even bother hitting them with a wrench.
Tweaks blob reagents;
Removes Ripping Tendrils and Draining Spikes
Sporing Pods now does much less damage, and is less likely to produce spores when killed
Replicating Foam now takes increased brute damage and when expanding from damage, will not expand again
Energized Fibers no longer heals when hit with stamina damage, and is instead immune to the tesla
Boiling Oil takes damage from extinguisher blasts. Its blobbernauts, however, do not
Flammable Goo takes 50% increased burn damage
Regenerative Materia, Hallucinogenic Nectar, and Envenomed Filaments each do less toxin damage
Poisonous Strands applies its damage over a longer period of time
Explosive Lattice now takes much higher damage from fire, flashbangs, and the tesla
Reactive Gelatin now has a lower minimum damage
Electromagnetic Web takes full brute damage, lasers will now one-hit normal blobs, and the death EMP is smaller
Cryogenic Liquid does less burn damage
Pressurized Slime does less brute damage
Fixes#14786
Muti-bolt is back, but the other ones don't go out as far and spread out more randomly
Power given has been cut down massively.
Ball expansion is now exponential.
Tesla now actually consumes energy and shrinks, causing the ball count to lower.
Fixes it repeatedly resetting shifting it pixel x/y causing flicks of the tesla ball apperenting 1 tile to the lowerleft
Fixes it growing even if it wasn't powered by a pr
Fixes#14786
spawns have a high overhead.
I only went for easy targets, almost every spawn could be removed with a few subsystems in place to handle delays or cooldowns