From 6b8e46cdaee0440a6762365cbdd3d0be69643a64 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Mon, 4 Sep 2017 04:10:40 -0400 Subject: [PATCH] Aaaaaand the basic miscreant stuff --- code/citadel/cit_crewobjectives.dm | 2 +- code/citadel/cit_miscreants.dm | 28 ++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/code/citadel/cit_crewobjectives.dm b/code/citadel/cit_crewobjectives.dm index 29d7ae950f..b9085260bf 100644 --- a/code/citadel/cit_crewobjectives.dm +++ b/code/citadel/cit_crewobjectives.dm @@ -29,7 +29,7 @@ crewMind.announce_objectives() /datum/objective/crew/ - explanation_text = "Yell on the coderbus discussion channel on Citadel's discord if this ever shows up. Something just broke here, dude" + explanation_text = "Yell on the coderbus discussion channel on Citadels discord if this ever shows up. Something just broke here, dude" /datum/objective/crew/proc/setup() diff --git a/code/citadel/cit_miscreants.dm b/code/citadel/cit_miscreants.dm index e69de29bb2..ea23a74722 100644 --- a/code/citadel/cit_miscreants.dm +++ b/code/citadel/cit_miscreants.dm @@ -0,0 +1,28 @@ +/datum/controller/subsystem/ticker/proc/generate_miscreant_objectives(var/datum/mind/crewMind) + if(GLOB.master_mode == "extended") + return //Thinking about it, extended's chaos whether or not mini-antags are present. But eh, whatever. Here's a sanity check. + if(!crewMind) + return + if(!crewMind.current || !crewMind.objectives || crewMind.special_role) + return + if(!crewMind.assigned_role) + return + var/list/objectiveTypes = typesof(/datum/objective/miscreant) - /datum/objective/miscreant + if(!objectiveTypes.len) + return + var/selectedType = pick(objectiveTypes) + var/datum/objective/crew/newObjective = new selectedType + if(!newObjective) + return + newObjective.owner = crewMind + crewMind.objectives += newObjective + crewMind.special_role = "miscreant" + to_chat(crewMind, "You are a Miscreant.") + to_chat(crewMind, "Pursuing your objective is purely optional, but it is not tracked. You may not commit any traitorous acts not directly related to them.") + crewMind.announce_objectives() + +/datum/objective/miscreant + explanation_text = "Something broke. Horribly. Dear god, im so sorry. Yell about this in the coderbus discussion channel of citadels discord." + +/datum/objective/miscreant/blockade + explanation_text = "Try to completely block off access to an area, claiming that it's too dangerous." \ No newline at end of file