From d5f0c10ac3d98c493f45aca2c4954acd3b68fea3 Mon Sep 17 00:00:00 2001 From: AnturK Date: Tue, 1 Aug 2017 13:54:57 +0200 Subject: [PATCH 1/4] Makes cyborg remote interaction limited. --- code/_onclick/cyborg.dm | 3 +-- code/modules/mob/living/silicon/robot/robot.dm | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/code/_onclick/cyborg.dm b/code/_onclick/cyborg.dm index 0fe73bad6ef..b6f612bcda8 100644 --- a/code/_onclick/cyborg.dm +++ b/code/_onclick/cyborg.dm @@ -56,8 +56,7 @@ var/obj/item/W = get_active_held_item() - // Cyborgs have no range-checking unless there is item use - if(!W) + if(!W && get_dist(src,A) <= remote_range) A.attack_robot(src) return diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 7a9269d647e..2874a087422 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -93,6 +93,8 @@ /obj/item/clothing/head/sombrero, /obj/item/clothing/head/witchunter_hat) + var/remote_range = 7 //How far can you interact with machines. + can_buckle = TRUE buckle_lying = FALSE can_ride_typecache = list(/mob/living/carbon/human) From dde9f7f7ac3e5efea05d76c0c239d96820d79dc8 Mon Sep 17 00:00:00 2001 From: AnturK Date: Tue, 1 Aug 2017 14:07:53 +0200 Subject: [PATCH 2/4] Including the shortcuts --- code/_onclick/cyborg.dm | 45 ++++++++++++++++++++++++++++++----------- 1 file changed, 33 insertions(+), 12 deletions(-) diff --git a/code/_onclick/cyborg.dm b/code/_onclick/cyborg.dm index b6f612bcda8..777a50007ae 100644 --- a/code/_onclick/cyborg.dm +++ b/code/_onclick/cyborg.dm @@ -105,38 +105,59 @@ /atom/proc/BorgCtrlShiftClick(mob/living/silicon/robot/user) //forward to human click if not overriden CtrlShiftClick(user) -/obj/machinery/door/airlock/BorgCtrlShiftClick() // Sets/Unsets Emergency Access Override Forwards to AI code. - AICtrlShiftClick() +/obj/machinery/door/airlock/BorgCtrlShiftClick(mob/living/silicon/robot/user) // Sets/Unsets Emergency Access Override Forwards to AI code. + if(get_dist(src,user) <= user.remote_range) + AICtrlShiftClick() + else + ..() /atom/proc/BorgShiftClick(mob/living/silicon/robot/user) //forward to human click if not overriden ShiftClick(user) -/obj/machinery/door/airlock/BorgShiftClick() // Opens and closes doors! Forwards to AI code. - AIShiftClick() +/obj/machinery/door/airlock/BorgShiftClick(mob/living/silicon/robot/user) // Opens and closes doors! Forwards to AI code. + if(get_dist(src,user) <= user.remote_range) + AIShiftClick() + else + ..() /atom/proc/BorgCtrlClick(mob/living/silicon/robot/user) //forward to human click if not overriden CtrlClick(user) -/obj/machinery/door/airlock/BorgCtrlClick() // Bolts doors. Forwards to AI code. - AICtrlClick() +/obj/machinery/door/airlock/BorgCtrlClick(mob/living/silicon/robot/user // Bolts doors. Forwards to AI code. + if(get_dist(src,user) <= user.remote_range) + AICtrlClick() + else + ..() -/obj/machinery/power/apc/BorgCtrlClick() // turns off/on APCs. Forwards to AI code. - AICtrlClick() +/obj/machinery/power/apc/BorgCtrlClick(mob/living/silicon/robot/user) // turns off/on APCs. Forwards to AI code. + if(get_dist(src,user) <= user.remote_range) + AICtrlClick() + else + ..() -/obj/machinery/turretid/BorgCtrlClick() //turret control on/off. Forwards to AI code. - AICtrlClick() +/obj/machinery/turretid/BorgCtrlClick(mob/living/silicon/robot/user) //turret control on/off. Forwards to AI code. + if(get_dist(src,user) <= user.remote_range) + AICtrlClick() + else + ..() /atom/proc/BorgAltClick(mob/living/silicon/robot/user) AltClick(user) return /obj/machinery/door/airlock/BorgAltClick() // Eletrifies doors. Forwards to AI code. - AIAltClick() + if(get_dist(src,user) <= user.remote_range) + AIAltClick() + else + ..() /obj/machinery/turretid/BorgAltClick() //turret lethal on/off. Forwards to AI code. - AIAltClick() + if(get_dist(src,user) <= user.remote_range) + AIAltClick() + else + ..() /* As with AI, these are not used in click code, From 66f316620a696d669c9575e34ae165b49c3e4fb8 Mon Sep 17 00:00:00 2001 From: AnturK Date: Tue, 1 Aug 2017 14:18:29 +0200 Subject: [PATCH 3/4] Whoops --- code/_onclick/cyborg.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/_onclick/cyborg.dm b/code/_onclick/cyborg.dm index 777a50007ae..2ef4e4d6040 100644 --- a/code/_onclick/cyborg.dm +++ b/code/_onclick/cyborg.dm @@ -125,7 +125,7 @@ /atom/proc/BorgCtrlClick(mob/living/silicon/robot/user) //forward to human click if not overriden CtrlClick(user) -/obj/machinery/door/airlock/BorgCtrlClick(mob/living/silicon/robot/user // Bolts doors. Forwards to AI code. +/obj/machinery/door/airlock/BorgCtrlClick(mob/living/silicon/robot/user) // Bolts doors. Forwards to AI code. if(get_dist(src,user) <= user.remote_range) AICtrlClick() else From 855207188633cc8e3341276137f9d18368d52b53 Mon Sep 17 00:00:00 2001 From: AnturK Date: Tue, 1 Aug 2017 14:27:15 +0200 Subject: [PATCH 4/4] Missing parameters --- code/_onclick/cyborg.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/_onclick/cyborg.dm b/code/_onclick/cyborg.dm index 2ef4e4d6040..6ed126cf375 100644 --- a/code/_onclick/cyborg.dm +++ b/code/_onclick/cyborg.dm @@ -147,13 +147,13 @@ AltClick(user) return -/obj/machinery/door/airlock/BorgAltClick() // Eletrifies doors. Forwards to AI code. +/obj/machinery/door/airlock/BorgAltClick(mob/living/silicon/robot/user) // Eletrifies doors. Forwards to AI code. if(get_dist(src,user) <= user.remote_range) AIAltClick() else ..() -/obj/machinery/turretid/BorgAltClick() //turret lethal on/off. Forwards to AI code. +/obj/machinery/turretid/BorgAltClick(mob/living/silicon/robot/user) //turret lethal on/off. Forwards to AI code. if(get_dist(src,user) <= user.remote_range) AIAltClick() else