The malfunction sparks were calling to a var src, which in most other places is the main object itself, here that's the organ and it doesn't have a loc. Changed it to call the organ's owner.
Because the dismemberment check was being done before brute_dam was
updated, the attack that actually brought brute_dam above the threshold
would not be able to pass the check, regardless of how much damage was
actually done.
Also removes the now unnecessary get_cure_threshold() proc, caps the
rate at which an organ can receive germs from wounds, and makes germs
spread from external to internal organs happen one organ at a time
instead of all at once.
Conflicts:
code/modules/organs/organ_internal.dm
code/setup.dm
Reduces the toxin damage dealt by non-necrotic infections by a factor of
1.5. Also increases the germ_level required to reach necrosis.
Conflicts:
code/modules/organs/organ_internal.dm
code/setup.dm
Also the toxin damage taken during INFECTION_LEVEL_ONE is greatly
reduced.
Fixes robotic internal organs getting infections.
Fixes the organ_failure random event. Forgot to set the affected organ
as needing processing.
Viruses are properly transferred to spilled blood now.
Antigens prevent from infection properly.
Lowered frequency of blood puddle virus check to cut down on processing.
Conflicts:
code/game/turfs/simulated.dm
code/modules/mob/living/carbon/human/life.dm
code/modules/organs/blood.dm
code/modules/reagents/Chemistry-Reagents.dm
Infections can now spread between internal and external organs.
Also changes the organ_failure random event to cause an infection
instead.
Conflicts:
code/modules/events/organ_failure.dm
code/modules/organs/organ.dm
Body temperature regulation is now based on species, and environmental
temperature now respects the air density when affecting living/humans.
This also fixes some bugs with heat/cold protection handling and
improves the way synthetic species body temperatures are handled to be
much more logical.
IPCs always gain temperature but cool down because of their environment.
When the heat transfer to the environment is reduced because of the lack
of air, this will cause IPCs to heat up.
As well, having an infection will increase your body temperature, and
body scanners now detect infections.
Conflicts:
code/modules/mob/living/carbon/human/life.dm
code/modules/mob/living/carbon/species.dm