From 9bc6ee7bb56b5cf7efee2ef480ec5e0dde86247a Mon Sep 17 00:00:00 2001
From: SkyratBot <59378654+SkyratBot@users.noreply.github.com>
Date: Sun, 21 Feb 2021 15:17:12 +0100
Subject: [PATCH] [MIRROR] improves fire extinguisher code, and makes fire
extinguisher water go through machinery, lockers, and crates (#3560)
* improves fire extinguisher code, and makes fire extinguisher water go through machinery, lockers, and crates (#57004)
* improves fire extinguisher code, and makes fire extinguisher water go through machinery, lockers, and crates
Co-authored-by: Tlaltecuhtli <33834933+Tlaltecuhtli@users.noreply.github.com>
---
code/__DEFINES/flags.dm | 1 +
code/datums/status_effects/buffs.dm | 4 ++--
code/game/machinery/doors/door.dm | 1 +
code/game/objects/effects/effect_system/effects_water.dm | 3 +--
code/modules/projectiles/projectile/beams.dm | 2 +-
code/modules/projectiles/projectile/bullets/rifle.dm | 2 +-
6 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm
index 37c4c514b39..970c305db00 100644
--- a/code/__DEFINES/flags.dm
+++ b/code/__DEFINES/flags.dm
@@ -137,6 +137,7 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204
#define PASSMACHINE (1<<7)
#define PASSSTRUCTURE (1<<8)
#define PASSFLAPS (1<<9)
+#define PASSDOORS (1<<10)
//Movement Types
#define GROUND (1<<0)
diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm
index 84c315993b1..4ed5b63aacc 100644
--- a/code/datums/status_effects/buffs.dm
+++ b/code/datums/status_effects/buffs.dm
@@ -380,13 +380,13 @@
. = ..()
to_chat(owner,"You phase through reality, nothing is out of bounds!")
owner.alpha = 180
- owner.pass_flags |= PASSCLOSEDTURF | PASSGLASS | PASSGRILLE | PASSMACHINE | PASSSTRUCTURE | PASSTABLE | PASSMOB
+ owner.pass_flags |= PASSCLOSEDTURF | PASSGLASS | PASSGRILLE | PASSMACHINE | PASSSTRUCTURE | PASSTABLE | PASSMOB | PASSDOORS
location = get_turf(owner)
/datum/status_effect/crucible_soul/on_remove()
to_chat(owner,"You regain your physicality, returning you to your original location...")
owner.alpha = initial(owner.alpha)
- owner.pass_flags &= ~(PASSCLOSEDTURF | PASSGLASS | PASSGRILLE | PASSMACHINE | PASSSTRUCTURE | PASSTABLE | PASSMOB)
+ owner.pass_flags &= ~(PASSCLOSEDTURF | PASSGLASS | PASSGRILLE | PASSMACHINE | PASSSTRUCTURE | PASSTABLE | PASSMOB | PASSDOORS)
owner.forceMove(location)
location = null
return ..()
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index d8ed7824d6b..e30b1207881 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -10,6 +10,7 @@
move_resist = MOVE_FORCE_VERY_STRONG
layer = OPEN_DOOR_LAYER
power_channel = AREA_USAGE_ENVIRON
+ pass_flags_self = PASSDOORS
max_integrity = 350
armor = list(MELEE = 30, BULLET = 30, LASER = 20, ENERGY = 20, BOMB = 10, BIO = 100, RAD = 100, FIRE = 80, ACID = 70)
CanAtmosPass = ATMOS_PASS_DENSITY
diff --git a/code/game/objects/effects/effect_system/effects_water.dm b/code/game/objects/effects/effect_system/effects_water.dm
index 2742b22d911..060a889232f 100644
--- a/code/game/objects/effects/effect_system/effects_water.dm
+++ b/code/game/objects/effects/effect_system/effects_water.dm
@@ -3,6 +3,7 @@
/obj/effect/particle_effect/water
name = "water"
icon_state = "extinguish"
+ pass_flags = PASSTABLE | PASSMACHINE | PASSSTRUCTURE | PASSGRILLE
var/life = 15
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
@@ -15,8 +16,6 @@
if (--src.life < 1)
qdel(src)
return FALSE
- if(newloc.density)
- return FALSE
return ..()
/obj/effect/particle_effect/water/Bump(atom/A)
diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm
index 01790928a0a..090d70cac70 100644
--- a/code/modules/projectiles/projectile/beams.dm
+++ b/code/modules/projectiles/projectile/beams.dm
@@ -77,7 +77,7 @@
damage = 15
irradiate = 300
range = 15
- pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE | PASSCLOSEDTURF | PASSMACHINE | PASSSTRUCTURE
+ pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE | PASSCLOSEDTURF | PASSMACHINE | PASSSTRUCTURE | PASSDOORS
impact_effect_type = /obj/effect/temp_visual/impact_effect/green_laser
light_color = LIGHT_COLOR_GREEN
diff --git a/code/modules/projectiles/projectile/bullets/rifle.dm b/code/modules/projectiles/projectile/bullets/rifle.dm
index 095eb713225..2b0ccbf228e 100644
--- a/code/modules/projectiles/projectile/bullets/rifle.dm
+++ b/code/modules/projectiles/projectile/bullets/rifle.dm
@@ -11,7 +11,7 @@
icon_state = "gaussphase"
damage = 20
armour_penetration = 70
- pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE | PASSCLOSEDTURF | PASSMACHINE | PASSSTRUCTURE
+ pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE | PASSCLOSEDTURF | PASSMACHINE | PASSSTRUCTURE | PASSDOORS
// 7.62 (Nagant Rifle)