diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 41a6c7e00a4..751cf075ce7 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -677,10 +677,6 @@ new_objective = new /datum/objective/survive new_objective.owner = src - if("die") - new_objective = new /datum/objective/die - new_objective.owner = src - if("nuclear") new_objective = new /datum/objective/nuclear new_objective.owner = src diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index a31bd15a91c..79a0a17a184 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -453,22 +453,6 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) return TRUE return FALSE -/datum/objective/die - name = "Die a glorious death" - explanation_text = "Die a glorious death." - needs_target = FALSE - -/datum/objective/die/check_completion() - for(var/datum/mind/M in get_owners()) - if(QDELETED(M.current) || M.current.stat == DEAD || is_special_dead(M.current, check_silicon = FALSE)) - continue - if(issilicon(M.current) && !M.is_original_mob(M.current)) - continue - return FALSE // Some owner didn't meet the above criteria. - return TRUE - - - /datum/objective/survive name = "Survive" explanation_text = "Stay alive until the end." diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm index f92a0eb20b3..5310da60207 100644 --- a/code/modules/antagonists/traitor/datum_traitor.dm +++ b/code/modules/antagonists/traitor/datum_traitor.dm @@ -100,21 +100,17 @@ for(var/i in 1 to GLOB.configuration.gamemode.traitor_objectives_amount) forge_single_human_objective() - // Die a glorious death objective. + // Are they required to stay alive for their objectives? + var/martyr_compatibility = TRUE if(prob(20)) - var/martyr_compatibility = TRUE for(var/objective in owner.get_all_objectives()) var/datum/objective/O = objective if(!O.martyr_compatible) // Check if our current objectives can co-exist with martyr. martyr_compatibility = FALSE break - if(martyr_compatibility) - add_objective(/datum/objective/die) - return - // Give them an escape objective if they don't have one already. - if(!(locate(/datum/objective/escape) in owner.get_all_objectives())) + if(!(locate(/datum/objective/escape) in owner.get_all_objectives()) && martyr_compatibility) add_objective(/datum/objective/escape) /**