From c393d222486cbae57f5e88a13e67f4a16799b0b8 Mon Sep 17 00:00:00 2001 From: Erki Date: Sun, 17 Sep 2017 02:24:54 +0300 Subject: [PATCH] aooc for paperwork nerds (#3481) The Head Admins decreed, the code shall follow. Also fixes a bug where mods/CCIAA get AOOC removed whenever they de-antag. --- code/game/antagonist/antagonist.dm | 4 +++- code/game/antagonist/antagonist_add.dm | 6 +++--- code/modules/admin/admin_verbs.dm | 3 ++- code/modules/admin/verbs/antag-ooc.dm | 4 ++-- html/changelogs/skull132-CCIAA_AOOC.yml | 6 ++++++ 5 files changed, 16 insertions(+), 7 deletions(-) create mode 100644 html/changelogs/skull132-CCIAA_AOOC.yml diff --git a/code/game/antagonist/antagonist.dm b/code/game/antagonist/antagonist.dm index 05cdfc65877..f5a5871edf3 100644 --- a/code/game/antagonist/antagonist.dm +++ b/code/game/antagonist/antagonist.dm @@ -218,6 +218,8 @@ if(flags & ANTAG_OVERRIDE_JOB) player.assigned_role = null player.special_role = null - player.current.client.verbs -= /client/proc/aooc + + if (!check_rights(R_ADMIN|R_MOD|R_CCIAA, 0, player.current)) + player.current.client.verbs -= /client/proc/aooc pending_antagonists.Cut() candidates.Cut() diff --git a/code/game/antagonist/antagonist_add.dm b/code/game/antagonist/antagonist_add.dm index 9f9c828b59a..b7c1937d4d9 100644 --- a/code/game/antagonist/antagonist_add.dm +++ b/code/game/antagonist/antagonist_add.dm @@ -14,9 +14,9 @@ create_antagonist(player, move_to_spawn, do_not_announce, preserve_appearance) if(!do_not_equip) equip(player.current) - + player.current.faction = faction - + return 1 /datum/antagonist/proc/add_antagonist_mind(var/datum/mind/player, var/ignore_role, var/nonstandard_role_type, var/nonstandard_role_msg) @@ -61,7 +61,7 @@ update_icons_removed(player) BITSET(player.current.hud_updateflag, SPECIALROLE_HUD) - if (!is_special_character(player) && !player.current.client.holder) + if (!is_special_character(player) && !check_rights(R_ADMIN|R_MOD|R_CCIAA, 0, player.current)) player.current.client.verbs -= /client/proc/aooc return 1 diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 115670ff268..0fd2e59bd16 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -374,7 +374,8 @@ var/list/admin_verbs_cciaa = list( /client/proc/returntobody, /client/proc/view_duty_log, /datum/admins/proc/create_admin_fax, - /client/proc/check_fax_history + /client/proc/check_fax_history, + /client/proc/aooc ) /client/proc/add_admin_verbs() diff --git a/code/modules/admin/verbs/antag-ooc.dm b/code/modules/admin/verbs/antag-ooc.dm index 8374292bba3..948c4e3585c 100644 --- a/code/modules/admin/verbs/antag-ooc.dm +++ b/code/modules/admin/verbs/antag-ooc.dm @@ -3,7 +3,7 @@ set name = "AOOC" set desc = "Antagonist OOC" - if (istype(src.mob, /mob/dead/observer) && !check_rights(R_ADMIN|R_MOD, 0)) + if (istype(src.mob, /mob/dead/observer) && !check_rights(R_ADMIN|R_MOD|R_CCIAA, 0)) src << "You cannot use AOOC while ghosting/observing!" return @@ -22,7 +22,7 @@ display_name = holder.fakekey for(var/mob/M in mob_list) - if (check_rights(R_ADMIN|R_MOD, 0, M)) + if (check_rights(R_ADMIN|R_MOD|R_CCIAA, 0, M)) M << "" + create_text_tag("aooc", "Antag-OOC:", M.client) + " [get_options_bar(src, 0, 1, 1)](JMP): [msg]" else if (M.mind && M.mind.special_role && M.client) M << "" + create_text_tag("aooc", "Antag-OOC:", M.client) + " [display_name]: [msg]" diff --git a/html/changelogs/skull132-CCIAA_AOOC.yml b/html/changelogs/skull132-CCIAA_AOOC.yml new file mode 100644 index 00000000000..dcec671873d --- /dev/null +++ b/html/changelogs/skull132-CCIAA_AOOC.yml @@ -0,0 +1,6 @@ +author: Skull132 + +delete-after: true + +changes: + - tweak: "CCIAA now have full access to AOOC, as per the decree of the Head Admins."