diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index a14e87ebf47..a6d2005483c 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -107,11 +107,6 @@ var/obj/mecha/M = loc return M.click_action(A, src, params) - if(isturf(A)) - var/turf/clicked_turf = A - for(var/obj/machinery/door/AL in clicked_turf.contents) - AL.try_to_activate_door(src) - if(isclowncar(loc) && !modifiers["shift"]) var/obj/tgvehicle/sealed/car/clowncar/cc = loc return cc.fire_cannon_at(A, src, params) @@ -141,6 +136,13 @@ update_inv_r_hand() return + if(isturf(A) && !W) + var/turf/clicked_turf = A + for(var/obj/machinery/door/AL in clicked_turf.contents) + if(!Adjacent(AL) || restrained()) + continue + AL.try_to_activate_door(src) + // operate three levels deep here (item in backpack in src; item in box in backpack in src, not any deeper) if(A in direct_access()) if(W)