Cryopods from Oracle Station

It's really nice to have a tg based station that's porting good shit.
This commit is contained in:
Poojawa
2018-02-14 14:06:33 -06:00
parent a13d41a675
commit 01bc7310b6
8 changed files with 474 additions and 3 deletions
+7 -3
View File
@@ -1,3 +1,7 @@
//CITADEL EDIT
GLOBAL_LIST_EMPTY(objectives)
//END EDIT
/datum/objective
var/datum/mind/owner //The primary owner of the objective. !!SOMEWHAT DEPRECATED!! Prefer using 'team' for new code.
var/datum/team/team //An alternative to 'owner': a team. Use this when writing new code.
@@ -9,6 +13,7 @@
var/martyr_compatible = 0 //If the objective is compatible with martyr objective, i.e. if you can still do it while dead.
/datum/objective/New(var/text)
GLOB.objectives += src // CITADEL EDIT FOR CRYOPODS
if(text)
explanation_text = text
@@ -72,6 +77,8 @@
possible_targets = all_possible_targets
if(possible_targets.len > 0)
target = pick(possible_targets)
else
target = null//we'd rather have no target than an invalid one // CITADEL EDIT
update_explanation_text()
return target
@@ -818,6 +825,3 @@ GLOBAL_LIST_EMPTY(possible_items_special)
/datum/objective/changeling_team_objective/impersonate_department/impersonate_heads
explanation_text = "Have X or more heads of staff escape on the shuttle disguised as heads, while the real heads are dead"
command_staff_only = TRUE
@@ -89,6 +89,10 @@ GLOBAL_LIST_EMPTY(announcement_systems)
message = CompileText(arrival, user, rank)
else if(message_type == "NEWHEAD" && newheadToggle)
message = CompileText(newhead, user, rank)
//CITADEL EDIT for cryopods
else if(message_type == "CRYOSTORAGE")
message = CompileText("%PERSON, %RANK has been moved to cryo storage.", user, rank)
//END EDIT
else if(message_type == "ARRIVALS_BROKEN")
message = "The arrivals shuttle has been damaged. Docking for repairs..."
@@ -270,6 +270,15 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
set name = "Ghost"
set desc = "Relinquish your life and enter the land of the dead."
// CITADEL EDIT
if(istype(loc, /obj/machinery/cryopod))
var/response = alert(src, "Are you -sure- you want to ghost?\n(You are alive. If you ghost whilst still alive you may not play again this round! You can't change your mind so choose wisely!!)","Are you sure you want to ghost?","Ghost","Stay in body")
if(response != "Ghost")//darn copypaste
return
var/obj/machinery/cryopod/C = loc
C.despawn_occupant()
return
// END EDIT
if(stat != DEAD)
succumb()
if(stat == DEAD)