From 673ecd288e6aa697acf7a28b5721fbadb9e57fba Mon Sep 17 00:00:00 2001 From: datlo Date: Tue, 19 Feb 2019 20:33:36 +0000 Subject: [PATCH] antag clowns can toggle clumsy on and off --- code/game/gamemodes/changeling/changeling.dm | 3 ++- code/game/gamemodes/cult/cult.dm | 3 ++- code/game/gamemodes/devil/game_mode.dm | 2 ++ code/game/gamemodes/revolution/revolution.dm | 3 ++- code/game/gamemodes/traitor/traitor.dm | 3 +++ code/game/gamemodes/vampire/vampire.dm | 3 ++- code/game/jobs/job/support.dm | 21 ++++++++++++++++++++ 7 files changed, 34 insertions(+), 4 deletions(-) diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index a4c25350e5f..d0ac848d905 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -140,7 +140,8 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon" if(changeling.current.mind.assigned_role == "Clown") to_chat(changeling.current, "You have evolved beyond your clownish nature, allowing you to wield weapons without harming yourself.") changeling.current.mutations.Remove(CLUMSY) - + var/datum/action/innate/toggle_clumsy/A = new + A.Grant(changeling.current) var/obj_count = 1 for(var/datum/objective/objective in changeling.objectives) to_chat(changeling.current, "Objective #[obj_count]: [objective.explanation_text]") diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index 1423e9155b4..203607576b6 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -157,7 +157,8 @@ var/global/list/all_cults = list() if(mob.mind.assigned_role == "Clown") to_chat(mob, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") mob.mutations.Remove(CLUMSY) - + var/datum/action/innate/toggle_clumsy/A = new + A.Grant(mob) var/obj/item/paper/talisman/supply/T = new(mob) var/list/slots = list ( "backpack" = slot_in_backpack, diff --git a/code/game/gamemodes/devil/game_mode.dm b/code/game/gamemodes/devil/game_mode.dm index 7b0be8e6e0f..f8b980f2dfd 100644 --- a/code/game/gamemodes/devil/game_mode.dm +++ b/code/game/gamemodes/devil/game_mode.dm @@ -39,6 +39,8 @@ if(devil_mind.assigned_role == "Clown") to_chat(devil_mind.current, "Your infernal nature allows you to wield weapons without harming yourself.") devil_mind.current.mutations.Remove(CLUMSY) + var/datum/action/innate/toggle_clumsy/A = new + A.Grant(devil_mind.current) spawn(10) devil_mind.devilinfo.update_hud() if(issilicon(devil_mind.current)) diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index ccf70a72173..7cab3de5aa1 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -122,7 +122,8 @@ if(mob.mind.assigned_role == "Clown") to_chat(mob, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") mob.mutations.Remove(CLUMSY) - + var/datum/action/innate/toggle_clumsy/A = new + A.Grant(mob) var/obj/item/flash/T = new(mob) var/obj/item/toy/crayon/spraycan/R = new(mob) diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index 2c613e7cdb8..de7ce59eaa2 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -299,6 +299,9 @@ if(traitor_mob.mind.assigned_role == "Clown") to_chat(traitor_mob, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") traitor_mob.mutations.Remove(CLUMSY) + var/datum/action/innate/toggle_clumsy/A = new + A.Grant(traitor_mob) + // find a radio! toolbox(es), backpack, belt, headset var/obj/item/R = locate(/obj/item/pda) in traitor_mob.contents //Hide the uplink in a PDA if available, otherwise radio diff --git a/code/game/gamemodes/vampire/vampire.dm b/code/game/gamemodes/vampire/vampire.dm index c243b86ac70..18d36ad57f3 100644 --- a/code/game/gamemodes/vampire/vampire.dm +++ b/code/game/gamemodes/vampire/vampire.dm @@ -186,7 +186,8 @@ You are weak to holy things and starlight. Don't go into space and avoid the Cha if(vampire.current.mind.assigned_role == "Clown") to_chat(vampire.current, "Your lust for blood has allowed you to overcome your clumsy nature allowing you to wield weapons without harming yourself.") vampire.current.mutations.Remove(CLUMSY) - + var/datum/action/innate/toggle_clumsy/A = new + A.Grant(vampire.current) var/obj_count = 1 for(var/datum/objective/objective in vampire.objectives) to_chat(vampire.current, "Objective #[obj_count]: [objective.explanation_text]") diff --git a/code/game/jobs/job/support.dm b/code/game/jobs/job/support.dm index 38ef1b7fe32..fe5d7799582 100644 --- a/code/game/jobs/job/support.dm +++ b/code/game/jobs/job/support.dm @@ -253,6 +253,27 @@ if(!ismachine(H)) H.mutations.Add(COMIC) +//action given to antag clowns +/datum/action/innate/toggle_clumsy + name = "Toggle Clown Clumsy" + button_icon_state = "clown" + +/datum/action/innate/toggle_clumsy/Activate() + var/mob/living/carbon/human/H = owner + H.mutations.Add(CLUMSY) + active = TRUE + background_icon_state = "bg_spell" + UpdateButtonIcon() + to_chat(H, "You start acting clumsy to throw suspicions off. Focus again before using weapons.") + +/datum/action/innate/toggle_clumsy/Deactivate() + var/mob/living/carbon/human/H = owner + H.mutations.Remove(CLUMSY) + active = FALSE + background_icon_state = "bg_default" + UpdateButtonIcon() + to_chat(H, "You focus and can now use weapons regularly.") + /datum/job/mime title = "Mime" flag = MIME