diff --git a/code/modules/mob/living/carbon/alien/life.dm b/code/modules/mob/living/carbon/alien/life.dm
index 248333825ae..8e0df9d0053 100644
--- a/code/modules/mob/living/carbon/alien/life.dm
+++ b/code/modules/mob/living/carbon/alien/life.dm
@@ -41,15 +41,13 @@
/mob/living/carbon/alien/handle_vision()
- client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask)
-
- if (stat == 2)
+ if (stat == DEAD)
sight |= SEE_TURFS
sight |= SEE_MOBS
sight |= SEE_OBJS
see_in_dark = 8
see_invisible = SEE_INVISIBLE_LEVEL_TWO
- else if (stat != 2)
+ else if (stat != DEAD)
sight |= SEE_MOBS
sight &= ~SEE_TURFS
sight &= ~SEE_OBJS
@@ -62,40 +60,8 @@
if(see_override)
see_invisible = see_override
- if ((blind && stat != 2))
- if((eye_blind))
- blind.layer = 18
- else
- blind.layer = 0
-
- if (disabilities & NEARSIGHT)
- client.screen += global_hud.vimpaired
-
- if (eye_blurry)
- client.screen += global_hud.blurry
-
- if (druggy)
- client.screen += global_hud.druggy
-
- if (stat != 2)
- if(machine)
- if (!( machine.check_eye(src) ))
- reset_view(null)
- else
- if(!client.adminobs)
- reset_view(null)
-
-
/mob/living/carbon/alien/handle_hud_icons()
handle_hud_icons_health()
- if(pullin)
- if(pulling)
- pullin.icon_state = "pull"
- else
- pullin.icon_state = "pull0"
-
-
-
return 1
diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm
index 29bf40ef11a..974efde0342 100644
--- a/code/modules/mob/living/carbon/life.dm
+++ b/code/modules/mob/living/carbon/life.dm
@@ -14,54 +14,12 @@
return
if(!loc)
return
- var/datum/gas_mixture/environment = loc.return_air()
-
- if(stat != DEAD)
-
- //Breathing, if applicable
- handle_breathing()
+ if(..())
//Updates the number of stored chemicals for powers
handle_changeling()
-
- //Mutations and radiation
- handle_mutations_and_radiation()
-
- //Chemicals in the body
- handle_chemicals_in_body()
-
- //Blud
- handle_blood()
-
- //Random events (vomiting etc)
- handle_random_events()
-
. = 1
- //Handle temperature/pressure differences between body and environment
- handle_environment(environment)
-
- handle_fire()
-
- //stuff in the stomach
- handle_stomach()
-
- update_canmove()
-
- update_gravity(mob_has_gravity())
-
- for(var/obj/item/weapon/grab/G in src)
- G.process()
-
- handle_regular_status_updates() // Status updates, death etc.
-
- if(client)
- handle_regular_hud_updates()
-
- return .
-
-
-
///////////////
// BREATHING //
///////////////
@@ -253,7 +211,7 @@
return
-/mob/living/carbon/handle_changeling()
+/mob/living/carbon/proc/handle_changeling()
return
/mob/living/carbon/handle_mutations_and_radiation()
@@ -341,6 +299,7 @@
if(getOxyLoss() > 50 || health <= config.health_threshold_crit)
Paralyse(3)
+ stat = UNCONSCIOUS
..()
@@ -503,15 +462,11 @@
damageoverlay.overlays += I
damageoverlay.overlays += black
-
- handle_vision()
- handle_hud_icons()
+ ..()
return 1
-/mob/living/carbon/handle_vision()
-
- client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask)
+/mob/living/carbon/update_sight()
if(stat == DEAD)
sight |= SEE_TURFS
@@ -528,38 +483,11 @@
if(see_override)
see_invisible = see_override
- if(blind)
- if(eye_blind)
- blind.layer = 18
- else
- blind.layer = 0
-
- if (disabilities & NEARSIGHT)
- client.screen += global_hud.vimpaired
-
- if (eye_blurry)
- client.screen += global_hud.blurry
-
- if (druggy)
- client.screen += global_hud.druggy
-
- if(eye_stat > 20)
- if(eye_stat > 30)
- client.screen += global_hud.darkMask
- else
- client.screen += global_hud.vimpaired
-
- if(machine)
- if (!( machine.check_eye(src) ))
- reset_view(null)
- else
- if(!client.adminobs)
- reset_view(null)
/mob/living/carbon/handle_hud_icons()
return
-/mob/living/carbon/proc/handle_hud_icons_health()
+/mob/living/carbon/handle_hud_icons_health()
if(healths)
if (stat != DEAD)
switch(health)
diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm
index effe89bda3e..01d8261f293 100644
--- a/code/modules/mob/living/life.dm
+++ b/code/modules/mob/living/life.dm
@@ -13,9 +13,6 @@
//Breathing, if applicable
handle_breathing()
- //Updates the number of stored chemicals for powers
- handle_changeling()
-
//Mutations and radiation
handle_mutations_and_radiation()
@@ -28,10 +25,16 @@
//Random events (vomiting etc)
handle_random_events()
+ if(!client && !stat)
+ handle_automated_movement()
+
+ handle_automated_speech()
+
. = 1
//Handle temperature/pressure differences between body and environment
- handle_environment(environment)
+ if(environment)
+ handle_environment(environment)
handle_fire()
@@ -56,9 +59,6 @@
/mob/living/proc/handle_breathing()
-/mob/living/proc/handle_changeling()
- return
-
/mob/living/proc/handle_mutations_and_radiation()
if(radiation)
@@ -88,23 +88,6 @@
if(reagents)
reagents.metabolize(src)
- if(drowsyness)
- drowsyness--
- eye_blurry = max(2, eye_blurry)
- if(prob(5))
- sleeping += 1
- Paralyse(5)
-
- confused = max(0, confused - 1)
- // decrement dizziness counter, clamped to 0
- if(resting)
- dizziness = max(0, dizziness - 5)
- jitteriness = max(0, jitteriness - 5)
- else
- dizziness = max(0, dizziness - 1)
- jitteriness = max(0, jitteriness - 1)
-
- updatehealth()
return
/mob/living/proc/handle_blood()
@@ -121,8 +104,9 @@
/mob/living/proc/handle_regular_status_updates()
+ updatehealth()
+
if(stat != DEAD)
- updatehealth()
if(paralysis)
AdjustParalysis(-1)
@@ -148,6 +132,12 @@
return 1
+/mob/living/proc/handle_automated_movement()
+ return
+
+/mob/living/proc/handle_automated_speech()
+ return
+
/mob/living/proc/handle_disabilities()
//Eyes
if(disabilities & BLIND || stat) //blindness from disability or unconsciousness doesn't get better on its own
@@ -179,21 +169,9 @@
client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask)
- if(stat == DEAD)
- sight |= SEE_TURFS
- sight |= SEE_MOBS
- sight |= SEE_OBJS
- see_in_dark = 8
- see_invisible = SEE_INVISIBLE_LEVEL_TWO
- else
- sight &= ~SEE_TURFS
- sight &= ~SEE_MOBS
- sight &= ~SEE_OBJS
- see_in_dark = 2
- see_invisible = SEE_INVISIBLE_LIVING
- if(see_override)
- see_invisible = see_override
+ update_sight()
+ if(stat != DEAD)
if(blind)
if(eye_blind)
blind.layer = 18
@@ -222,7 +200,12 @@
if(!client.adminobs)
reset_view(null)
-/mob/living/proc/handle_hud_icons()
+/mob/living/proc/update_sight()
return
+/mob/living/proc/handle_hud_icons()
+ handle_hud_icons_health()
+ return
+/mob/living/proc/handle_hud_icons_health()
+ return
diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm
index a3fd584aac4..8566b31eff0 100644
--- a/code/modules/mob/living/silicon/ai/life.dm
+++ b/code/modules/mob/living/silicon/ai/life.dm
@@ -1,11 +1,11 @@
/mob/living/silicon/ai/Life()
- if (src.stat == 2)
+ if (src.stat == DEAD)
return
else //I'm not removing that shitton of tabs, unneeded as they are. -- Urist
//Being dead doesn't mean your temperature never changes
var/turf/T = get_turf(src)
- if (src.stat!=0)
+ if (src.stat!= CONSCIOUS)
src.cameraFollow = null
src.reset_view(null)
src.unset_machine()
diff --git a/code/modules/mob/living/silicon/pai/life.dm b/code/modules/mob/living/silicon/pai/life.dm
index 04e80299d9a..c0017863de6 100644
--- a/code/modules/mob/living/silicon/pai/life.dm
+++ b/code/modules/mob/living/silicon/pai/life.dm
@@ -1,5 +1,5 @@
/mob/living/silicon/pai/Life()
- if (src.stat == 2)
+ if (src.stat == DEAD)
return
if(src.cable)
if(get_dist(src, src.cable) > 1)
diff --git a/code/modules/mob/living/silicon/robot/death.dm b/code/modules/mob/living/silicon/robot/death.dm
index e8767275e01..e12b5db835b 100644
--- a/code/modules/mob/living/silicon/robot/death.dm
+++ b/code/modules/mob/living/silicon/robot/death.dm
@@ -19,7 +19,8 @@
..(animate, "dust-r")
/mob/living/silicon/robot/death(gibbed)
- if(stat == DEAD) return
+ if(stat == DEAD)
+ return
if(!gibbed)
emote("deathgasp")
stat = DEAD
@@ -29,7 +30,8 @@
uneq_all() // particularly to ensure sight modes are cleared
- if(blind) blind.layer = 0
+ if(blind)
+ blind.layer = 0
sight |= SEE_TURFS|SEE_MOBS|SEE_OBJS
see_in_dark = 8
see_invisible = SEE_INVISIBLE_LEVEL_TWO
diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm
index 5fbf63a2a70..ba45e348d94 100644
--- a/code/modules/mob/living/silicon/robot/life.dm
+++ b/code/modules/mob/living/silicon/robot/life.dm
@@ -5,23 +5,8 @@
if (src.notransform)
return
- //Status updates, death etc.
clamp_values()
- handle_regular_status_updates()
-
- if(client)
- handle_regular_hud_updates()
- update_items()
- if (src.stat != DEAD) //still using power
- use_power()
-
- update_canmove()
-
- update_gravity(mob_has_gravity())
-
- handle_fire()
-
-
+ ..()
/mob/living/silicon/robot/proc/clamp_values()
@@ -36,51 +21,40 @@
/mob/living/silicon/robot/proc/use_power()
- if (src.cell)
- if(src.cell.charge <= 0)
+ if(cell)
+ if(cell.charge <= 0)
uneq_all()
- src.stat = 1
- else if (src.cell.charge <= 100)
+ stat = UNCONSCIOUS
+ else if (cell.charge <= 100)
uneq_all()
- src.cell.use(1)
+ cell.use(1)
else
- if(src.module_state_1)
- src.cell.use(5)
- if(src.module_state_2)
- src.cell.use(5)
- if(src.module_state_3)
- src.cell.use(5)
- src.cell.use(1)
- src.eye_blind = 0
- src.stat = 0
+ if(module_state_1)
+ cell.use(5)
+ if(module_state_2)
+ cell.use(5)
+ if(module_state_3)
+ cell.use(5)
+ cell.use(1)
else
uneq_all()
- src.stat = 1
+ stat = UNCONSCIOUS
/mob/living/silicon/robot/handle_regular_status_updates()
- if(src.camera && !scrambledcodes)
- if(src.stat == 2 || wires.IsCameraCut())
- src.camera.status = 0
+ if(camera && !scrambledcodes)
+ if(stat == DEAD || wires.IsCameraCut())
+ camera.status = 0
else
- src.camera.status = 1
+ camera.status = 1
- health = maxHealth - (getOxyLoss() + getFireLoss() + getBruteLoss())
+ updatehealth()
- if(getOxyLoss() > 50) Paralyse(3)
-
- if(src.sleeping)
- Paralyse(3)
- src.sleeping--
-
- if(src.resting)
- Weaken(5)
-
- if(health <= config.health_threshold_dead && src.stat != 2) //die only once
+ if(health <= config.health_threshold_dead && stat != DEAD) //die only once
death()
- if (src.stat != 2) //Alive.
+ if (stat != DEAD) //Alive.
if(health < 50) //Gradual break down of modules as more damage is sustained
if(uneq_module(module_state_3))
src << "SYSTEM ERROR: Module 3 OFFLINE."
@@ -91,47 +65,58 @@
if(uneq_module(module_state_1))
src << "CRITICAL ERROR: All modules OFFLINE."
- if (src.paralysis || src.stunned || src.weakened) //Stunned etc.
- src.stat = 1
- if (src.stunned > 0)
+ if(getOxyLoss() > 50)
+ Paralyse(3)
+
+ if (paralysis || stunned || weakened) //Stunned etc.
+ stat = UNCONSCIOUS
+ if (stunned > 0)
AdjustStunned(-1)
- if (src.weakened > 0)
+ if (weakened > 0)
AdjustWeakened(-1)
- if (src.paralysis > 0)
+ if (paralysis > 0)
AdjustParalysis(-1)
- src.eye_blind = max(eye_blind, 1)
- else
- src.eye_blind = 0
+ eye_blind = max(eye_blind, 1)
else //Not stunned.
- src.stat = 0
+ src.stat = CONSCIOUS
- else //Dead.
- src.eye_blind = 1
+ if (stuttering)
+ stuttering--
- if (src.stuttering) src.stuttering--
+ if (druggy)
+ druggy = max(0, druggy-1)
- if (src.eye_blind)
- src.eye_blind--
+ handle_disabilities()
- src.density = !( src.lying )
+ use_power()
- if (src.disabilities & BLIND)
- src.eye_blind = max(1, eye_blind)
-
- if (src.eye_blurry > 0)
- src.eye_blurry--
- src.eye_blurry = max(0, src.eye_blurry)
-
- if (src.druggy > 0)
- src.druggy--
- src.druggy = max(0, src.druggy)
-
- return 1
+ return 1
/mob/living/silicon/robot/handle_regular_hud_updates()
- if (src.stat == 2 || src.sight_mode & BORGXRAY)
+ if(!client)
+ return
+
+ if (syndicate)
+ if(ticker.mode.name == "traitor")
+ for(var/datum/mind/tra in ticker.mode.traitors)
+ if(tra.current)
+ var/I = image('icons/mob/mob.dmi', loc = tra.current, icon_state = "traitor") //no traitor sprite in that dmi!
+ src.client.images += I
+ if(connected_ai)
+ connected_ai.connected_robots -= src
+ connected_ai = null
+ if(mind)
+ if(!mind.special_role)
+ mind.special_role = "traitor"
+ ticker.mode.traitors += mind
+ ..()
+ return 1
+
+/mob/living/silicon/robot/update_sight()
+
+ if (stat == DEAD || src.sight_mode & BORGXRAY)
src.sight |= SEE_TURFS
src.sight |= SEE_MOBS
src.sight |= SEE_OBJS
@@ -150,7 +135,7 @@
else if (src.sight_mode & BORGTHERM)
src.sight |= SEE_MOBS
src.see_invisible = SEE_INVISIBLE_LEVEL_TWO
- else if (src.stat != 2)
+ else if (src.stat != DEAD)
src.sight &= ~SEE_MOBS
src.sight &= ~SEE_TURFS
src.sight &= ~SEE_OBJS
@@ -158,39 +143,32 @@
if(see_override)
see_invisible = see_override
- if (src.healths)
- if (src.stat != 2)
+/mob/living/silicon/robot/handle_hud_icons()
+ update_items()
+ update_cell()
+ ..()
+
+/mob/living/silicon/robot/handle_hud_icons_health()
+ if (healths)
+ if (stat != DEAD)
switch(health)
if(100 to INFINITY)
- src.healths.icon_state = "health0"
+ healths.icon_state = "health0"
if(50 to 100)
- src.healths.icon_state = "health2"
+ healths.icon_state = "health2"
if(0 to 50)
- src.healths.icon_state = "health3"
+ healths.icon_state = "health3"
if(-50 to 0)
- src.healths.icon_state = "health4"
+ healths.icon_state = "health4"
if(config.health_threshold_dead to -50)
- src.healths.icon_state = "health5"
+ healths.icon_state = "health5"
else
- src.healths.icon_state = "health6"
+ healths.icon_state = "health6"
else
- src.healths.icon_state = "health7"
+ healths.icon_state = "health7"
- if (src.syndicate && src.client)
- if(ticker.mode.name == "traitor")
- for(var/datum/mind/tra in ticker.mode.traitors)
- if(tra.current)
- var/I = image('icons/mob/mob.dmi', loc = tra.current, icon_state = "traitor")
- src.client.images += I
- if(src.connected_ai)
- src.connected_ai.connected_robots -= src
- src.connected_ai = null
- if(src.mind)
- if(!src.mind.special_role)
- src.mind.special_role = "traitor"
- ticker.mode.traitors += src.mind
-
- if (src.cell)
+/mob/living/silicon/robot/proc/update_cell()
+ if (cell)
var/cellcharge = src.cell.charge/src.cell.maxcharge
switch(cellcharge)
if(0.75 to INFINITY)
@@ -206,51 +184,18 @@
else
throw_alert("charge","nocell")
-
- if(pullin)
- if(pulling)
- pullin.icon_state = "pull"
- else
- pullin.icon_state = "pull0"
-
- client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired)
-
- if ((src.blind && src.stat != 2))
- if(src.eye_blind)
- src.blind.layer = 18
- else
- src.blind.layer = 0
- if (src.disabilities & NEARSIGHT)
- src.client.screen += global_hud.vimpaired
-
- if (src.eye_blurry)
- src.client.screen += global_hud.blurry
-
- if (src.druggy)
- src.client.screen += global_hud.druggy
-
- if (src.stat != 2)
- if (src.machine)
- if (!( src.machine.check_eye(src) ))
- src.reset_view(null)
- else
- if(!client.adminobs)
- reset_view(null)
-
- return 1
-
/mob/living/silicon/robot/proc/update_items()
- if (src.client)
- src.client.screen -= src.contents
- for(var/obj/I in src.contents)
+ if (client)
+ client.screen -= contents
+ for(var/obj/I in contents)
if(I && !(istype(I,/obj/item/weapon/stock_parts/cell) || istype(I,/obj/item/device/radio) || istype(I,/obj/machinery/camera) || istype(I,/obj/item/device/mmi)))
- src.client.screen += I
- if(src.module_state_1)
- src.module_state_1:screen_loc = ui_inv1
- if(src.module_state_2)
- src.module_state_2:screen_loc = ui_inv2
- if(src.module_state_3)
- src.module_state_3:screen_loc = ui_inv3
+ client.screen += I
+ if(module_state_1)
+ module_state_1:screen_loc = ui_inv1
+ if(module_state_2)
+ module_state_2:screen_loc = ui_inv2
+ if(module_state_3)
+ module_state_3:screen_loc = ui_inv3
//Robots on fire
@@ -276,6 +221,8 @@
IgniteMob()
/mob/living/silicon/robot/update_canmove()
- if(paralysis || stunned || weakened || buckled || lockcharge) canmove = 0
- else canmove = 1
+ if(paralysis || stunned || weakened || buckled || lockcharge)
+ canmove = 0
+ else
+ canmove = 1
return canmove
diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm
index 27549fcbfbc..330d52fef83 100644
--- a/code/modules/mob/living/simple_animal/parrot.dm
+++ b/code/modules/mob/living/simple_animal/parrot.dm
@@ -347,25 +347,21 @@
/mob/living/simple_animal/parrot/Life()
..()
- //Sprite and AI update for when a parrot gets pulled
+ //Sprite update for when a parrot gets pulled
if(pulledby && stat == CONSCIOUS)
icon_state = "parrot_fly"
if(!client)
parrot_state = PARROT_WANDER
return
- if(client || stat)
- return //Lets not force players or dead/incap parrots to move
-
- if(!isturf(src.loc) || !canmove || buckled)
- return //If it can't move, dont let it move. (The buckled check probably isn't necessary thanks to canmove)
-
//-----SPEECH
/* Parrot speech mimickry!
Phrases that the parrot Hear()s get added to speach_buffer.
Every once in a while, the parrot picks one of the lines from the buffer and replaces an element of the 'speech' list.
Then it clears the buffer to make sure they dont magically remember something from hours ago. */
+/mob/living/simple_animal/parrot/handle_automated_speech()
+ ..()
if(speech_buffer.len && prob(10))
if(speak.len)
speak.Remove(pick(speak))
@@ -374,6 +370,10 @@
clearlist(speech_buffer)
+/mob/living/simple_animal/parrot/handle_automated_movement()
+ if(!..())
+ return //If it can't or shouldn't move, dont let it move.
+
//-----SLEEPING
if(parrot_state == PARROT_PERCH)
if(parrot_perch && parrot_perch.loc != src.loc) //Make sure someone hasnt moved our perch on us
diff --git a/code/modules/mob/living/simple_animal/shade.dm b/code/modules/mob/living/simple_animal/shade.dm
index ebca47633b9..15ff46d6403 100644
--- a/code/modules/mob/living/simple_animal/shade.dm
+++ b/code/modules/mob/living/simple_animal/shade.dm
@@ -28,14 +28,12 @@
status_flags = CANPUSH
-/mob/living/simple_animal/shade/Life()
- ..()
- if(stat == 2)
- new /obj/item/weapon/ectoplasm (src.loc)
- visible_message("[src] lets out a contented sigh as their form unwinds.")
- ghostize()
- qdel(src)
- return
+/mob/living/simple_animal/shade/death()
+ new /obj/item/weapon/ectoplasm (src.loc)
+ visible_message("[src] lets out a contented sigh as their form unwinds.")
+ ghostize()
+ qdel(src)
+ return
/mob/living/simple_animal/shade/attackby(var/obj/item/O as obj, var/mob/user as mob, params) //Marker -Agouri
diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm
index b6bb2e9d2aa..85c019a9b0a 100644
--- a/code/modules/mob/living/simple_animal/simple_animal.dm
+++ b/code/modules/mob/living/simple_animal/simple_animal.dm
@@ -85,27 +85,24 @@
health = maxHealth
return
-/mob/living/simple_animal/Life()
+/mob/living/simple_animal/handle_regular_status_updates()
+ if(!..())
+ auto_revive()
- if(stat == DEAD)
- if(health > 0)
- icon_state = icon_living
- dead_mob_list -= src
- living_mob_list += src
- stat = CONSCIOUS
- density = 1
- update_canmove()
- return 0
-
- updatehealth()
-
- if(health < 1)
+ else if(health < 1)
death()
- else
- handle_regular_status_updates()
- //Movement
- if(!client && !stop_automated_movement && wander)
+/mob/living/simple_animal/proc/auto_revive()
+ if(stat == DEAD && health > 0)
+ icon_state = icon_living
+ dead_mob_list -= src
+ living_mob_list += src
+ stat = CONSCIOUS
+ density = 1
+ update_canmove()
+
+/mob/living/simple_animal/handle_automated_movement()
+ if(!stop_automated_movement && wander)
if(isturf(src.loc) && !resting && !buckled && canmove) //This is so it only moves if it's not inside a closet, gentics machine, etc.
turns_since_move++
if(turns_since_move >= turns_per_move)
@@ -114,9 +111,10 @@
if(Process_Spacemove(anydir))
Move(get_step(src, anydir), anydir)
turns_since_move = 0
+ return 1
- //Speaking
- if(!client && speak_chance)
+/mob/living/simple_animal/handle_automated_speech()
+ if(speak_chance)
if(rand(0,200) < speak_chance)
if(speak && speak.len)
if((emote_hear && emote_hear.len) || (emote_see && emote_see.len))
@@ -150,7 +148,7 @@
emote("me", 2, pick(emote_hear))
- //Atmos
+/mob/living/simple_animal/handle_environment()
var/atmos_suitable = 1
var/atom/A = src.loc
@@ -204,7 +202,8 @@
if(!atmos_suitable)
adjustBruteLoss(unsuitable_atmos_damage)
- return 1
+
+
/mob/living/simple_animal/gib(var/animation = 0)
if(icon_gib)
@@ -383,7 +382,7 @@
stat(null, "Health: [round((health / maxHealth) * 100)]%")
/mob/living/simple_animal/death(gibbed)
- health = 0 // so /mob/living/simple_animal/Life() doesn't magically revive them
+ health = 0 // so /mob/living/simple_animal/handle_regular_status_updates() doesn't magically revive them
icon_state = icon_dead
stat = DEAD
density = 0
@@ -423,6 +422,8 @@
return 0
return 1
+/mob/living/simple_animal/handle_fire()
+ return
/mob/living/simple_animal/update_fire()
return