From 5567c99a44ff6ef512c4689f14569db7b454e90d Mon Sep 17 00:00:00 2001 From: Krausus Date: Sat, 9 May 2015 02:25:38 -0400 Subject: [PATCH] Adds drag-drop emptying to all containers Also, fixes several missing checks and a facing mistake. --- code/game/objects/items/weapons/storage/storage.dm | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm index e705521954d..db813980846 100644 --- a/code/game/objects/items/weapons/storage/storage.dm +++ b/code/game/objects/items/weapons/storage/storage.dm @@ -38,11 +38,19 @@ show_to(M) return - if((allow_quick_empty || allow_quick_gather) && istype(over_object, /obj/structure/table) \ - && contents.len && over_object.Adjacent(usr)) + if ((istype(over_object, /obj/structure/table) || istype(over_object, /turf/simulated/floor)) \ + && contents.len && loc == usr && !usr.stat && !usr.restrained() && over_object.Adjacent(usr) \ + && !istype(src, /obj/item/weapon/storage/lockbox)) var/turf/T = get_turf(over_object) + if (istype(over_object, /turf/simulated/floor)) + if (get_turf(usr) != T) + return // Can only empty containers onto the floor under you + if("Yes" != alert(usr,"Empty \the [src] onto \the [T]?","Confirm","Yes","No")) + return + if(!(usr && over_object && contents.len && loc == usr && !usr.stat && !usr.restrained() && get_turf(usr) == T)) + return // Something happened while the player was thinking hide_from(usr) - usr.face_atom(src) + usr.face_atom(over_object) usr.visible_message("[usr] empties \the [src] onto \the [over_object].", "You empty \the [src] onto \the [over_object].") for(var/obj/item/I in contents)