diff --git a/code/modules/mob/living/basic/basic.dm b/code/modules/mob/living/basic/basic.dm index aaba82030c1..4a92f238152 100644 --- a/code/modules/mob/living/basic/basic.dm +++ b/code/modules/mob/living/basic/basic.dm @@ -77,6 +77,8 @@ var/icon_gib = null ///Flip the sprite upside down on death. Mostly here for things lacking custom dead sprites. var/flip_on_death = FALSE + ///Invert the mob's density on death. A usually dense mob will become passable, a passable one will become dense. + var/flip_density_on_death = TRUE ///If the mob can be spawned with a gold slime core. HOSTILE_SPAWN are spawned with plasma, FRIENDLY_SPAWN are spawned with blood. var/gold_core_spawnable = NO_SPAWN @@ -120,7 +122,18 @@ icon_state = icon_dead if(flip_on_death) transform = transform.Turn(180) - set_density(FALSE) + if (flip_density_on_death) + set_density(!density) + +/mob/living/basic/revive(full_heal_flags = NONE, excess_healing = 0, force_grab_ghost = FALSE) + . = ..() + if (!.) + return + icon_state = icon_living + if (flip_on_death) + transform = transform.Turn(180) + if (flip_density_on_death) + set_density(!density) /mob/living/basic/proc/melee_attack(atom/target) src.face_atom(target)