diff --git a/code/game/dna/dna_modifier.dm b/code/game/dna/dna_modifier.dm index 9ba8346fdcd..9c88b3931f2 100644 --- a/code/game/dna/dna_modifier.dm +++ b/code/game/dna/dna_modifier.dm @@ -253,9 +253,16 @@ return ..() /obj/machinery/dna_scannernew/crowbar_act(mob/user, obj/item/I) - if(default_deconstruction_crowbar(user, I)) - for(var/obj/thing in contents) // in case there is something in the scanner - thing.forceMove(loc) + if(!panel_open) + return + . = TRUE + if(!I.use_tool(src, user, 0, volume = I.tool_volume)) + return + if(flags & NODECONSTRUCT)//We need to check for this early or the contents could be moved before it checks for the flag normally + return + for(var/obj/thing in contents) // in case there is something in the scanner + thing.forceMove(loc) + default_deconstruction_crowbar(user, I) /obj/machinery/dna_scannernew/screwdriver_act(mob/user, obj/item/I) if(occupant)