diff --git a/code/game/antagonist/antagonist.dm b/code/game/antagonist/antagonist.dm index 484ff8ea33..7496551c25 100644 --- a/code/game/antagonist/antagonist.dm +++ b/code/game/antagonist/antagonist.dm @@ -79,7 +79,9 @@ Think through your actions and make the roleplay immersive! Please remember all \ rules aside from those without explicit exceptions apply to antagonists." - var/can_use_aooc = TRUE // If true, will be given the AOOC verb, along with the ability to use it. +// var/can_use_aooc = TRUE // If true, will be given the AOOC verb, along with the ability to use it. + var/can_hear_aooc = TRUE // If FALSE, the antag can neither speak nor hear AOOC. If TRUE, they can at least hear it. + var/can_speak_aooc = TRUE // If TRUE, the antag can freely spean in AOOC. /datum/antagonist/New() ..() diff --git a/code/game/antagonist/antagonist_add.dm b/code/game/antagonist/antagonist_add.dm index 67eb7e2e72..d5fa2c1fe6 100644 --- a/code/game/antagonist/antagonist_add.dm +++ b/code/game/antagonist/antagonist_add.dm @@ -36,7 +36,7 @@ and it otherwise has no bearing on your round." player.current.verbs |= /mob/living/proc/write_ambition - if(can_use_aooc) + if(can_speak_aooc) player.current.client.verbs += /client/proc/aooc // Handle only adding a mind and not bothering with gear etc. diff --git a/code/game/antagonist/outsider/ert.dm b/code/game/antagonist/outsider/ert.dm index c1aec2bcf8..245296084c 100644 --- a/code/game/antagonist/outsider/ert.dm +++ b/code/game/antagonist/outsider/ert.dm @@ -25,7 +25,8 @@ var/datum/antagonist/ert/ert initial_spawn_req = 5 initial_spawn_target = 7 - can_use_aooc = FALSE // They're the good guys. + can_hear_aooc = FALSE // They're the good guys. + can_speak_aooc = FALSE // Just in case the above var bugs, or gets touched. /datum/antagonist/ert/create_default(var/mob/source) var/mob/living/carbon/human/M = ..() diff --git a/code/game/antagonist/outsider/trader.dm b/code/game/antagonist/outsider/trader.dm index 9603b49523..69af3883b9 100644 --- a/code/game/antagonist/outsider/trader.dm +++ b/code/game/antagonist/outsider/trader.dm @@ -24,7 +24,7 @@ var/datum/antagonist/trader/traders initial_spawn_req = 5 initial_spawn_target = 7 - can_use_aooc = FALSE // They're not real antags. + can_speak_aooc = FALSE // They're not real antags. /datum/antagonist/trader/create_default(var/mob/source) var/mob/living/carbon/human/M = ..() diff --git a/code/game/antagonist/station/renegade.dm b/code/game/antagonist/station/renegade.dm index 6f7ec89322..3e8afae32d 100644 --- a/code/game/antagonist/station/renegade.dm +++ b/code/game/antagonist/station/renegade.dm @@ -17,7 +17,7 @@ var/datum/antagonist/renegade/renegades Think through your actions and make the roleplay immersive! Please remember all \ rules aside from those without explicit exceptions apply to antagonists." flags = ANTAG_SUSPICIOUS | ANTAG_IMPLANT_IMMUNE | ANTAG_RANDSPAWN | ANTAG_VOTABLE - can_use_aooc = FALSE + can_speak_aooc = FALSE // They aren't 'true' antags, but they still need to hear blanket antag instructions hard_cap = 8 hard_cap_round = 12 @@ -61,8 +61,6 @@ var/datum/antagonist/renegade/renegades list(/obj/item/weapon/gun/projectile/luger,/obj/item/weapon/gun/projectile/luger/brown) ) - can_use_aooc = FALSE // They aren't 'true' antags. - /datum/antagonist/renegade/New() ..() renegades = src diff --git a/code/game/antagonist/station/thug.dm b/code/game/antagonist/station/thug.dm index 8810fca7d0..61d92e1646 100644 --- a/code/game/antagonist/station/thug.dm +++ b/code/game/antagonist/station/thug.dm @@ -15,4 +15,4 @@ var/datum/antagonist/thug/thugs Think through your actions and make the roleplay immersive! Please remember all \ rules aside from those with explicit exceptions apply to antagonists." flags = ANTAG_SUSPICIOUS | ANTAG_IMPLANT_IMMUNE | ANTAG_RANDSPAWN | ANTAG_VOTABLE - can_use_aooc = FALSE + can_speak_aooc = FALSE diff --git a/code/game/antagonist/station/traitor.dm b/code/game/antagonist/station/traitor.dm index d0a1f54ed2..3681cf236d 100644 --- a/code/game/antagonist/station/traitor.dm +++ b/code/game/antagonist/station/traitor.dm @@ -5,7 +5,7 @@ var/datum/antagonist/traitor/traitors id = MODE_TRAITOR protected_jobs = list("Security Officer", "Warden", "Detective", "Internal Affairs Agent", "Head of Security", "Colony Director") flags = ANTAG_SUSPICIOUS | ANTAG_RANDSPAWN | ANTAG_VOTABLE - can_use_aooc = FALSE + can_speak_aooc = FALSE // If they want to plot and plan as this sort of traitor, they'll need to do it ICly. /datum/antagonist/traitor/auto id = MODE_AUTOTRAITOR diff --git a/code/modules/admin/verbs/antag-ooc.dm b/code/modules/admin/verbs/antag-ooc.dm index 22689f1718..13c6e6a767 100644 --- a/code/modules/admin/verbs/antag-ooc.dm +++ b/code/modules/admin/verbs/antag-ooc.dm @@ -12,7 +12,7 @@ else if(is_antag && !is_admin) // Is an antag, and not an admin, meaning we need to check if their antag type allows AOOC. var/datum/antagonist/A = get_antag_data(usr.mind.special_role) - if(!A || !A.can_use_aooc) + if(!A || !A.can_speak_aooc || !A.can_hear_aooc) to_chat(usr, "Sorry, but your antagonist type is not allowed to speak in AOOC.") return @@ -36,7 +36,7 @@ var/datum/antagonist/A = null if(M.mind) // Observers don't have minds, but they should still see AOOC. A = get_antag_data(M.mind.special_role) - if((M.mind && M.mind.special_role && A && A.can_use_aooc) || isobserver(M)) // Antags must have their type be allowed to AOOC to see AOOC. This prevents, say, ERT from seeing AOOC. + if((M.mind && M.mind.special_role && A && A.can_hear_aooc) || isobserver(M)) // Antags must have their type be allowed to AOOC to see AOOC. This prevents, say, ERT from seeing AOOC. to_chat(M, "[create_text_tag("aooc", "Antag-OOC:", M.client)] [player_display]: [msg]") log_aooc(msg,src) \ No newline at end of file