Tweaks syringe gun and dart gun, renames syringe gun cartridges and makes them printable.
Adjusts penetration so that passing through mobs happens with a probability that scales with damage.
Adds a .45 signal pistol to the HoP's closet and a 9mm one to the mercenary shuttle.
Includes 2 packs of flash powder cigarettes, 2 packs of smoke creating cigarettes, 1 pack of mindbreaker cigarettes, and 1 pack of tricordrazine cigarettes.
The Icarus is now fireable in gun form. The point defense mode fires several lasers one after the other so that it can penetrate. The main gun mode fires a modified meteor. Also added an "abstract weapon" which has the projectile type settable for admin shenanigans.
Walls now lack an armor variable, which is replaced with buffed health. Normal walls take 4 shots with a normal laser or 5 emitter bursts to destroy. Reinforced walls now take 20 normal laser shots or 28 emitter shots.
Added some proactive runtime protection to logging for projectile impacts. Without a valid firer, the jump button is linked to the victim.
Restricts Gibbingtons, Suicide, and Monkism syndromes from even greater
diseases. Admins can still generate diseases with these syndromes
through secrets.
Fixes virus events potentially having people share the same virus datum.
`maths.dm`:
Rewrite `Gcd(x)` to remove recursive behaviour.
Remove `RaiseToPower(x)` and its usage from `event_manager.dm`.
Rename `Lerp()` to `Interpolate()`.
Add `Square(x)`, which squares a number.
Rearrange most of the functions in the file. (trigonometric functions together, etc.)
`type2type.dm`:
Rewrite `num2hex()` and optimise `hex2num()` for superior clarity and a 100% speed improvement.
Correct indenting, spaces, make switches more concise.
`time.dm`:
Remove old, slanderous commented-out function `/proc/time_stamp()`
`lists.dm`:
Add the macros, `BITTEST(bitfield,index)`, `BITSET(...)`, `BITRESET(...)`
and `BITFLIP(...)` for bit-manipulation and use them where 20+ files
do it manually, for arguments of reader clarity and standardness.
- Fixes#7550 and one other bug which is not on issue tracker
- Uncomments one line of code which caused #7550, considering reasons for this being commented out no longer apply. (parasting is no longer cheap OP ability you have from start) Changeling rewrite is probably going to occur soon anyway.
- Removes one line which caused bug with "Absorb" ability - victim was immediately absorbed after the "You stab the X with proboscis" part, instead of waiting few seconds as it should.