From 18ceb599502d19a478e3ef720b098b50a28e7163 Mon Sep 17 00:00:00 2001 From: warior4356 Date: Mon, 2 Nov 2020 20:03:35 -0800 Subject: [PATCH] Resolves edge case with defile and knock --- code/datums/spells/knock.dm | 2 +- .../miniantags/revenant/revenant_abilities.dm | 2 +- .../objects/structures/crates_lockers/crates.dm | 15 ++++++++------- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/code/datums/spells/knock.dm b/code/datums/spells/knock.dm index e4c652ae1d3..139d20d813c 100644 --- a/code/datums/spells/knock.dm +++ b/code/datums/spells/knock.dm @@ -28,7 +28,7 @@ if(istype(C, /obj/structure/closet/secure_closet)) var/obj/structure/closet/secure_closet/SC = C SC.locked = 0 - C.open() + C.open(TRUE) /obj/effect/proc_holder/spell/aoe_turf/knock/greater name = "Greater Knock" diff --git a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm index 47e5e759c77..d1da3289001 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm @@ -261,7 +261,7 @@ if(window && window.fulltile) new/obj/effect/temp_visual/revenant/cracks(window.loc) for(var/obj/structure/closet/closet in T.contents) - closet.open() + closet.open(TRUE) if(!istype(T, /turf/simulated/floor/plating) && !istype(T, /turf/simulated/floor/engine/cult) && istype(T, /turf/simulated/floor) && prob(15)) var/turf/simulated/floor/floor = T diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index cf66a3397ae..b21b304a1f3 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -28,18 +28,19 @@ /obj/structure/closet/crate/can_close() return TRUE -/obj/structure/closet/crate/open() +/obj/structure/closet/crate/open(irregular_open = FALSE) if(src.opened) return FALSE if(!src.can_open()) return FALSE - for(var/obj/O in src) - if(O.density) - var/response = alert(usr, "This crate has been packed with bluespace compression, an item inside won't fit back inside. Are you sure you want to open it?","Bluespace Compression Warning", "No", "Yes") - if(response == "No") - return FALSE - break + if(!irregular_open) + for(var/obj/O in src) + if(O.density) + var/response = alert(usr, "This crate has been packed with bluespace compression, an item inside won't fit back inside. Are you sure you want to open it?","Bluespace Compression Warning", "No", "Yes") + if(response == "No") + return FALSE + break if(rigged && locate(/obj/item/radio/electropack) in src) if(isliving(usr))