diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm
index ae09e8ee12..eafc5cd717 100644
--- a/code/game/gamemodes/changeling/changeling.dm
+++ b/code/game/gamemodes/changeling/changeling.dm
@@ -245,13 +245,21 @@ GLOBAL_LIST_INIT(slot2type, list("head" = /obj/item/clothing/head/changeling, "w
if(changeling.objectives.len)
var/count = 1
for(var/datum/objective/objective in changeling.objectives)
- if(objective.check_completion())
- text += "
Objective #[count]: [objective.explanation_text] Success!"
- SSblackbox.add_details("changeling_objective","[objective.type]|SUCCESS")
+ if(istype(objective, /datum/objective/crew))
+ if(objective.check_completion())
+ text += "
Objective #[count]: [objective.explanation_text] Success! (Optional)"
+ SSblackbox.add_details("changeling_objective","[objective.type]|SUCCESS")
+ else
+ text += "
Objective #[count]: [objective.explanation_text] Fail. (Optional)"
+ SSblackbox.add_details("changeling_objective","[objective.type]|FAIL")
else
- text += "
Objective #[count]: [objective.explanation_text] Fail."
- SSblackbox.add_details("changeling_objective","[objective.type]|FAIL")
- changelingwin = 0
+ if(objective.check_completion())
+ text += "
Objective #[count]: [objective.explanation_text] Success!"
+ SSblackbox.add_details("changeling_objective","[objective.type]|SUCCESS")
+ else
+ text += "
Objective #[count]: [objective.explanation_text] Fail."
+ SSblackbox.add_details("changeling_objective","[objective.type]|FAIL")
+ changelingwin = 0
count++
if(changelingwin)
@@ -520,4 +528,3 @@ GLOBAL_LIST_INIT(slot2type, list("head" = /obj/item/clothing/head/changeling, "w
var/datum/atom_hud/antag/hud = GLOB.huds[ANTAG_HUD_CHANGELING]
hud.leave_hud(changling_mind.current)
set_antag_hud(changling_mind.current, null)
-
diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm
index 64d4f84eec..9881c49b68 100644
--- a/code/game/gamemodes/traitor/traitor.dm
+++ b/code/game/gamemodes/traitor/traitor.dm
@@ -111,13 +111,21 @@
if(traitor.objectives.len)//If the traitor had no objectives, don't need to process this.
var/count = 1
for(var/datum/objective/objective in traitor.objectives)
- if(objective.check_completion())
- objectives += "
Objective #[count]: [objective.explanation_text] Success!"
- SSblackbox.add_details("traitor_objective","[objective.type]|SUCCESS")
+ if(istype(objective, /datum/objective/crew))
+ if(objective.check_completion())
+ objectives += "
Objective #[count]: [objective.explanation_text] Success! (Optional)"
+ SSblackbox.add_details("traitor_objective","[objective.type]|SUCCESS")
+ else
+ objectives += "
Objective #[count]: [objective.explanation_text] Fail. (Optional)"
+ SSblackbox.add_details("traitor_objective","[objective.type]|FAIL")
else
- objectives += "
Objective #[count]: [objective.explanation_text] Fail."
- SSblackbox.add_details("traitor_objective","[objective.type]|FAIL")
- traitorwin = 0
+ if(objective.check_completion())
+ objectives += "
Objective #[count]: [objective.explanation_text] Success!"
+ SSblackbox.add_details("traitor_objective","[objective.type]|SUCCESS")
+ else
+ objectives += "
Objective #[count]: [objective.explanation_text] Fail."
+ SSblackbox.add_details("traitor_objective","[objective.type]|FAIL")
+ traitorwin = 0
count++
if(uplink_true)
diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm
index d25c7613bc..dee9ab4a3d 100644
--- a/code/game/gamemodes/wizard/wizard.dm
+++ b/code/game/gamemodes/wizard/wizard.dm
@@ -212,13 +212,21 @@
var/count = 1
var/wizardwin = 1
for(var/datum/objective/objective in wizard.objectives)
- if(objective.check_completion())
- text += "
Objective #[count]: [objective.explanation_text] Success!"
- SSblackbox.add_details("wizard_objective","[objective.type]|SUCCESS")
+ if(istype(objective, /datum/objective/crew))
+ if(objective.check_completion())
+ text += "
Objective #[count]: [objective.explanation_text] Success! (Optional)"
+ SSblackbox.add_details("wizard_objective","[objective.type]|SUCCESS")
+ else
+ text += "
Objective #[count]: [objective.explanation_text] Fail. (Optional)"
+ SSblackbox.add_details("wizard_objective","[objective.type]|FAIL")
else
- text += "
Objective #[count]: [objective.explanation_text] Fail."
- SSblackbox.add_details("wizard_objective","[objective.type]|FAIL")
- wizardwin = 0
+ if(objective.check_completion())
+ text += "
Objective #[count]: [objective.explanation_text] Success!"
+ SSblackbox.add_details("wizard_objective","[objective.type]|SUCCESS")
+ else
+ text += "
Objective #[count]: [objective.explanation_text] Fail."
+ SSblackbox.add_details("wizard_objective","[objective.type]|FAIL")
+ wizardwin = 0
count++
if(wizard.current && wizard.current.stat!=2 && wizardwin)