Merge pull request #10962 from Core0verload/weneedtogodeeper

Removes some annoying inventory tetris with storages in storages
This commit is contained in:
Remie Richards
2015-08-03 17:15:11 +01:00
3 changed files with 13 additions and 12 deletions
+3 -3
View File
@@ -90,8 +90,8 @@
update_inv_r_hand(0)
return
// operate two levels deep here (item in backpack in src; NOT item in box in backpack in src)
if(!isturf(A) && A == loc || (A in contents) || (A.loc in contents))
// operate three levels deep here (item in backpack in src; item in box in backpack in src, not any deeper)
if(!isturf(A) && A == loc || (A in contents) || (A.loc in contents) || (A.loc && (A.loc.loc in contents)))
// No adjacency needed
if(W)
var/resolved = A.attackby(W,src)
@@ -323,4 +323,4 @@
else
var/turf/T = screen_loc2turf(modifiers["screen-loc"], get_turf(usr))
T.Click(location, control, params)
return 1
return 1
@@ -1,8 +1,8 @@
// To clarify:
// For use_to_pickup and allow_quick_gather functionality,
// see item/attackby() (/game/objects/items.dm)
// Do not remove this functionality without good reason, cough reagent_containers cough.
// -Sayu
// External storage-related logic:
// /mob/proc/ClickOn() in /_onclick/click.dm - clicking items in storages
// /mob/living/Move() in /modules/mob/living/living.dm - hiding storage boxes on mob movement
// /item/attackby() in /game/objects/items.dm - use_to_pickup and allow_quick_gather functionality
// -- c0
/obj/item/weapon/storage
@@ -42,11 +42,11 @@
show_to(M)
return
if(!( M.restrained() ) && !( M.stat ))
if(!( istype(over_object, /obj/screen) ))
if(!M.restrained() && !M.stat)
if(!istype(over_object, /obj/screen))
return content_can_dump(over_object, M)
if(!(loc == usr) || (loc && loc.loc == usr))
if(loc != usr || (loc && loc.loc == usr))
return
playsound(loc, "rustle", 50, 1, -5)
+2 -1
View File
@@ -570,7 +570,8 @@ Sorry Giacom. Please don't be mad :(
else
stop_pulling()
. = ..()
if ((s_active && !( s_active in contents ) ))
if (s_active && !(s_active in contents) && !(s_active.loc in contents))
// It's ugly. But everything related to inventory/storage is. -- c0
s_active.close(src)
for(var/mob/living/simple_animal/slime/M in oview(1,src))