More objectives

This commit is contained in:
deathride58
2017-09-04 17:47:01 -04:00
parent 2e0c36024e
commit 2ade816524
3 changed files with 69 additions and 0 deletions
+65
View File
@@ -33,6 +33,8 @@
/datum/objective/crew/proc/setup()
/* COMMAND OBJECTIVES */
/datum/objective/crew/captain/
/datum/objective/crew/captain/hat
@@ -43,3 +45,66 @@
return 1
else
return 0
/datum/objective/crew/captain/datfukkendisk
explanation_text = "Defend the nuclear authentication disk at all costs, and personally deliver it to Centcom."
/datum/objective/crew/captain/datfukkendisk/check_completion()
if(owner.current && owner.current.check_contents_for(/obj/item/disk/nuclear) && SSshuttle.emergency.shuttle_areas[get_area(owner.current)])
return 1
else
return 0
/* SECURITY OBJECTIVES */
/datum/objective/crew/headofsecurity/
/datum/objective/crew/headofsecurity/justicecrew
explanation_text = "Ensure there are no innocent crew members in the brig when the shift ends."
/datum/objective/crew/headofsecurity/justicecrew/check_completion()
if(owner.current)
for(var/datum/mind/M in SSticker.minds)
if(M.current && isliving(owner))
if(!M.special_role && !M.assigned_role = "Security Officer" && !M.assigned_role = "Detective" && !M.assigned_role = "Head of Security" && !M.assigned_role = "Lawyer" && get_area(M.current) != typesof(/area/security))
return 0
return 1
/datum/objective/crew/securityofficer/
/datum/objective/crew/securityofficer/justicecrew
explanation_text = "Ensure there are no innocent crew members in the brig when the shift ends."
/datum/objective/crew/securityofficer/justicecrew/check_completion()
if(owner.current)
for(var/datum/mind/M in SSticker.minds)
if(M.current && isliving(owner))
if(!M.special_role && !M.assigned_role = "Security Officer" && !M.assigned_role = "Detective" && !M.assigned_role = "Head of Security" && !M.assigned_role = "Lawyer" && get_area(M.current) != typesof(/area/security))
return 0
return 1
/datum/objective/crew/detective/
/datum/objective/crew/detective/justicecrew
explanation_text = "Ensure there are no innocent crew members in the brig when the shift ends."
/datum/objective/crew/detective/justicecrew/check_completion()
if(owner.current)
for(var/datum/mind/M in SSticker.minds)
if(M.current && isliving(owner))
if(!M.special_role && !M.assigned_role = "Security Officer" && !M.assigned_role = "Detective" && !M.assigned_role = "Head of Security" && !M.assigned_role = "Lawyer" && get_area(M.current) != typesof(/area/security))
return 0
return 1
/datum/objective/crew/lawyer/
/datum/objective/crew/lawyer/justicecrew
explanation_text = "Ensure there are no innocent crew members in the brig when the shift ends."
/datum/objective/crew/lawyer/justicecrew/check_completion()
if(owner.current)
for(var/datum/mind/M in SSticker.minds)
if(M.current && isliving(owner))
if(!M.special_role && !M.assigned_role = "Security Officer" && !M.assigned_role = "Detective" && !M.assigned_role = "Head of Security" && !M.assigned_role = "Lawyer" && get_area(M.current) != typesof(/area/security))
return 0
return 1
+3
View File
@@ -50,3 +50,6 @@
/datum/objective/miscreant/whiny
explanation_text = "Complain incessantly about every minor issue you find."
/datum/objective/miscreant/immersions
explanation_text = "Act as out of character as you possibly can."
+1
View File
@@ -615,6 +615,7 @@ SUBSYSTEM_DEF(ticker)
to_chat(world, "<B> The following crew members were miscreants:</B>")
for(var/i in miscreants)
to_chat(world, "[i]")
to_chat(world, "<BR>")
CHECK_TICK