Adds stasis beds

This commit is contained in:
Artur
2022-04-06 15:38:05 +03:00
parent 4c3fa08cdf
commit c36019bf56
15 changed files with 257 additions and 20 deletions

View File

@@ -162,6 +162,26 @@
if(!state_open)
. += "sleeper_cover"
//Lifeform Stasis Unit
/obj/machinery/stasis/survival_pod
icon = 'icons/obj/lavaland/survival_pod.dmi'
icon_state = "sleeper"
mattress_state = null
buckle_lying = 270
/obj/machinery/stasis/survival_pod/play_power_sound()
return
/obj/machinery/stasis/survival_pod/update_icon()
return
//NanoMed
/obj/machinery/vending/wallmed/survival_pod
name = "survival pod medical supply"
desc = "Wall-mounted Medical Equipment dispenser. This one seems just a tiny bit smaller."
refill_canister = null
onstation = FALSE
//Computer
/obj/item/gps/computer
name = "pod computer"

View File

@@ -6,11 +6,12 @@
SHOULD_NOT_SLEEP(TRUE)
if(mob_transforming)
return
handle_traits() // eye, ear, brain damages
handle_status_effects() //all special effects, stun, knockdown, jitteryness, hallucination, sleeping, etc
. = SEND_SIGNAL(src, COMSIG_LIVING_LIFE, seconds, times_fired)
if(!(. & COMPONENT_INTERRUPT_LIFE_PHYSICAL))
PhysicalLife(seconds, times_fired)
if(!(. & COMPONENT_INTERRUPT_LIFE_BIOLOGICAL))
if(!(. & COMPONENT_INTERRUPT_LIFE_BIOLOGICAL) && !IS_IN_STASIS())
BiologicalLife(seconds, times_fired)
// CODE BELOW SHOULD ONLY BE THINGS THAT SHOULD HAPPEN NO MATTER WHAT AND CAN NOT BE SUSPENDED!
@@ -69,9 +70,6 @@
handle_block_parry(seconds)
// These two MIGHT need to be moved to base Life() if we get any in the future that's a "physical" effect that needs to fire even while in stasis.
handle_traits() // eye, ear, brain damages
handle_status_effects() //all special effects, stun, knockdown, jitteryness, hallucination, sleeping, etc
return TRUE
/**

View File

@@ -433,8 +433,8 @@
to_chat(src, "<span class='notice'>You have given up life and succumbed to death.</span>")
death()
/mob/living/incapacitated(ignore_restraints = FALSE, ignore_grab = FALSE, check_immobilized = FALSE)
if(stat || IsUnconscious() || IsStun() || IsParalyzed() || (combat_flags & COMBAT_FLAG_HARD_STAMCRIT) || (check_immobilized && IsImmobilized()) || (!ignore_restraints && restrained(ignore_grab)))
/mob/living/incapacitated(ignore_restraints = FALSE, ignore_grab = FALSE, check_immobilized = FALSE, ignore_stasis = FALSE)
if(stat || IsUnconscious() || IsStun() || IsParalyzed() || (combat_flags & COMBAT_FLAG_HARD_STAMCRIT) || (check_immobilized && IsImmobilized()) || (!ignore_restraints && restrained(ignore_grab)) || (!ignore_stasis && IS_IN_STASIS()))
return TRUE
/mob/living/canUseStorage()