From 9b5ed1f9e1a5c53fcea03c0ec712b3b9b9f271a3 Mon Sep 17 00:00:00 2001 From: Toastical <20125180+Toastical@users.noreply.github.com> Date: Tue, 14 Apr 2026 02:32:23 +0300 Subject: [PATCH] fix ore bag pickups for cyborgs (#31867) --- code/game/objects/items/storage/storage_base.dm | 6 ++++++ code/game/turfs/simulated/floor/asteroid_floors.dm | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/storage/storage_base.dm b/code/game/objects/items/storage/storage_base.dm index 1b85ae1dace..e7ff87198dc 100644 --- a/code/game/objects/items/storage/storage_base.dm +++ b/code/game/objects/items/storage/storage_base.dm @@ -583,12 +583,18 @@ if(isrobot(user)) return //Robots can't interact with storage items. + try_insert_item(I, user) + +/// Checks if an item can be inserted, then insertsit. Riveting, I know. +/// Mostly exists to bypass the robot restriction for using storage (for like ore bags). +/obj/item/storage/proc/try_insert_item(obj/item/I, mob/user) if(!can_be_inserted(I)) if(length(contents) >= storage_slots) //don't use items on the backpack if they don't fit return TRUE return FALSE handle_item_insertion(I, user) + return TRUE /obj/item/storage/attack_hand(mob/user) if(ishuman(user)) diff --git a/code/game/turfs/simulated/floor/asteroid_floors.dm b/code/game/turfs/simulated/floor/asteroid_floors.dm index f1120c23e29..f0ea61a27de 100644 --- a/code/game/turfs/simulated/floor/asteroid_floors.dm +++ b/code/game/turfs/simulated/floor/asteroid_floors.dm @@ -64,7 +64,7 @@ if(S.pickup_all_on_tile) for(var/obj/item/stack/ore/O in contents) - S.attackby__legacy__attackchain(O, user) + S.try_insert_item(O, user) return /turf/simulated/floor/plating/asteroid/item_interaction(mob/living/user, obj/item/used, list/modifiers)