diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm index a4420872e5e..eda6d74b296 100644 --- a/code/game/objects/items/weapons/defib.dm +++ b/code/game/objects/items/weapons/defib.dm @@ -408,8 +408,9 @@ H.adjustBruteLoss(tobehealed) user.visible_message("[defib] pings: Resuscitation successful.") playsound(get_turf(src), 'sound/machines/defib_success.ogg', 50, 0) - H.stat = 1 - H.update_revive() + H.update_revive(FALSE) + H.KnockOut(FALSE) + H.Paralyse(5) H.emote("gasp") if(tplus > tloss) H.setBrainLoss( max(0, min(99, ((tlimit - tplus) / tlimit * 100)))) @@ -527,8 +528,9 @@ H.adjustBruteLoss(tobehealed) user.visible_message("[user] pings: Resuscitation successful.") playsound(get_turf(src), 'sound/machines/defib_success.ogg', 50, 0) - H.stat = UNCONSCIOUS - H.update_revive() + H.update_revive(FALSE) + H.KnockOut(FALSE) + H.Paralyse(5) H.emote("gasp") if(tplus > tloss) H.setBrainLoss( max(0, min(99, ((tlimit - tplus) / tlimit * 100)))) diff --git a/code/modules/mob/living/carbon/human/species/plasmaman.dm b/code/modules/mob/living/carbon/human/species/plasmaman.dm index 49d6d7fe245..5fe7d44ab6d 100644 --- a/code/modules/mob/living/carbon/human/species/plasmaman.dm +++ b/code/modules/mob/living/carbon/human/species/plasmaman.dm @@ -189,7 +189,7 @@ if(SA_pp > SA_para_min) // Enough to make us paralysed for a bit H.Paralyse(3) // 3 gives them one second to wake up and run away a bit! if(SA_pp > SA_sleep_min) // Enough to make us sleep as well - H.AdjustSleeping(2, bound_lower = 0, bound_upper = 10) + H.AdjustSleeping(8, bound_lower = 0, bound_upper = 10) else if(SA_pp > 0.15) // There is sleeping gas in their lungs, but only a little, so give them a bit of a warning if(prob(20)) spawn(0) diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 7b91d51261c..2af29aefe72 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -305,7 +305,7 @@ if(!H.co2overloadtime) // If it's the first breath with too much CO2 in it, lets start a counter, then have them pass out after 12s or so. H.co2overloadtime = world.time else if(world.time - H.co2overloadtime > 120) - H.Paralyse(3) + H.Paralyse(5) H.adjustOxyLoss(3) // Lets hurt em a little, let them know we mean business if(world.time - H.co2overloadtime > 300) // They've been in here 30s now, lets start to kill them for their own good! H.adjustOxyLoss(8) @@ -314,6 +314,7 @@ H.emote("cough") else H.clear_alert("co2") + H.co2overloadtime = 0 if(atmos_requirements["min_co2"]) //species breathes this gas, so they got their air H.failed_last_breath = 0 H.adjustOxyLoss(-5) @@ -332,7 +333,8 @@ if(SA_pp > atmos_requirements["sa_para"]) // Enough to make us paralysed for a bit H.Paralyse(3) // 3 gives them one second to wake up and run away a bit! if(SA_pp > atmos_requirements["sa_sleep"]) // Enough to make us sleep as well - H.AdjustSleeping(2, bound_lower = 0, bound_upper = 10) + // This value is large because breaths are taken only once every 4 life ticks. + H.AdjustSleeping(8, bound_lower = 0, bound_upper = 10) else if(SA_pp > 0.01) // There is sleeping gas in their lungs, but only a little, so give them a bit of a warning if(prob(20)) spawn(0) diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm index e17d9af6250..c5ce705ba17 100644 --- a/code/modules/mob/living/death.dm +++ b/code/modules/mob/living/death.dm @@ -3,4 +3,4 @@ clear_fullscreens() update_action_buttons_icon() - ..(gibbed) \ No newline at end of file + ..(gibbed) diff --git a/code/modules/mob/living/stat_states.dm b/code/modules/mob/living/stat_states.dm index 49c91a10d99..f04196f9fc9 100644 --- a/code/modules/mob/living/stat_states.dm +++ b/code/modules/mob/living/stat_states.dm @@ -35,7 +35,7 @@ // death() is used to make a mob die // handles revival through other means than cloning or adminbus (defib, IPC repair) -/mob/living/proc/update_revive() +/mob/living/proc/update_revive(updating = TRUE) if(stat != DEAD) return if(!can_be_revived()) @@ -45,6 +45,7 @@ dead_mob_list -= src living_mob_list += src timeofdeath = null - update_canmove() + if(updating) + update_canmove() // update_blind_effects() updatehealth()