From 7b35a33d58573cde3c06f97b8c27c988212af31e Mon Sep 17 00:00:00 2001 From: SandPoot Date: Wed, 10 Mar 2021 00:33:11 -0300 Subject: [PATCH 1/4] upload machine_interactions.dm --- .../game/machinery/telecomms/machine_interactions.dm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/code/game/machinery/telecomms/machine_interactions.dm b/code/game/machinery/telecomms/machine_interactions.dm index d1c7222485..1a07696998 100644 --- a/code/game/machinery/telecomms/machine_interactions.dm +++ b/code/game/machinery/telecomms/machine_interactions.dm @@ -245,11 +245,13 @@ /obj/machinery/telecomms/proc/canInteract(mob/user) var/get = user.get_active_held_item() var/obj/item/I = get - if(I.tool_behaviour == TOOL_MULTITOOL) - return TRUE + if(!isAI(user)) + if(I.tool_behaviour == TOOL_MULTITOOL) + return TRUE if(hasSiliconAccessInArea(user)) return TRUE return FALSE + // Check if the user is nearby and has a multitool. /obj/machinery/telecomms/proc/canAccess(mob/user) if((canInteract(user) && in_range(user, src)) || hasSiliconAccessInArea(user)) @@ -262,11 +264,11 @@ return null var/obj/item/P = user.get_active_held_item() // Is the ref not a null? and is it the actual type? - if(P.tool_behaviour == TOOL_MULTITOOL) - return P - else if(isAI(user)) + if(isAI(user)) var/mob/living/silicon/ai/U = user P = U.aiMulti + else if(P.tool_behaviour == TOOL_MULTITOOL) + return P else if(iscyborg(user) && in_range(user, src)) var/get = user.get_active_held_item() var/obj/item/I = get From 3b0ebc0b809294ab067d2fb00438109ed9cb4d12 Mon Sep 17 00:00:00 2001 From: SandPoot Date: Wed, 10 Mar 2021 01:03:31 -0300 Subject: [PATCH 2/4] cyborgs were messed up too --- code/game/machinery/telecomms/machine_interactions.dm | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/code/game/machinery/telecomms/machine_interactions.dm b/code/game/machinery/telecomms/machine_interactions.dm index 1a07696998..54e6e83bc9 100644 --- a/code/game/machinery/telecomms/machine_interactions.dm +++ b/code/game/machinery/telecomms/machine_interactions.dm @@ -245,7 +245,7 @@ /obj/machinery/telecomms/proc/canInteract(mob/user) var/get = user.get_active_held_item() var/obj/item/I = get - if(!isAI(user)) + if(!issilicon(user)) if(I.tool_behaviour == TOOL_MULTITOOL) return TRUE if(hasSiliconAccessInArea(user)) @@ -264,14 +264,13 @@ return null var/obj/item/P = user.get_active_held_item() // Is the ref not a null? and is it the actual type? + if(!P) + return null if(isAI(user)) var/mob/living/silicon/ai/U = user P = U.aiMulti + else if(iscyborg(user) && !in_range(user, src)) + return null else if(P.tool_behaviour == TOOL_MULTITOOL) return P - else if(iscyborg(user) && in_range(user, src)) - var/get = user.get_active_held_item() - var/obj/item/I = get - if(I.tool_behaviour == TOOL_MULTITOOL) - I = user.get_active_held_item() return P From 024d0ec6922ebbb4064b988002252ad6fb4cea14 Mon Sep 17 00:00:00 2001 From: SandPoot Date: Wed, 10 Mar 2021 01:18:31 -0300 Subject: [PATCH 3/4] admins should be able to see, and anyone else shouldn't break it, and i probably need sleep --- code/game/machinery/telecomms/machine_interactions.dm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/code/game/machinery/telecomms/machine_interactions.dm b/code/game/machinery/telecomms/machine_interactions.dm index 54e6e83bc9..ce18fcc28e 100644 --- a/code/game/machinery/telecomms/machine_interactions.dm +++ b/code/game/machinery/telecomms/machine_interactions.dm @@ -243,9 +243,10 @@ // Check if the user can use it. /obj/machinery/telecomms/proc/canInteract(mob/user) - var/get = user.get_active_held_item() - var/obj/item/I = get - if(!issilicon(user)) + var/obj/item/I = user.get_active_held_item() + if(!I) + return FALSE + if(!issiliconoradminghost(user)) if(I.tool_behaviour == TOOL_MULTITOOL) return TRUE if(hasSiliconAccessInArea(user)) From 221c059435eaaf372021ed8f836e72d21327633a Mon Sep 17 00:00:00 2001 From: SandPoot Date: Wed, 10 Mar 2021 01:34:25 -0300 Subject: [PATCH 4/4] there's gonna be so many commit logs. hopefully this is the last. --- code/game/machinery/telecomms/machine_interactions.dm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/code/game/machinery/telecomms/machine_interactions.dm b/code/game/machinery/telecomms/machine_interactions.dm index ce18fcc28e..9876206724 100644 --- a/code/game/machinery/telecomms/machine_interactions.dm +++ b/code/game/machinery/telecomms/machine_interactions.dm @@ -244,9 +244,7 @@ // Check if the user can use it. /obj/machinery/telecomms/proc/canInteract(mob/user) var/obj/item/I = user.get_active_held_item() - if(!I) - return FALSE - if(!issiliconoradminghost(user)) + if(!issilicon(user) && I) if(I.tool_behaviour == TOOL_MULTITOOL) return TRUE if(hasSiliconAccessInArea(user)) @@ -265,13 +263,13 @@ return null var/obj/item/P = user.get_active_held_item() // Is the ref not a null? and is it the actual type? - if(!P) - return null if(isAI(user)) var/mob/living/silicon/ai/U = user P = U.aiMulti else if(iscyborg(user) && !in_range(user, src)) return null + if(!P) + return null else if(P.tool_behaviour == TOOL_MULTITOOL) return P return P