Files
Bubberstation/code/game/objects/effects/effect_system/effects_water.dm
T
SkyratBot f9a1562e1b [MIRROR] Fix blazing oil not being damaged by sprayed water (#5619)
* Fix blazing oil not being damaged by sprayed water (#58992)

🆑 coiax
fix: Blazing Oil blobs can now be damaged by sprayed water from fire
extinguishers, as intended.
/🆑

Because the mechanism of how the water damages the blob has changed, the
extinguish damage has been increased, otherwise you had to empty a fire
extinguisher to kill even one single blob tile.

* Fix blazing oil not being damaged by sprayed water

Co-authored-by: coiax <yellowbounder@gmail.com>
2021-05-12 10:23:45 +01:00

59 lines
1.6 KiB
Plaintext

//WATER EFFECTS
/obj/effect/particle_effect/water
name = "water"
icon_state = "extinguish"
pass_flags = PASSTABLE | PASSMACHINE | PASSSTRUCTURE | PASSGRILLE | PASSBLOB
var/life = 15
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
/obj/effect/particle_effect/water/Initialize()
. = ..()
QDEL_IN(src, 70)
/obj/effect/particle_effect/water/Move(turf/newloc)
if (--src.life < 1)
qdel(src)
return FALSE
return ..()
/obj/effect/particle_effect/water/Bump(atom/A)
if(reagents)
reagents.expose(A)
if(A.reagents)
A.reagents.expose_temperature(-25)
return ..()
/////////////////////////////////////////////
// GENERIC STEAM SPREAD SYSTEM
//Usage: set_up(number of bits of steam, use North/South/East/West only, spawn location)
// The attach(atom/atom) proc is optional, and can be called to attach the effect
// to something, like a smoking beaker, so then you can just call start() and the steam
// will always spawn at the items location, even if it's moved.
/* Example:
*var/datum/effect_system/steam_spread/steam = new /datum/effect_system/steam_spread() -- creates new system
*steam.set_up(5, 0, mob.loc) -- sets up variables
*OPTIONAL: steam.attach(mob)
*steam.start() -- spawns the effect
*/
/////////////////////////////////////////////
/obj/effect/particle_effect/steam
name = "steam"
icon_state = "extinguish"
density = FALSE
/obj/effect/particle_effect/steam/Initialize()
. = ..()
QDEL_IN(src, 20)
/datum/effect_system/steam_spread
effect_type = /obj/effect/particle_effect/steam
/obj/effect/particle_effect/water/Bump(atom/A)
if(A.reagents && reagents)
A.reagents.expose_temperature(reagents.chem_temp)