diff --git a/code/game/gamemodes/malfunction/malfunction.dm b/code/game/gamemodes/malfunction/malfunction.dm index 1832145f22b..fe145e59649 100644 --- a/code/game/gamemodes/malfunction/malfunction.dm +++ b/code/game/gamemodes/malfunction/malfunction.dm @@ -39,7 +39,9 @@ AI_mind.current << "The crew do not know you have malfunctioned. You may keep it a secret or go wild." AI_mind.current << "You must overwrite the programming of the station's APCs to assume full control of the station." AI_mind.current << "The process takes one minute per APC, during which you cannot interface with any other station objects." - + AI_mind.current << "Remember that only APCs that are on the station can help you take over the station." + AI_mind.current << "When you feel you have enough APCs under your control, you may begin the takeover attempt." + AI_mind.current.verbs += /datum/game_mode/malfunction/proc/takeover AI_mind.current.icon_state = "ai-malf" spawn (rand(waittime_l, waittime_h)) @@ -80,10 +82,8 @@ /datum/game_mode/malfunction/process() - if (apcs >= 3) + if (apcs >= 3 && malf_mode_declared) AI_win_timeleft = AI_win_timeleft - (apcs/3) //Victory timer now de-increments based on how many APCs are hacked. --NeoFite -// if(AI_win_timeleft == 1200) // Was 1790 -// malf_mode_declared = 1 check_win() /datum/game_mode/malfunction/check_win() @@ -95,7 +95,7 @@ for(var/datum/mind/AI_mind in malf_ai) AI_mind.current << "Congratulations you have taken control of the station." AI_mind.current << "You may decide to blow up the station. You have 30 seconds to choose." - AI_mind.current << "You should have a new verb tab labeled 'EXPLODE?'" + AI_mind.current << "You should have a new verb in the Malfunction tab." AI_mind.current.verbs += /datum/game_mode/malfunction/proc/ai_win spawn (300) AI_mind.current.verbs -= /datum/game_mode/malfunction/proc/ai_win @@ -115,10 +115,23 @@ ai_win() return +/datum/game_mode/malfunction/proc/takeover() + set category = "Malfunction" + set name = "System Override" + set desc = "Start the victory timer" + if (ticker.mode:malf_mode_declared) + usr << "You've already begun your takeover." + return + if (ticker.mode:apcs >= 3) + command_alert("Hostile runtimes detected in all station systems, please deactivate your AI to prevent possible damage to its morality core.", "Anomaly Alert") + ticker.mode:malf_mode_declared = 1 + else + usr << "You don't have enough hacked APCs to take over the station yet." + /datum/game_mode/malfunction/proc/ai_win() - set category = "EXPLODE?" - set name = "EXPLODE!" - set desc = "BOOM" + set category = "Malfunction" + set name = "Explode" + set desc = "Station go boom" usr.verbs -= /datum/game_mode/malfunction/proc/ai_win ticker.mode:boom = 1 diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index f37af9e880b..a3feb2b8a30 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -150,9 +150,9 @@ stat(null, "Intent: [src.a_intent]") stat(null, "Move Mode: [src.m_intent]") -// if(ticker.mode.name == "AI malfunction") -// if(ticker.mode:malf_mode_declared) -// stat(null, "Time left: [ ticker.mode:AI_win_timeleft]") + if(ticker.mode.name == "AI malfunction") + if(ticker.mode:malf_mode_declared) + stat(null, "Time left: [max(ticker.mode:AI_win_timeleft/(ticker.mode:apcs/3), 0)]") if(emergency_shuttle) if(emergency_shuttle.online && emergency_shuttle.location < 2) var/timeleft = emergency_shuttle.timeleft()