Makes objects blocking air restore airflow in /atom/Destroy (#39210)

This commit is contained in:
AnturK
2018-07-21 06:28:57 -04:00
committed by Emmett Gaines
parent 7700abd00a
commit 72e9cea3b6
12 changed files with 13 additions and 48 deletions
+3 -3
View File
@@ -64,9 +64,9 @@
CanAtmosPass = ATMOS_PASS_DENSITY
/obj/structure/alien/resin/New(location)
..()
air_update_turf(1)
/obj/structure/alien/resin/Initialize(mapload)
. = ..()
air_update_turf(TRUE)
/obj/structure/alien/resin/Move()
var/turf/T = loc
@@ -38,11 +38,6 @@
. = ..()
AddComponent(/datum/component/rad_insulation, RAD_MEDIUM_INSULATION)
/obj/structure/falsewall/Destroy()
density = FALSE
air_update_turf(1)
return ..()
/obj/structure/falsewall/ratvar_act()
new /obj/structure/falsewall/brass(loc)
qdel(src)
-5
View File
@@ -83,11 +83,6 @@
. = ..()
air_update_turf(TRUE)
/obj/structure/holosign/barrier/atmos/Destroy()
var/turf/T = get_turf(src)
. = ..()
T.air_update_turf(TRUE)
/obj/structure/holosign/barrier/cyborg
name = "Energy Field"
desc = "A fragile energy field that blocks movement. Excels at blocking lethal projectiles."
@@ -30,11 +30,6 @@
/obj/structure/mineral_door/ComponentInitialize()
AddComponent(/datum/component/rad_insulation, RAD_MEDIUM_INSULATION)
/obj/structure/mineral_door/Destroy()
density = FALSE
air_update_turf(1)
return ..()
/obj/structure/mineral_door/Move()
var/turf/T = loc
. = ..()
+5 -6
View File
@@ -11,9 +11,6 @@
CanAtmosPass = ATMOS_PASS_DENSITY
/obj/structure/statue/Initialize()
. = ..()
/obj/structure/statue/attackby(obj/item/W, mob/living/user, params)
add_fingerprint(user)
user.changeNext_move(CLICK_CD_MELEE)
@@ -116,8 +113,7 @@
/obj/structure/statue/plasma/bullet_act(obj/item/projectile/Proj)
var/burn = FALSE
if(!(Proj.nodamage) && Proj.damage_type == BURN)
PlasmaBurn(2500)
if(!(Proj.nodamage) && Proj.damage_type == BURN && !QDELETED(src))
burn = TRUE
if(burn)
var/turf/T = get_turf(src)
@@ -127,10 +123,11 @@
else
message_admins("Plasma statue ignited by [Proj]. No known firer, in [ADMIN_VERBOSEJMP(T)]")
log_game("Plasma statue ignited by [Proj] in [AREACOORD(T)]. No known firer.")
PlasmaBurn(2500)
..()
/obj/structure/statue/plasma/attackby(obj/item/W, mob/user, params)
if(W.is_hot() > 300)//If the temperature of the object is over 300, then ignite
if(W.is_hot() > 300 && !QDELETED(src))//If the temperature of the object is over 300, then ignite
var/turf/T = get_turf(src)
message_admins("Plasma statue ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_VERBOSEJMP(T)]")
log_game("Plasma statue ignited by [key_name(user)] in [AREACOORD(T)]")
@@ -139,6 +136,8 @@
return ..()
/obj/structure/statue/plasma/proc/PlasmaBurn(exposed_temperature)
if(QDELETED(src))
return
atmos_spawn_air("plasma=[oreAmount*10];TEMP=[exposed_temperature]")
deconstruct(FALSE)