From 0ad9e8b2e748af2cc95ccceb43d457ef0b3a0d83 Mon Sep 17 00:00:00 2001 From: Guti <32563288+TheCaramelion@users.noreply.github.com> Date: Tue, 18 Feb 2025 10:06:02 +0100 Subject: [PATCH] Fire announcement for Engineering (#10194) --- code/game/machinery/fire_alarm.dm | 2 ++ modular_chomp/code/ZAS/Fire.dm | 6 +++--- modular_chomp/code/modules/event/electrical_fire.dm | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/code/game/machinery/fire_alarm.dm b/code/game/machinery/fire_alarm.dm index 88f23e3e9d..6beee860fa 100644 --- a/code/game/machinery/fire_alarm.dm +++ b/code/game/machinery/fire_alarm.dm @@ -228,6 +228,8 @@ FIRE ALARM if(!(working)) return var/area/area = get_area(src) + if(!firewarn && !alarms_hidden) // CHOMPAdd + global_announcer.autosay("Tripped [area]", "Fire Alarm Monitor", DEPARTMENT_ENGINEERING) for(var/obj/machinery/firealarm/FA in area) fire_alarm.triggerAlarm(loc, FA, duration, hidden = alarms_hidden) FA.soundloop.start() // CHOMPEdit: Soundloop diff --git a/modular_chomp/code/ZAS/Fire.dm b/modular_chomp/code/ZAS/Fire.dm index 0584006202..413ca78a12 100644 --- a/modular_chomp/code/ZAS/Fire.dm +++ b/modular_chomp/code/ZAS/Fire.dm @@ -89,7 +89,7 @@ if(air_contents.temperature < FIRE_MAX_TEMP) // May as well limit this var/starting_energy = air_contents.temperature * air_contents.heat_capacity() if(starting_energy > 0) - air_contents.temperature = min((starting_energy + vsc.fire_fuel_energy_release * (gas_exchange * 1.05)) / air_contents.heat_capacity(), FIRE_MAX_TEMP) + air_contents.temperature = min((starting_energy + vsc.fire_fuel_energy_release * (gas_exchange * 1.025)) / air_contents.heat_capacity(), FIRE_MAX_TEMP) air_contents.update_values() // Affect contents @@ -122,12 +122,12 @@ firelevel /= 2 continue - if(firelevel >= 0.15 && prob(60) && my_tile.CanPass(src, enemy_tile) && enemy_tile.CanPass(src, my_tile)) + if(firelevel >= 0.15 && prob(20) && my_tile.CanPass(src, enemy_tile) && enemy_tile.CanPass(src, my_tile)) var/splitrate = 0.85 enemy_tile.lingering_fire(firelevel * splitrate) firelevel -= (1 - splitrate) - else if(prob(20)) + else if(prob(10)) enemy_tile.adjacent_fire_act(loc, air_contents, air_contents.temperature, air_contents.volume) var/total_oxidizers = 0 diff --git a/modular_chomp/code/modules/event/electrical_fire.dm b/modular_chomp/code/modules/event/electrical_fire.dm index fce62d3275..e59018d285 100644 --- a/modular_chomp/code/modules/event/electrical_fire.dm +++ b/modular_chomp/code/modules/event/electrical_fire.dm @@ -44,7 +44,7 @@ sparks.start() var/turf/T = get_turf(M) - T.lingering_fire(0.6) + T.lingering_fire(0.3) var/area/A = get_area(T) log_admin("Electrical event: [M] in [A] caught fire.")