diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index 3b7903dd57c..a2c47addd33 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -94,7 +94,7 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list( //Silicon mobs #define issilicon(A) (istype(A, /mob/living/silicon)) -#define issiliconoradminghost(A) (istype(A, /mob/living/silicon) || IsAdminGhost(A)) +#define issiliconoradminghost(A) (istype(A, /mob/living/silicon) || isAdminGhostAI(A)) #define iscyborg(A) (istype(A, /mob/living/silicon/robot)) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 1f011b619bb..8c3ecae3e75 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -97,7 +97,7 @@ screen_loc = ui_building /obj/screen/area_creator/Click() - if(usr.incapacitated() || (isobserver(usr) && !IsAdminGhost(usr))) + if(usr.incapacitated() || (isobserver(usr) && !isAdminGhostAI(usr))) return TRUE var/area/A = get_area(usr) if(!A.outdoors) diff --git a/code/_onclick/observer.dm b/code/_onclick/observer.dm index efed103392f..182c33e8cd2 100644 --- a/code/_onclick/observer.dm +++ b/code/_onclick/observer.dm @@ -53,7 +53,7 @@ if(user.client) if(user.gas_scan && atmosanalyzer_scan(user, src)) return TRUE - else if(IsAdminGhost(user)) + else if(isAdminGhostAI(user)) attack_ai(user) else if(user.client.prefs.inquisitive_ghost) user.examinate(src) diff --git a/code/_onclick/other_mobs.dm b/code/_onclick/other_mobs.dm index 6c9e5964ba8..897e574d2da 100644 --- a/code/_onclick/other_mobs.dm +++ b/code/_onclick/other_mobs.dm @@ -38,7 +38,7 @@ //Return a non FALSE value to cancel whatever called this from propagating, if it respects it. /atom/proc/_try_interact(mob/user) - if(IsAdminGhost(user)) //admin abuse + if(isAdminGhostAI(user)) //admin abuse return interact(user) if(can_interact(user)) return interact(user) diff --git a/code/datums/wires/_wires.dm b/code/datums/wires/_wires.dm index 46d1a7261f6..fed0f273e45 100644 --- a/code/datums/wires/_wires.dm +++ b/code/datums/wires/_wires.dm @@ -228,7 +228,7 @@ var/reveal_wires = FALSE // Admin ghost can see a purpose of each wire. - if(IsAdminGhost(user)) + if(isAdminGhostAI(user)) reveal_wires = TRUE // Same for anyone with an abductor multitool. @@ -259,7 +259,7 @@ switch(action) if("cut") I = L.is_holding_tool_quality(TOOL_WIRECUTTER) - if(I || IsAdminGhost(usr)) + if(I || isAdminGhostAI(usr)) if(I && holder) I.play_tool_sound(holder, 20) cut_color(target_wire) @@ -268,7 +268,7 @@ to_chat(L, "You need wirecutters!") if("pulse") I = L.is_holding_tool_quality(TOOL_MULTITOOL) - if(I || IsAdminGhost(usr)) + if(I || isAdminGhostAI(usr)) if(I && holder) I.play_tool_sound(holder, 20) pulse_color(target_wire, L) diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm index 0529bc3ea18..1f9ccb5790b 100644 --- a/code/game/machinery/_machinery.dm +++ b/code/game/machinery/_machinery.dm @@ -256,7 +256,7 @@ Class Procs: if(!silicon || !(interaction_flags_machine & INTERACT_MACHINE_OPEN_SILICON)) return FALSE - if(silicon || IsAdminGhost(user)) // If we are an AI or adminghsot, make sure the machine allows silicons to interact + if(silicon || isAdminGhostAI(user)) // If we are an AI or adminghsot, make sure the machine allows silicons to interact if(!(interaction_flags_machine & INTERACT_MACHINE_ALLOW_SILICON)) return FALSE @@ -354,7 +354,7 @@ Class Procs: /obj/machinery/attack_robot(mob/user) - if(!(interaction_flags_machine & INTERACT_MACHINE_ALLOW_SILICON) && !IsAdminGhost(user)) + if(!(interaction_flags_machine & INTERACT_MACHINE_ALLOW_SILICON) && !isAdminGhostAI(user)) return FALSE if(Adjacent(user) && can_buckle && has_buckled_mobs()) //so that borgs (but not AIs, sadly (perhaps in a future PR?)) can unbuckle people from machines if(buckled_mobs.len > 1) @@ -367,7 +367,7 @@ Class Procs: return _try_interact(user) /obj/machinery/attack_ai(mob/user) - if(!(interaction_flags_machine & INTERACT_MACHINE_ALLOW_SILICON) && !IsAdminGhost(user)) + if(!(interaction_flags_machine & INTERACT_MACHINE_ALLOW_SILICON) && !isAdminGhostAI(user)) return FALSE if(iscyborg(user))// For some reason attack_robot doesn't work return attack_robot(user) diff --git a/code/game/machinery/computer/apc_control.dm b/code/game/machinery/computer/apc_control.dm index b3b2c02a9ea..da589af8cde 100644 --- a/code/game/machinery/computer/apc_control.dm +++ b/code/game/machinery/computer/apc_control.dm @@ -33,7 +33,7 @@ active_apc = null /obj/machinery/computer/apc_control/attack_ai(mob/user) - if(!IsAdminGhost(user)) + if(!isAdminGhostAI(user)) to_chat(user,"[src] does not support AI control.") //You already have APC access, cheater! return ..() diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index 584487a6398..6d9a1c6d52e 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -184,7 +184,7 @@ if(!(active2 in GLOB.data_core.medical)) active2 = null - if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc)) || issilicon(usr) || IsAdminGhost(usr)) + if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc)) || issilicon(usr) || isAdminGhostAI(usr)) usr.set_machine(src) if(href_list["temp"]) temp = null @@ -216,7 +216,7 @@ authenticated = 1 rank = "AI" screen = 1 - else if(IsAdminGhost(M)) + else if(isAdminGhostAI(M)) active1 = null active2 = null authenticated = 1 diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index 305d2f6815f..38796af622c 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -38,7 +38,7 @@ var/mob/living/silicon/S = user if(S.hack_software) data["can_hack"] = TRUE - else if(IsAdminGhost(user)) + else if(isAdminGhostAI(user)) data["can_hack"] = TRUE data["cyborgs"] = list() @@ -105,9 +105,9 @@ to_chat(usr, "Access Denied.") if("magbot") var/mob/living/silicon/S = usr - if((istype(S) && S.hack_software) || IsAdminGhost(usr)) + if((istype(S) && S.hack_software) || isAdminGhostAI(usr)) var/mob/living/silicon/robot/R = locate(params["ref"]) in GLOB.silicon_mobs - if(istype(R) && !R.emagged && (R.connected_ai == usr || IsAdminGhost(usr)) && !R.scrambledcodes && can_control(usr, R)) + if(istype(R) && !R.emagged && (R.connected_ai == usr || isAdminGhostAI(usr)) && !R.scrambledcodes && can_control(usr, R)) log_game("[key_name(usr)] emagged [key_name(R)] using robotic console!") message_admins("[ADMIN_LOOKUPFLW(usr)] emagged cyborg [key_name_admin(R)] using robotic console!") R.SetEmagged(TRUE) diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 864172b0fed..f66abc3431b 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -273,7 +273,7 @@ What a mess.*/ active1 = null if(!( GLOB.data_core.security.Find(active2) )) active2 = null - if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc)) || issilicon(usr) || IsAdminGhost(usr)) + if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc)) || issilicon(usr) || isAdminGhostAI(usr)) usr.set_machine(src) switch(href_list["choice"]) // SORTING! @@ -314,7 +314,7 @@ What a mess.*/ authenticated = borg.name rank = "AI" screen = 1 - else if(IsAdminGhost(M)) + else if(isAdminGhostAI(M)) active1 = null active2 = null authenticated = M.client.holder.admin_signature diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 3ff83aa2a3f..3afca3241a9 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -732,7 +732,7 @@ . = ..() if(.) return - if(!(issilicon(user) || IsAdminGhost(user))) + if(!(issilicon(user) || isAdminGhostAI(user))) if(isElectrified()) if(shock(user, 100)) return @@ -775,7 +775,7 @@ // Otherwise it will runtime with this kind of error: null.Topic() if(!nowindow) ..() - if(!usr.canUseTopic(src) && !IsAdminGhost(usr)) + if(!usr.canUseTopic(src) && !isAdminGhostAI(usr)) return add_fingerprint(usr) @@ -790,7 +790,7 @@ /obj/machinery/door/airlock/attackby(obj/item/C, mob/user, params) - if(!issilicon(user) && !IsAdminGhost(user)) + if(!issilicon(user) && !isAdminGhostAI(user)) if(isElectrified()) if(shock(user, 75)) return @@ -1418,7 +1418,7 @@ . = TRUE /obj/machinery/door/airlock/proc/user_allowed(mob/user) - return (issilicon(user) && canAIControl(user)) || IsAdminGhost(user) + return (issilicon(user) && canAIControl(user)) || isAdminGhostAI(user) /obj/machinery/door/airlock/proc/shock_restore(mob/user) if(!user_allowed(user)) diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 2a8a0f92014..f3746af6f3a 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -919,7 +919,7 @@ locked = FALSE /obj/machinery/turretid/attack_ai(mob/user) - if(!ailock || IsAdminGhost(user)) + if(!ailock || isAdminGhostAI(user)) return attack_hand(user) else to_chat(user, "There seems to be a firewall preventing you from accessing this device!") diff --git a/code/game/machinery/requests_console.dm b/code/game/machinery/requests_console.dm index 783da0c5eaa..b387950a724 100644 --- a/code/game/machinery/requests_console.dm +++ b/code/game/machinery/requests_console.dm @@ -201,7 +201,7 @@ GLOBAL_LIST_EMPTY(req_console_ckey_departments) dat += "
Swipe your card to authenticate yourself

" dat += "Message: [message ? message : "No Message"]
" dat += "[message ? "Edit" : "Write"] Message

" - if ((announceAuth || IsAdminGhost(user)) && message) + if ((announceAuth || isAdminGhostAI(user)) && message) dat += "Announce Message
" else dat += "Announce Message
" diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 12ab2c95e99..d4a15028803 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -137,7 +137,7 @@ if ((M.client && M.machine == src)) is_in_use = TRUE ui_interact(M) - if(issilicon(usr) || IsAdminGhost(usr)) + if(issilicon(usr) || isAdminGhostAI(usr)) if (!(usr in nearby)) if (usr.client && usr.machine==src) // && M.machine == src is omitted because if we triggered this by using the dialog, it doesn't matter if our machine changed in between triggering it and this - the dialog is probably still supposed to refresh. is_in_use = TRUE diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 0f5c96a444f..0290b3d8934 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -759,7 +759,7 @@ GLOBAL_PROTECT(admin_verbs_hideable) set desc = "Allows you to interact with most machines as an AI would as a ghost" AI_Interact = !AI_Interact - if(mob && IsAdminGhost(mob)) + if(mob && isAdminGhostAI(mob)) mob.has_unlimited_silicon_privilege = AI_Interact log_admin("[key_name(usr)] has [AI_Interact ? "activated" : "deactivated"] Admin AI Interact") diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index 318f32df322..dc80805b3e4 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -792,7 +792,7 @@ structure_check() searches for nearby cultist structures required for the invoca notify_ghosts("Manifest rune invoked in [get_area(src)].", 'sound/effects/ghost2.ogg', source = src, header = "Manifest rune") var/list/ghosts_on_rune = list() for(var/mob/dead/observer/O in T) - if(O.client && !is_banned_from(O.ckey, ROLE_CULTIST) && !QDELETED(src) && !(IsAdminGhost(O) && (O.client.prefs.toggles & ADMIN_IGNORE_CULT_GHOST)) && !QDELETED(O)) + if(O.client && !is_banned_from(O.ckey, ROLE_CULTIST) && !QDELETED(src) && !(isAdminGhost(O) && (O.client.prefs.toggles & ADMIN_IGNORE_CULT_GHOST)) && !QDELETED(O)) ghosts_on_rune += O if(!ghosts_on_rune.len) to_chat(user, "There are no spirits near [src]!") diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm index 4b3343a84ff..85a806c72cb 100644 --- a/code/modules/holodeck/computer.dm +++ b/code/modules/holodeck/computer.dm @@ -101,7 +101,7 @@ data["emagged"] = TRUE data["emag_programs"] = emag_programs data["program"] = program - data["can_toggle_safety"] = issilicon(user) || IsAdminGhost(user) + data["can_toggle_safety"] = issilicon(user) || isAdminGhostAI(user) return data diff --git a/code/modules/jobs/access.dm b/code/modules/jobs/access.dm index dad430b96b4..8b15d83e2fa 100644 --- a/code/modules/jobs/access.dm +++ b/code/modules/jobs/access.dm @@ -8,7 +8,7 @@ if(ispAI(M)) return FALSE return TRUE //AI can do whatever it wants - if(IsAdminGhost(M)) + if(isAdminGhostAI(M)) //Access can't stop the abuse return TRUE else if(istype(M) && SEND_SIGNAL(M, COMSIG_MOB_ALLOWED, src)) diff --git a/code/modules/mob/dead/observer/login.dm b/code/modules/mob/dead/observer/login.dm index 6465829f5aa..fa9b3604fad 100644 --- a/code/modules/mob/dead/observer/login.dm +++ b/code/modules/mob/dead/observer/login.dm @@ -7,7 +7,7 @@ ghost_others = client.prefs.ghost_others var/preferred_form = null - if(IsAdminGhost(src)) + if(isAdminGhostAI(src)) has_unlimited_silicon_privilege = 1 if(client.prefs.unlock_content) diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index a8f40388367..b8761b28949 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -790,7 +790,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp update_icon() /mob/dead/observer/canUseTopic(atom/movable/M, be_close=FALSE, no_dexterity=FALSE, no_tk=FALSE) - return IsAdminGhost(usr) + return isAdminGhostAI(usr) /mob/dead/observer/is_literate() return TRUE diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index f6dafe8b1be..69f6acbbb28 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -883,7 +883,7 @@ Pass a positive integer as an argument to override a bot's default speed. log_game("Safety lock of [src] was re-enabled by [key_name(usr)] in [AREACOORD(src)]") bot_reset() if("ejectpai") - if(paicard && (!locked || issilicon(usr) || IsAdminGhost(usr))) + if(paicard && (!locked || issilicon(usr) || isAdminGhostAI(usr))) to_chat(usr, "You eject [paicard] from [bot_name].") ejectpai(usr) update_controls() @@ -910,13 +910,13 @@ Pass a positive integer as an argument to override a bot's default speed. if(emagged == 2) //An emagged bot cannot be controlled by humans, silicons can if one hacked it. if(!hacked) //Manually emagged by a human - access denied to all. return TRUE - else if(!issilicon(user) && !IsAdminGhost(user)) //Bot is hacked, so only silicons and admins are allowed access. + else if(!issilicon(user) && !isAdminGhostAI(user)) //Bot is hacked, so only silicons and admins are allowed access. return TRUE return FALSE /mob/living/simple_animal/bot/proc/hack(mob/user) var/hack - if(issilicon(user) || IsAdminGhost(user)) //Allows silicons or admins to toggle the emag status of a bot. + if(issilicon(user) || isAdminGhostAI(user)) //Allows silicons or admins to toggle the emag status of a bot. hack += "[emagged == 2 ? "Software compromised! Unit may exhibit dangerous or erratic behavior." : "Unit operating normally. Release safety lock?"]
" hack += "Harm Prevention Safety System: [emagged ? "DANGER" : "Engaged"]
" else if(!locked) //Humans with access can use this option to hide a bot from the AI's remote control panel and PDA control. @@ -925,7 +925,7 @@ Pass a positive integer as an argument to override a bot's default speed. /mob/living/simple_animal/bot/proc/showpai(mob/user) var/eject = "" - if((!locked || issilicon(usr) || IsAdminGhost(usr))) + if((!locked || issilicon(usr) || isAdminGhostAI(usr))) if(paicard || allow_pai) eject += "Personality card status: " if(paicard) diff --git a/code/modules/mob/living/simple_animal/bot/cleanbot.dm b/code/modules/mob/living/simple_animal/bot/cleanbot.dm index f33a0c6ae72..9ec194dce53 100644 --- a/code/modules/mob/living/simple_animal/bot/cleanbot.dm +++ b/code/modules/mob/living/simple_animal/bot/cleanbot.dm @@ -397,7 +397,7 @@ Status: [on ? "On" : "Off"]
Behaviour controls are [locked ? "locked" : "unlocked"]
Maintenance panel panel is [open ? "opened" : "closed"]"}) - if(!locked || issilicon(user)|| IsAdminGhost(user)) + if(!locked || issilicon(user)|| isAdminGhostAI(user)) dat += "
Clean Blood: [blood ? "Yes" : "No"]" dat += "
Clean Trash: [trash ? "Yes" : "No"]" dat += "
Clean Graffiti: [drawn ? "Yes" : "No"]" diff --git a/code/modules/mob/living/simple_animal/bot/firebot.dm b/code/modules/mob/living/simple_animal/bot/firebot.dm index 08a4b0b413a..41f8f24420d 100644 --- a/code/modules/mob/living/simple_animal/bot/firebot.dm +++ b/code/modules/mob/living/simple_animal/bot/firebot.dm @@ -111,7 +111,7 @@ dat += "Maintenance panel panel is [open ? "opened" : "closed"]
" dat += "Behaviour controls are [locked ? "locked" : "unlocked"]
" - if(!locked || issilicon(user) || IsAdminGhost(user)) + if(!locked || issilicon(user) || isAdminGhostAI(user)) dat += "Extinguish Fires: [extinguish_fires ? "Yes" : "No"]
" dat += "Extinguish People: [extinguish_people ? "Yes" : "No"]
" dat += "Patrol Station: [auto_patrol ? "Yes" : "No"]
" diff --git a/code/modules/mob/living/simple_animal/bot/floorbot.dm b/code/modules/mob/living/simple_animal/bot/floorbot.dm index 8dadcde3e4a..d825667116d 100644 --- a/code/modules/mob/living/simple_animal/bot/floorbot.dm +++ b/code/modules/mob/living/simple_animal/bot/floorbot.dm @@ -88,7 +88,7 @@ dat += "None Loaded
" dat += "Behaviour controls are [locked ? "locked" : "unlocked"]
" - if(!locked || issilicon(user) || IsAdminGhost(user)) + if(!locked || issilicon(user) || isAdminGhostAI(user)) dat += "Add tiles to new hull plating: [autotile ? "Yes" : "No"]
" dat += "Place floor tiles: [placetiles ? "Yes" : "No"]
" dat += "Replace existing floor tiles with custom tiles: [replacetiles ? "Yes" : "No"]
" diff --git a/code/modules/mob/living/simple_animal/bot/honkbot.dm b/code/modules/mob/living/simple_animal/bot/honkbot.dm index c5c7cf3b0ff..73feb8384a5 100644 --- a/code/modules/mob/living/simple_animal/bot/honkbot.dm +++ b/code/modules/mob/living/simple_animal/bot/honkbot.dm @@ -90,7 +90,7 @@ Maintenance panel panel is [open ? "opened" : "closed"]"}, "[on ? "On" : "Off"]" ) - if(!locked || issilicon(user) || IsAdminGhost(user)) + if(!locked || issilicon(user) || isAdminGhostAI(user)) dat += text({"
Auto Patrol: []"}, "[auto_patrol ? "On" : "Off"]" ) diff --git a/code/modules/mob/living/simple_animal/bot/hygienebot.dm b/code/modules/mob/living/simple_animal/bot/hygienebot.dm index 451c3847894..ed4a8aba02d 100644 --- a/code/modules/mob/living/simple_animal/bot/hygienebot.dm +++ b/code/modules/mob/living/simple_animal/bot/hygienebot.dm @@ -214,7 +214,7 @@ Status: ["[on ? "On" : "Off"]"]
Behaviour controls are [locked ? "locked" : "unlocked"]
Maintenance panel is [open ? "opened" : "closed"]"} - if(!locked || issilicon(user) || IsAdminGhost(user)) + if(!locked || issilicon(user) || isAdminGhostAI(user)) dat += {"
Auto Patrol: ["[auto_patrol ? "On" : "Off"]"]"} return dat.Join("") diff --git a/code/modules/mob/living/simple_animal/bot/medbot.dm b/code/modules/mob/living/simple_animal/bot/medbot.dm index bccb26ae80f..14cf867b889 100644 --- a/code/modules/mob/living/simple_animal/bot/medbot.dm +++ b/code/modules/mob/living/simple_animal/bot/medbot.dm @@ -153,7 +153,7 @@ dat += "Status: [on ? "On" : "Off"]
" dat += "Maintenance panel panel is [open ? "opened" : "closed"]
" dat += "
Behaviour controls are [locked ? "locked" : "unlocked"]
" - if(!locked || issilicon(user) || IsAdminGhost(user)) + if(!locked || issilicon(user) || isAdminGhostAI(user)) dat += "Healing Threshold: " dat += "-- " dat += "- " diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index a330366bcdf..17d93583892 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -366,7 +366,7 @@ dat += "Destination: [!destination ? "none" : destination]
" dat += "Power level: [cell ? cell.percent() : 0]%" - if(locked && !ai && !IsAdminGhost(user)) + if(locked && !ai && !isAdminGhostAI(user)) dat += " 
Controls are locked
Unlock Controls" else dat += " 
Controls are unlocked
Lock Controls

" diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm index 67980964bbe..49d2a91fba1 100644 --- a/code/modules/mob/living/simple_animal/bot/secbot.dm +++ b/code/modules/mob/living/simple_animal/bot/secbot.dm @@ -133,7 +133,7 @@ Maintenance panel panel is [open ? "opened" : "closed"]"}, "[on ? "On" : "Off"]" ) - if(!locked || issilicon(user) || IsAdminGhost(user)) + if(!locked || issilicon(user) || isAdminGhostAI(user)) dat += text({"
Arrest Unidentifiable Persons: []
Arrest for Unauthorized Weapons: []
diff --git a/code/modules/mob/living/simple_animal/bot/vibebot.dm b/code/modules/mob/living/simple_animal/bot/vibebot.dm index 648df275d62..77d39b9431e 100644 --- a/code/modules/mob/living/simple_animal/bot/vibebot.dm +++ b/code/modules/mob/living/simple_animal/bot/vibebot.dm @@ -36,7 +36,7 @@ dat += "Maintenance panel panel is [open ? "opened" : "closed"]
" dat += "Behaviour controls are [locked ? "locked" : "unlocked"]
" - if(!locked || issilicon(user) || IsAdminGhost(user)) + if(!locked || issilicon(user) || isAdminGhostAI(user)) dat += "Patrol Station: [auto_patrol ? "Yes" : "No"]
" return dat.Join("") diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 35c5c004687..e64119cd31d 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -980,7 +980,7 @@ ///Can the mob interact() with an atom? /mob/proc/can_interact_with(atom/A) - return IsAdminGhost(src) || Adjacent(A) + return isAdminGhostAI(src) || Adjacent(A) ///Can the mob use Topic to interact with machines /mob/proc/canUseTopic(atom/movable/M, be_close=FALSE, no_dexterity=FALSE, no_tk=FALSE) diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index de999177cbd..c5a58ae88be 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -421,7 +421,7 @@ to_chat(user, "[affecting] is already in good condition!") ///Is the passed in mob an admin ghost -/proc/IsAdminGhost(var/mob/user) +/proc/isAdminGhost(var/mob/user) if(!user) //Are they a mob? Auto interface updates call this with a null src return if(!user.client) // Do they have a client? @@ -430,6 +430,12 @@ return if(!check_rights_for(user.client, R_ADMIN)) // Are they allowed? return + return TRUE + +///Is the passed in mob an admin ghost WITH AI INTERACT +/proc/isAdminGhostAI(var/mob/user) + if(!isAdminGhost(user)) + return if(!user.client.AI_Interact) // Do they have it enabled? return return TRUE diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm index 7a92ea30b62..dd1a8775fb7 100644 --- a/code/modules/modular_computers/computers/item/computer.dm +++ b/code/modules/modular_computers/computers/item/computer.dm @@ -189,7 +189,7 @@ return if(enabled) ui_interact(user) - else if(IsAdminGhost(user)) + else if(isAdminGhostAI(user)) var/response = alert(user, "This computer is turned off. Would you like to turn it on?", "Admin Override", "Yes", "No") if(response == "Yes") turn_on(user) diff --git a/code/modules/modular_computers/file_system/program.dm b/code/modules/modular_computers/file_system/program.dm index 2a01282e70d..29eb7717ddd 100644 --- a/code/modules/modular_computers/file_system/program.dm +++ b/code/modules/modular_computers/file_system/program.dm @@ -103,7 +103,7 @@ if(!transfer && computer && (computer.obj_flags & EMAGGED)) //emags can bypass the execution locks but not the download ones. return TRUE - if(IsAdminGhost(user)) + if(isAdminGhostAI(user)) return TRUE if(issilicon(user)) diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 247ce4ef186..c690e30e7ee 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -938,7 +938,7 @@ area.power_change() /obj/machinery/power/apc/proc/can_use(mob/user, loud = 0) //used by attack_hand() and Topic() - if(IsAdminGhost(user)) + if(isAdminGhostAI(user)) return TRUE if(user.has_unlimited_silicon_privilege) var/mob/living/silicon/ai/AI = user diff --git a/code/modules/tgui/states.dm b/code/modules/tgui/states.dm index 33f42d5eb21..7147584f7ab 100644 --- a/code/modules/tgui/states.dm +++ b/code/modules/tgui/states.dm @@ -26,7 +26,7 @@ if(isobserver(user)) // If they turn on ghost AI control, admins can always interact. - if(IsAdminGhost(user)) + if(isAdminGhostAI(user)) . = max(., UI_INTERACTIVE) // Regular ghosts can always at least view if in range.