Added some info about not quite attached limbs to examination/scanner.
Added rejection info to advanced scanner
Span classes (gotta start somewhere I guess)
Also zombie goast file pls go
Now you can attach your useless chunks of meat back!
Needs second step to make meat limb usable, use hemostat/cable/mousetrap.
Changes how organs 'die'. Instead of damage they now acquire germs, 2-6 points per tick, twice faster after hitting acute infection stage. Once they reach necrosis stage, they die. All in all it takes ~7 minutes for organ to go bad without a freezer.
As a bonus, you can now attach robogroins and roboheads (no brain included)
Fixes stumps being un-cuttable, which prevented all kinds of fun stuff with replacements.
Removed ORGAN_DESTROYED check from processing, take_damage should be taking care of that now.
Updates Bump() code.
Intents now use constants.
Simple animals can now use languages without overriding say().
There is now a difference between being able to smash normal and reinforced walls.
Reworks simple_animal/attackby so that constructs don't need to override it simply to add damage resistance.
Removes forks used for ribcage opening/closing since it overlapped with internal organ surgery and for some reason even priorities didn't help with that.
You can now dry plants using a special machine, and you can now stuff
those plants into pipes to smoke then. It slowly transfers the reagents
from the plant into the smoker.
Made clean surgical amputation not cause huge wounds. Also moved code around a bit to prevent situations where missing limbs would get wounds (ie hands giving wounds to arms during recursive droplimb).
`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.