From cd2f7ed397d23ff3fbb7b19255603c9e05b01dc0 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Thu, 11 Feb 2021 01:05:49 +0100 Subject: [PATCH] [MIRROR] fix modular id console telekinesis+ai (#3276) * fix modular id console telekinesis+ai (#56787) * fix modular id console telekinesis+ai Co-authored-by: Fhaxaris --- .../modules/modular_computers/file_system/programs/card.dm | 2 +- code/modules/modular_computers/hardware/card_slot.dm | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/code/modules/modular_computers/file_system/programs/card.dm b/code/modules/modular_computers/file_system/programs/card.dm index 37629269292..8bc3db57576 100644 --- a/code/modules/modular_computers/file_system/programs/card.dm +++ b/code/modules/modular_computers/file_system/programs/card.dm @@ -161,7 +161,7 @@ else var/obj/item/I = user.get_active_held_item() if(istype(I, /obj/item/card/id)) - return card_slot2.try_insert(I) + return card_slot2.try_insert(I, user) return FALSE if("PRG_terminate") if(!computer || !authenticated) diff --git a/code/modules/modular_computers/hardware/card_slot.dm b/code/modules/modular_computers/hardware/card_slot.dm index 9139eee0b03..b90547ac21d 100644 --- a/code/modules/modular_computers/hardware/card_slot.dm +++ b/code/modules/modular_computers/hardware/card_slot.dm @@ -47,6 +47,11 @@ if(stored_card) return FALSE + + // item instead of player is checked so telekinesis will still work if the item itself is close + if(!in_range(src, I)) + return FALSE + if(user) if(!user.transferItemToLoc(I, src)) return FALSE @@ -68,7 +73,7 @@ to_chat(user, "There are no cards in \the [src].") return FALSE - if(user) + if(user && !issilicon(user) && in_range(src, user)) user.put_in_hands(stored_card) else stored_card.forceMove(drop_location())