From 762dd9a47b9852d5b83e7e1275beb5ef81d0b3db Mon Sep 17 00:00:00 2001 From: Lumipharon Date: Sun, 14 Apr 2024 15:21:49 +1200 Subject: [PATCH] Fire_act consolidation (#15624) --- code/__DEFINES/objects.dm | 3 ++ code/datums/components/harvester.dm | 2 +- code/game/atoms/_atom.dm | 13 ++---- code/game/objects/effects/acid_hole.dm | 5 --- .../objects/effects/decals/Cleanable/fuel.dm | 2 +- .../objects/effects/effect_system/foam.dm | 8 ++-- .../effects/effect_system/particle_effects.dm | 43 ------------------- code/game/objects/items/bodybag.dm | 8 ++-- .../items/explosives/grenades/flares.dm | 2 +- .../items/explosives/grenades/grenade.dm | 2 +- .../explosives/grenades/training_grenade.dm | 2 +- code/game/objects/items/explosives/mine.dm | 4 +- .../objects/items/stacks/sheets/leather.dm | 38 ++++++++-------- code/game/objects/machinery/fire_alarm.dm | 7 +-- code/game/objects/obj_defense.dm | 2 +- code/game/objects/structures/fence.dm | 6 +-- code/game/objects/structures/flora.dm | 13 ++---- code/game/objects/structures/grille.dm | 8 ++-- .../objects/structures/mine_structures.dm | 7 +-- code/game/objects/structures/mineral_doors.dm | 4 +- .../objects/structures/reagent_dispensers.dm | 9 +--- .../stool_bed_chair_nest/xeno_nest.dm | 8 +--- code/game/objects/structures/window.dm | 16 +++---- code/game/objects/structures/xeno.dm | 11 ++--- code/game/shuttle_engines.dm | 3 -- code/game/turfs/floor.dm | 2 +- code/game/turfs/floor_ground.dm | 2 +- code/game/turfs/floor_types.dm | 2 +- code/game/turfs/open_ground.dm | 2 +- code/game/turfs/plating.dm | 2 +- code/game/turfs/snow.dm | 31 ++++++------- code/game/turfs/walls/r_wall.dm | 2 +- code/game/turfs/walls/resin.dm | 4 +- code/game/turfs/walls/wall_types.dm | 4 +- .../kitchen_machinery/griddle.dm | 2 +- code/modules/hydroponics/vines.dm | 6 +-- .../lighting/lighting_mask/lighting_mask.dm | 2 +- code/modules/mob/living/carbon/carbon.dm | 2 +- .../xenomorph/castes/hivemind/hivemind.dm | 2 +- .../xenomorph/castes/ravager/ravager.dm | 2 +- .../living/carbon/xenomorph/damage_procs.dm | 5 +-- .../mob/living/carbon/xenomorph/egg.dm | 5 +-- .../living/carbon/xenomorph/facehuggers.dm | 6 +-- code/modules/mob/living/living_defense.dm | 12 ++---- code/modules/power/lighting.dm | 4 +- code/modules/projectiles/ammunition.dm | 4 +- code/modules/projectiles/guns/flamer.dm | 8 ++-- code/modules/vehicles/mecha/mecha_defense.dm | 2 +- .../vehicles/unmanned/unmanned_vehicle.dm | 7 +-- code/modules/xenomorph/_xeno_structure.dm | 7 +-- code/modules/xenomorph/acidwell.dm | 5 +-- code/modules/xenomorph/trap.dm | 7 +-- code/modules/xenomorph/xeno_turret.dm | 8 +--- 53 files changed, 128 insertions(+), 245 deletions(-) diff --git a/code/__DEFINES/objects.dm b/code/__DEFINES/objects.dm index e66df92b36173..37233470138b7 100644 --- a/code/__DEFINES/objects.dm +++ b/code/__DEFINES/objects.dm @@ -269,3 +269,6 @@ GLOBAL_LIST_INIT(restricted_camera_networks, list( //Those networks can only be //cameras #define SOM_CAMERA_NETWORK "som_camera_network" + +///Burn level applied by lava if it calls fire_act +#define LAVA_BURN_LEVEL 60 diff --git a/code/datums/components/harvester.dm b/code/datums/components/harvester.dm index 21a00167879c7..0dbf7e052378f 100644 --- a/code/datums/components/harvester.dm +++ b/code/datums/components/harvester.dm @@ -224,7 +224,7 @@ if(/datum/reagent/medicine/kelotane) target.apply_damage(weapon.force*0.6, BRUTE, user.zone_selected) - target.flamer_fire_act(10) + target.fire_act(10) if(/datum/reagent/medicine/tramadol) target.apply_damage(weapon.force*0.6, BRUTE, user.zone_selected) diff --git a/code/game/atoms/_atom.dm b/code/game/atoms/_atom.dm index d05a69cddf05b..c140b6c10d529 100644 --- a/code/game/atoms/_atom.dm +++ b/code/game/atoms/_atom.dm @@ -425,14 +425,15 @@ directive is properly returned. contents_explosion(severity, epicenter_dist, impact_range) SEND_SIGNAL(src, COMSIG_ATOM_EX_ACT, severity, epicenter_dist, impact_range) -/atom/proc/fire_act() +///Effects of fire +/atom/proc/fire_act(burn_level) return ///Effects of lava. Return true where we want the lava to keep processing /atom/proc/lava_act() if(resistance_flags & INDESTRUCTIBLE) return FALSE - fire_act() + fire_act(LAVA_BURN_LEVEL) return TRUE /atom/proc/hitby(atom/movable/AM, speed = 5) @@ -457,13 +458,7 @@ directive is properly returned. SEND_SIGNAL(src, COMSIG_CONTENTS_EX_ACT, severity) return //For handling the effects of explosions on contents that would not normally be effected - -///Fire effects from a burning turf. Burn level is the base fire damage being received. -/atom/proc/flamer_fire_act(burnlevel) - return - - -///This proc is called on the location of an atom when the atom is Destroy()'d +//This proc is called on the location of an atom when the atom is Destroy()'d /atom/proc/handle_atom_del(atom/A) SHOULD_CALL_PARENT(TRUE) SEND_SIGNAL(src, COMSIG_ATOM_CONTENTS_DEL, A) diff --git a/code/game/objects/effects/acid_hole.dm b/code/game/objects/effects/acid_hole.dm index 4c14af8cfd327..a07e9c2813cb4 100644 --- a/code/game/objects/effects/acid_hole.dm +++ b/code/game/objects/effects/acid_hole.dm @@ -37,11 +37,6 @@ holed_wall = null return ..() - -/obj/effect/acid_hole/fire_act() - return - - /obj/effect/acid_hole/MouseDrop_T(mob/M, mob/user) . = ..() if(!holed_wall) diff --git a/code/game/objects/effects/decals/Cleanable/fuel.dm b/code/game/objects/effects/decals/Cleanable/fuel.dm index 2f8eab382301f..4fabdd0e0ac04 100644 --- a/code/game/objects/effects/decals/Cleanable/fuel.dm +++ b/code/game/objects/effects/decals/Cleanable/fuel.dm @@ -87,7 +87,7 @@ ignite_fuel(I) log_attack("[key_name(user)] ignites [src] in fuel in [AREACOORD(user)]") -/obj/effect/decal/cleanable/liquid_fuel/flamer_fire_act(burnlevel) +/obj/effect/decal/cleanable/liquid_fuel/fire_act(burn_level) . = ..() ignite_fuel() diff --git a/code/game/objects/effects/effect_system/foam.dm b/code/game/objects/effects/effect_system/foam.dm index 2e427d98f5092..06d461d96714d 100644 --- a/code/game/objects/effects/effect_system/foam.dm +++ b/code/game/objects/effects/effect_system/foam.dm @@ -101,8 +101,8 @@ // foam disolves when heated // except metal foams -/obj/effect/particle_effect/foam/fire_act(exposed_temperature, exposed_volume) - if(!(foam_flags & METAL_FOAM|RAZOR_FOAM) && prob(max(0, exposed_temperature - 475))) +/obj/effect/particle_effect/foam/fire_act(burn_level) + if(!(foam_flags & METAL_FOAM|RAZOR_FOAM) && prob(min(burn_level * 3, 100))) kill_foam() /obj/effect/particle_effect/foam/can_slip() @@ -173,6 +173,6 @@ SMOOTH_GROUP_FOAM_WALL, ) -/obj/structure/foamedmetal/fire_act() //flamerwallhacks go BRRR - take_damage(10, BURN, FIRE) +/obj/structure/foamedmetal/fire_act(burn_level) + take_damage(burn_level, BURN, FIRE) diff --git a/code/game/objects/effects/effect_system/particle_effects.dm b/code/game/objects/effects/effect_system/particle_effects.dm index e05140985ec43..583a6d5b067e7 100644 --- a/code/game/objects/effects/effect_system/particle_effects.dm +++ b/code/game/objects/effects/effect_system/particle_effects.dm @@ -8,49 +8,6 @@ mouse_opacity = MOUSE_OPACITY_TRANSPARENT allow_pass_flags = PASS_LOW_STRUCTURE|PASS_GRILLE|PASS_MOB - //Fire -/obj/effect/particle_effect/fire //Fire that ignites mobs and deletes itself after some time, but doesn't mess with atmos. Good fire flamethrowers and incendiary stuff. - name = "fire" - icon = 'icons/effects/fire.dmi' - icon_state = "3" - var/life = 0.5 //In seconds - mouse_opacity = MOUSE_OPACITY_TRANSPARENT - - -/obj/effect/particle_effect/fire/Initialize(mapload, ...) - . = ..() - - if(!isturf(loc)) - return INITIALIZE_HINT_QDEL - - QDEL_IN(src, life SECONDS) - - var/static/list/connections = list( - COMSIG_ATOM_ENTERED = PROC_REF(on_cross), - ) - AddElement(/datum/element/connect_loc, connections) - - setDir(pick(GLOB.cardinals)) - set_light(1, 3) - - for(var/mob/living/L in loc)//Mobs - L.fire_act() - for(var/obj/alien/weeds/W in loc)//Weeds - W.fire_act() - for(var/obj/alien/egg/E in loc)//Eggs - E.fire_act() - for(var/obj/structure/bed/nest/N in loc)//Nests - N.fire_act() - for(var/turf/open/floor/plating/ground/snow/S in loc)//Snow - S.fire_act() - -/obj/effect/particle_effect/fire/proc/on_cross(datum/source, mob/living/L, oldloc, oldlocs) - SIGNAL_HANDLER - if(isliving(L)) - L.fire_act() - - //End fire - /obj/effect/particle_effect/water name = "water" icon = 'icons/effects/effects.dmi' diff --git a/code/game/objects/items/bodybag.dm b/code/game/objects/items/bodybag.dm index 0b802f8bdf236..2cc937f5b44e8 100644 --- a/code/game/objects/items/bodybag.dm +++ b/code/game/objects/items/bodybag.dm @@ -228,10 +228,10 @@ balloon_alert(bodybag_occupant, "[proj] jolts you out of the bag") open() -/obj/structure/closet/bodybag/flamer_fire_act(burnlevel) +/obj/structure/closet/bodybag/fire_act(burn_level) if(!opened && bodybag_occupant) balloon_alert(bodybag_occupant, "The fire forces you out") - bodybag_occupant.flamer_fire_act(burnlevel) + bodybag_occupant.fire_act(burn_level) open() /obj/structure/closet/bodybag/ex_act(severity) @@ -334,7 +334,7 @@ /obj/structure/closet/bodybag/cryobag/examine(mob/living/user) . = ..() - var/mob/living/carbon/human/occupant = bodybag_occupant + var/mob/living/carbon/human/occupant = bodybag_occupant if(!ishuman(occupant)) return if(!hasHUD(user,"medical")) @@ -361,7 +361,7 @@ . += span_scanner("Patient have [timer] seconds left before DNR") else . += span_scanner("Patient have [timer] seconds left before DNR") - + /obj/structure/closet/bodybag/cryobag/Topic(href, href_list) . = ..() diff --git a/code/game/objects/items/explosives/grenades/flares.dm b/code/game/objects/items/explosives/grenades/flares.dm index 6105a0171df89..7ce8c9a876a6c 100644 --- a/code/game/objects/items/explosives/grenades/flares.dm +++ b/code/game/objects/items/explosives/grenades/flares.dm @@ -23,7 +23,7 @@ . = ..() fuel = rand(lower_fuel_limit, upper_fuel_limit) // Sorry for changing this so much but I keep under-estimating how long X number of ticks last in seconds. -/obj/item/explosive/grenade/flare/flamer_fire_act(burnlevel) +/obj/item/explosive/grenade/flare/fire_act(burn_level) if(!fuel) //it's out of fuel, an empty shell. return if(!active) diff --git a/code/game/objects/items/explosives/grenades/grenade.dm b/code/game/objects/items/explosives/grenades/grenade.dm index 6a9c1c2db90e1..b8f360f1a80a4 100644 --- a/code/game/objects/items/explosives/grenades/grenade.dm +++ b/code/game/objects/items/explosives/grenades/grenade.dm @@ -96,7 +96,7 @@ explosion(loc, light_impact_range = src.light_impact_range, weak_impact_range = src.weak_impact_range) qdel(src) -/obj/item/explosive/grenade/flamer_fire_act(burnlevel) +/obj/item/explosive/grenade/fire_act(burn_level) activate() /obj/item/explosive/grenade/attack_hand(mob/living/user) diff --git a/code/game/objects/items/explosives/grenades/training_grenade.dm b/code/game/objects/items/explosives/grenades/training_grenade.dm index 0a92cee9b4755..b7ede5b4fdc36 100644 --- a/code/game/objects/items/explosives/grenades/training_grenade.dm +++ b/code/game/objects/items/explosives/grenades/training_grenade.dm @@ -15,5 +15,5 @@ det_time = initial(det_time) //these can be modified when fired by UGL throw_range = initial(throw_range) -/obj/item/explosive/grenade/training/flamer_fire_act(burnlevel) +/obj/item/explosive/grenade/training/fire_act(burn_level) return diff --git a/code/game/objects/items/explosives/mine.dm b/code/game/objects/items/explosives/mine.dm index 811c55cc4d88c..1312ea8a35867 100644 --- a/code/game/objects/items/explosives/mine.dm +++ b/code/game/objects/items/explosives/mine.dm @@ -58,7 +58,7 @@ Stepping directly on the mine will also blow it up INVOKE_ASYNC(src, PROC_REF(trigger_explosion)) /// Flamer fire will cause mines to trigger their explosion -/obj/item/explosive/mine/flamer_fire_act(burnlevel) +/obj/item/explosive/mine/fire_act(burn_level) . = ..() INVOKE_ASYNC(src, PROC_REF(trigger_explosion)) @@ -273,5 +273,5 @@ Stepping directly on the mine will also blow it up return INVOKE_ASYNC(src, PROC_REF(trigger_explosion)) -/obj/item/explosive/mine/anti_tank/flamer_fire_act(burnlevel) +/obj/item/explosive/mine/anti_tank/fire_act(burn_level) return //its highly exploitable if fire detonates these diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index b7279d03f79d9..e621cc4df1ac0 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -75,8 +75,8 @@ desc = "This leather has been cleaned but still needs to be dried." singular_name = "wet leather piece" icon_state = "sheet-wetleather" - var/wetness = 30 //Reduced when exposed to high temperautres - var/drying_threshold_temperature = 500 //Kelvin to start drying + ///How damp it is + var/wetness = 30 /obj/item/stack/sheet/leather name = "leather" @@ -109,20 +109,22 @@ //Step two - washing..... it's actually in washing machine code. //Step three - drying -/obj/item/stack/sheet/wetleather/fire_act(exposed_temperature, exposed_volume) - ..() - if(exposed_temperature >= drying_threshold_temperature) - wetness-- - if(wetness == 0) - //Try locating an exisitng stack on the tile and add to there if possible - for(var/obj/item/stack/sheet/leather/HS in src.loc) - if(HS.amount < 50) - HS.amount++ - src.use(1) - wetness = initial(wetness) - break - //If it gets to here it means it did not find a suitable stack on the tile. - var/obj/item/stack/sheet/leather/HS = new(src.loc) - HS.amount = 1 +/obj/item/stack/sheet/wetleather/fire_act(burn_level) + . = ..() + if(!wetness) + return + wetness-- + if(wetness < 0) + return + //Try locating an exisitng stack on the tile and add to there if possible + for(var/obj/item/stack/sheet/leather/leather in loc) + if(leather.amount < 50) + leather.amount++ + use(1) wetness = initial(wetness) - src.use(1) + break + //If it gets to here it means it did not find a suitable stack on the tile. + var/obj/item/stack/sheet/leather/leather = new(loc) + leather.amount = 1 + wetness = initial(wetness) + use(1) diff --git a/code/game/objects/machinery/fire_alarm.dm b/code/game/objects/machinery/fire_alarm.dm index 4c95dc3aed05b..cbaeb8451e446 100644 --- a/code/game/objects/machinery/fire_alarm.dm +++ b/code/game/objects/machinery/fire_alarm.dm @@ -89,9 +89,10 @@ FIRE ALARM if(A.alarm_state_flags & ALARM_WARNING_FIRE) . += mutable_appearance(icon, "fire_o1") -/obj/machinery/firealarm/fire_act(temperature, volume) - if(detecting && (temperature > T0C+200)) - alarm() // added check of detector status here +/obj/machinery/firealarm/fire_act(burn_level) + if(!detecting) + return + alarm() /obj/machinery/firealarm/emp_act(severity) if(prob(50/severity)) diff --git a/code/game/objects/obj_defense.dm b/code/game/objects/obj_defense.dm index afc2bec01882a..e2b764f825737 100644 --- a/code/game/objects/obj_defense.dm +++ b/code/game/objects/obj_defense.dm @@ -72,7 +72,7 @@ return FALSE if(QDELETED(src)) return FALSE - fire_act() + fire_act(LAVA_BURN_LEVEL) return TRUE /obj/hitby(atom/movable/AM, speed = 5) diff --git a/code/game/objects/structures/fence.dm b/code/game/objects/structures/fence.dm index 475bc15bb8bb1..c436556603cfc 100644 --- a/code/game/objects/structures/fence.dm +++ b/code/game/objects/structures/fence.dm @@ -139,10 +139,8 @@ icon = 'icons/obj/smooth_objects/brokenfence.dmi' return ..() -/obj/structure/fence/fire_act(exposed_temperature, exposed_volume) - if(exposed_temperature > T0C + 800) - take_damage(round(exposed_volume / 100), BURN, FIRE) - return ..() +/obj/structure/fence/fire_act(burn_level) + take_damage(burn_level, BURN, FIRE) /obj/structure/fence/broken chance_to_break = 100 diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index 9b8e5742d3f2e..c55a7ba16459d 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -25,13 +25,8 @@ if(prob(10)) qdel(src) - -/obj/structure/flora/flamer_fire_act(burnlevel) - take_damage(burnlevel, BURN, FIRE) - -/obj/structure/flora/fire_act() - take_damage(25, BURN, FIRE) - +/obj/structure/flora/fire_act(burn_level) + take_damage(burn_level, BURN, FIRE) //TREES @@ -103,8 +98,8 @@ qdel(src) -/obj/structure/flora/tree/flamer_fire_act(burnlevel) - take_damage(burnlevel/6, BURN, FIRE) +/obj/structure/flora/tree/fire_act(burn_level) + take_damage(burn_level * 0.3, BURN, FIRE) /obj/structure/flora/tree/update_overlays() diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index dbe4709fcffc5..84ee54d5da60e 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -129,10 +129,10 @@ to_chat(user, span_notice("You place the [WD] on [src].")) WD.update_icon() -/obj/structure/grille/fire_act(exposed_temperature, exposed_volume) - if(obj_integrity > integrity_failure && exposed_temperature > T0C + 1500) - take_damage(1, BURN, FIRE) - return ..() +/obj/structure/grille/fire_act(burn_level) + if(obj_integrity <= integrity_failure) + return + take_damage(1, BURN, FIRE) diff --git a/code/game/objects/structures/mine_structures.dm b/code/game/objects/structures/mine_structures.dm index b8c020005e916..86c586df2b837 100644 --- a/code/game/objects/structures/mine_structures.dm +++ b/code/game/objects/structures/mine_structures.dm @@ -16,11 +16,8 @@ coverage = 85 density = TRUE -/obj/structure/mine_structure/wooden/flamer_fire_act(burnlevel) - take_damage(burnlevel, BURN, FIRE) - -/obj/structure/mine_structure/wooden/fire_act() - take_damage(25, BURN, FIRE) +/obj/structure/mine_structure/wooden/fire_act(burn_level) + take_damage(burn_level, BURN, FIRE) /obj/structure/mine_structure/wooden/support_wall name = "wooden support" diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm index 6c994d67dbfc7..7d94e395e0470 100644 --- a/code/game/objects/structures/mineral_doors.dm +++ b/code/game/objects/structures/mineral_doors.dm @@ -170,8 +170,8 @@ return ..() -/obj/structure/mineral_door/transparent/phoron/fire_act(exposed_temperature, exposed_volume) - if(exposed_temperature > 300) +/obj/structure/mineral_door/transparent/phoron/fire_act(burn_level) + if(burn_level > 30) var/turf/T = get_turf(src) T.ignite(25, 25) diff --git a/code/game/objects/structures/reagent_dispensers.dm b/code/game/objects/structures/reagent_dispensers.dm index 426cd7101abc9..be940f9fbd80a 100644 --- a/code/game/objects/structures/reagent_dispensers.dm +++ b/code/game/objects/structures/reagent_dispensers.dm @@ -193,10 +193,8 @@ explosion(loc, light_impact_range = 2, flame_range = 2) qdel(src) -/obj/structure/reagent_dispensers/fueltank/fire_act(temperature, volume) - if(temperature > T0C+500) - explode() - return ..() +/obj/structure/reagent_dispensers/fueltank/fire_act(burn_level) + explode() /obj/structure/reagent_dispensers/fueltank/Moved(atom/old_loc, movement_dir, forced, list/old_locs) . = ..() @@ -218,9 +216,6 @@ playsound(src, 'sound/effects/glob.ogg', 25, 1) -/obj/structure/reagent_dispensers/fueltank/flamer_fire_act(burnlevel) - explode() - /obj/structure/reagent_dispensers/fueltank/barrel name = "red barrel" desc = "A red fuel barrel" diff --git a/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm b/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm index ac9a808eceadd..57dc7853b9fd4 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm @@ -128,12 +128,8 @@ if(LAZYLEN(buckled_mobs)) . += image("icon_state" = "nest_overlay", "layer" = LYING_MOB_LAYER + 0.1) - -/obj/structure/bed/nest/flamer_fire_act(burnlevel) - take_damage(burnlevel * 2, BURN, FIRE) - -/obj/structure/bed/nest/fire_act() - take_damage(50, BURN, FIRE) +/obj/structure/bed/nest/fire_act(burn_level) + take_damage(burn_level * 2, BURN, FIRE) #undef NEST_RESIST_TIME #undef NEST_UNBUCKLED_COOLDOWN diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 56c2ed4a5bccc..693b825eb4caa 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -265,10 +265,9 @@ else icon_state = "[basestate][junction]" -/obj/structure/window/fire_act(exposed_temperature, exposed_volume) - if(exposed_temperature > T0C + 800) - take_damage(round(exposed_volume / 100), BURN, FIRE) - return ..() +/obj/structure/window/fire_act(burn_level) + if(burn_level > 25) + take_damage(burn_level, BURN, FIRE) /obj/structure/window/GetExplosionBlock(explosion_dir) return (!explosion_dir || ISDIAGONALDIR(dir) || dir & explosion_dir || REVERSE_DIR(dir) & explosion_dir) ? real_explosion_block : 0 @@ -283,10 +282,9 @@ explosion_block = EXPLOSION_BLOCK_PROC real_explosion_block = 2 -/obj/structure/window/phoronbasic/fire_act(exposed_temperature, exposed_volume) - if(exposed_temperature > T0C + 32000) - take_damage(round(exposed_volume / 1000), BURN, FIRE) - return ..() +/obj/structure/window/phoronbasic/fire_act(burn_level) + if(burn_level > 30) + take_damage(burn_level * 0.5, BURN, FIRE) /obj/structure/window/phoronreinforced name = "reinforced phoron window" @@ -299,7 +297,7 @@ explosion_block = EXPLOSION_BLOCK_PROC real_explosion_block = 4 -/obj/structure/window/phoronreinforced/fire_act(exposed_temperature, exposed_volume) +/obj/structure/window/phoronreinforced/fire_act(burn_level) return /obj/structure/window/reinforced diff --git a/code/game/objects/structures/xeno.dm b/code/game/objects/structures/xeno.dm index 8e5b4ea492e3a..c6c3db6cb3e7e 100644 --- a/code/game/objects/structures/xeno.dm +++ b/code/game/objects/structures/xeno.dm @@ -36,8 +36,8 @@ if(obj_flags & CAN_BE_HIT) return I.attack_obj(src, user) -/obj/alien/flamer_fire_act(burnlevel) - take_damage(burnlevel * 2, BURN, FIRE) +/obj/alien/fire_act(burn_level) + take_damage(burn_level * 2, BURN, FIRE) /obj/alien/ex_act(severity) switch(severity) @@ -210,8 +210,8 @@ src.balloon_alert(xeno_attacker, "Destroyed") qdel(src) -/obj/structure/mineral_door/resin/flamer_fire_act(burnlevel) - take_damage(burnlevel * 2, BURN, FIRE) +/obj/structure/mineral_door/resin/fire_act(burn_level) + take_damage(burn_level * 2, BURN, FIRE) /obj/structure/mineral_door/resin/ex_act(severity) switch(severity) @@ -224,9 +224,6 @@ if(EXPLODE_WEAK) take_damage(30, BRUTE, BOMB) -/turf/closed/wall/resin/fire_act() - take_damage(50, BURN, FIRE) - /obj/structure/mineral_door/resin/try_toggle_state(atom/user) if(isxeno(user)) return ..() diff --git a/code/game/shuttle_engines.dm b/code/game/shuttle_engines.dm index 7de0eab0d664e..851f39b2e3ec6 100644 --- a/code/game/shuttle_engines.dm +++ b/code/game/shuttle_engines.dm @@ -15,9 +15,6 @@ resistance_flags = RESIST_ALL layer = WINDOW_LAYER -/obj/structure/shuttle/window/fire_act(exposed_temperature, exposed_volume) - return - /obj/structure/shuttle/engine name = "engine" density = TRUE diff --git a/code/game/turfs/floor.dm b/code/game/turfs/floor.dm index cd693155d7e98..218f6fcf7ef77 100644 --- a/code/game/turfs/floor.dm +++ b/code/game/turfs/floor.dm @@ -42,7 +42,7 @@ break_tile() return ..() -/turf/open/floor/fire_act(exposed_temperature, exposed_volume) +/turf/open/floor/fire_act(burn_level) if(hull_floor) return if(!burnt && prob(5)) diff --git a/code/game/turfs/floor_ground.dm b/code/game/turfs/floor_ground.dm index d10b24388a1da..6b86fdb23f762 100644 --- a/code/game/turfs/floor_ground.dm +++ b/code/game/turfs/floor_ground.dm @@ -11,7 +11,7 @@ /turf/open/floor/plating/ground/burnt_states() return icon_state -/turf/open/floor/plating/ground/fire_act(exposed_temperature, exposed_volume) +/turf/open/floor/plating/ground/fire_act(burn_level) return /turf/open/floor/plating/ground/dirt diff --git a/code/game/turfs/floor_types.dm b/code/game/turfs/floor_types.dm index 6561f58d72292..a81f9b4a77ae6 100644 --- a/code/game/turfs/floor_types.dm +++ b/code/game/turfs/floor_types.dm @@ -178,7 +178,7 @@ /turf/open/floor/mainship/empty/is_weedable() return FALSE -/turf/open/floor/mainship/empty/fire_act(exposed_temperature, exposed_volume) +/turf/open/floor/mainship/empty/fire_act(burn_level) return /turf/open/floor/mainship/empty/attackby(obj/item/I, mob/user, params) //This should fix everything else. No cables, etc diff --git a/code/game/turfs/open_ground.dm b/code/game/turfs/open_ground.dm index 8854410f7e02a..a1a542b5ad1b9 100644 --- a/code/game/turfs/open_ground.dm +++ b/code/game/turfs/open_ground.dm @@ -17,7 +17,7 @@ . = ..() baseturfs = type -/turf/open/ground/fire_act(exposed_temperature, exposed_volume) +/turf/open/ground/fire_act(burn_level) return /turf/open/ground/attackby() //This should fix everything else. No cables, etc diff --git a/code/game/turfs/plating.dm b/code/game/turfs/plating.dm index e9ed80d4f2311..40ccbdeadd5aa 100644 --- a/code/game/turfs/plating.dm +++ b/code/game/turfs/plating.dm @@ -17,7 +17,7 @@ /turf/open/floor/plating/make_plating() return //we don't dig past plating -/turf/open/floor/plating/fire_act(exposed_temperature, exposed_volume) +/turf/open/floor/plating/fire_act(burn_level) if(hull_floor) return if(!burnt && prob(5)) diff --git a/code/game/turfs/snow.dm b/code/game/turfs/snow.dm index 93bedb8102e9d..ecbcf5b72c8b6 100644 --- a/code/game/turfs/snow.dm +++ b/code/game/turfs/snow.dm @@ -19,9 +19,18 @@ update_appearance() update_sides() -// Melting snow -/turf/open/floor/plating/ground/snow/fire_act(exposed_temperature, exposed_volume) - slayer = 0 +/turf/open/floor/plating/ground/snow/fire_act(burn_level) + if(!slayer || !burn_level) + return + + switch(burn_level) + if(1 to 10) + slayer = max(0, slayer - 1) + if(11 to 24) + slayer = max(0, slayer - 2) + if(25 to INFINITY) + slayer = 0 + update_appearance() update_sides() @@ -163,22 +172,6 @@ update_sides() return ..() -//Fire act; fire now melts snow as it should; fire beats ice -/turf/open/floor/plating/ground/snow/flamer_fire_act(burnlevel) - if(!slayer || !burnlevel) //Don't bother if there's no snow to melt or if there's no burn stacks - return - - switch(burnlevel) - if(1 to 10) - slayer = max(0, slayer - 1) - if(11 to 24) - slayer = max(0, slayer - 2) - if(25 to INFINITY) - slayer = 0 - - update_appearance() - update_sides() - /turf/open/floor/plating/ground/snow/proc/acidspray_act() SIGNAL_HANDLER diff --git a/code/game/turfs/walls/r_wall.dm b/code/game/turfs/walls/r_wall.dm index 1b5d130234e2a..3c19c26ee52ae 100644 --- a/code/game/turfs/walls/r_wall.dm +++ b/code/game/turfs/walls/r_wall.dm @@ -84,7 +84,7 @@ /turf/closed/wall/r_wall/prison_unmeltable/ex_act(severity) //Should make it indestructable return -/turf/closed/wall/r_wall/prison_unmeltable/fire_act(exposed_temperature, exposed_volume) +/turf/closed/wall/r_wall/prison_unmeltable/fire_act(burn_level) return /turf/closed/wall/r_wall/prison_unmeltable/attackby(obj/item/I, mob/user, params) //This should fix everything else. No cables, etc diff --git a/code/game/turfs/walls/resin.dm b/code/game/turfs/walls/resin.dm index 31f42cb45cb4a..89cedf62dec7b 100644 --- a/code/game/turfs/walls/resin.dm +++ b/code/game/turfs/walls/resin.dm @@ -30,8 +30,8 @@ return INITIALIZE_HINT_LATELOAD -/turf/closed/wall/resin/flamer_fire_act(burnlevel) - take_damage(burnlevel * 1.25, BURN, FIRE) +/turf/closed/wall/resin/fire_act(burn_level) + take_damage(burn_level * 1.25, BURN, FIRE) /turf/closed/wall/resin/proc/thicken() diff --git a/code/game/turfs/walls/wall_types.dm b/code/game/turfs/walls/wall_types.dm index 50db983377339..34a7a28958ff2 100644 --- a/code/game/turfs/walls/wall_types.dm +++ b/code/game/turfs/walls/wall_types.dm @@ -221,7 +221,7 @@ /turf/closed/wall/sulaco/unmeltable/ex_act(severity) //Should make it indestructable return -/turf/closed/wall/sulaco/unmeltable/fire_act(exposed_temperature, exposed_volume) +/turf/closed/wall/sulaco/unmeltable/fire_act(burn_level) return /turf/closed/wall/sulaco/unmeltable/attackby(obj/item/I, mob/user, params) //This should fix everything else. No cables, etc @@ -238,7 +238,7 @@ /turf/closed/wall/indestructible/ex_act(severity) return -/turf/closed/wall/indestructible/fire_act(exposed_temperature, exposed_volume) +/turf/closed/wall/indestructible/fire_act(burn_level) return /turf/closed/wall/indestructible/attackby(obj/item/I, mob/user, params) diff --git a/code/modules/food_and_drinks/kitchen_machinery/griddle.dm b/code/modules/food_and_drinks/kitchen_machinery/griddle.dm index f40a51729fa0d..c331028706513 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/griddle.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/griddle.dm @@ -111,7 +111,7 @@ for(var/obj/item/griddled_item AS in griddled_objects) if(SEND_SIGNAL(griddled_item, COMSIG_ITEM_GRILLED, src, delta_time) & COMPONENT_HANDLED_GRILLING) continue - griddled_item.fire_act(1000) //Hot hot hot! + griddled_item.fire_act(40) if(prob(10)) visible_message(span_danger("[griddled_item] doesn't seem to be doing too great on the [src]!")) diff --git a/code/modules/hydroponics/vines.dm b/code/modules/hydroponics/vines.dm index ebc6f9b6d531c..157755f12a2de 100644 --- a/code/modules/hydroponics/vines.dm +++ b/code/modules/hydroponics/vines.dm @@ -214,7 +214,7 @@ // Hotspots kill vines. -/obj/effect/plantsegment/fire_act(null, temp, volume) +/obj/effect/plantsegment/fire_act(burn_level) qdel(src) /obj/effect/plantsegment/proc/die() @@ -245,10 +245,6 @@ die() return - -/obj/effect/plantsegment/flamer_fire_act(burnlevel) - qdel(src) - /obj/effect/plant_controller //What this does is that instead of having the grow minimum of 1, required to start growing, the minimum will be 0, diff --git a/code/modules/lighting/lighting_mask/lighting_mask.dm b/code/modules/lighting/lighting_mask/lighting_mask.dm index 6eb5707aafda2..847ccb6443ec6 100644 --- a/code/modules/lighting/lighting_mask/lighting_mask.dm +++ b/code/modules/lighting/lighting_mask/lighting_mask.dm @@ -147,7 +147,7 @@ /atom/movable/lighting_mask/ex_act(severity, target) return -/atom/movable/lighting_mask/fire_act(exposed_temperature, exposed_volume) +/atom/movable/lighting_mask/fire_act(burn_level) return #undef LIGHTING_MASK_SPRITE_SIZE diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 1b9cecd9aacc5..afdb633621345 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -207,7 +207,7 @@ user.dropItemToGround(src, TRUE) return src -/mob/living/carbon/fire_act(exposed_temperature, exposed_volume) +/mob/living/carbon/fire_act(burn_level) . = ..() adjust_bodytemperature(100, 0, BODYTEMP_HEAT_DAMAGE_LIMIT_ONE+10) diff --git a/code/modules/mob/living/carbon/xenomorph/castes/hivemind/hivemind.dm b/code/modules/mob/living/carbon/xenomorph/castes/hivemind/hivemind.dm index f3f9fa7da75ad..21b861f09bdd1 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/hivemind/hivemind.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/hivemind/hivemind.dm @@ -153,7 +153,7 @@ update_action_buttons() handle_weeds_adjacent_removed() -/mob/living/carbon/xenomorph/hivemind/flamer_fire_act(burnlevel) +/mob/living/carbon/xenomorph/hivemind/fire_act(burn_level) return_to_core() to_chat(src, span_xenonotice("We were on top of fire, we got moved to our core.")) diff --git a/code/modules/mob/living/carbon/xenomorph/castes/ravager/ravager.dm b/code/modules/mob/living/carbon/xenomorph/castes/ravager/ravager.dm index 35d88f7ad829c..99eca65eb3a65 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/ravager/ravager.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/ravager/ravager.dm @@ -22,7 +22,7 @@ // *************************************** // *********** Mob overrides // *************************************** -/mob/living/carbon/xenomorph/ravager/flamer_fire_act(burnlevel) +/mob/living/carbon/xenomorph/ravager/fire_act(burn_level) . = ..() if(stat) return diff --git a/code/modules/mob/living/carbon/xenomorph/damage_procs.dm b/code/modules/mob/living/carbon/xenomorph/damage_procs.dm index cd5214f867b7c..fee719b20c527 100644 --- a/code/modules/mob/living/carbon/xenomorph/damage_procs.dm +++ b/code/modules/mob/living/carbon/xenomorph/damage_procs.dm @@ -1,9 +1,6 @@ -/mob/living/carbon/xenomorph/fire_act() +/mob/living/carbon/xenomorph/fire_act(burn_level) if(status_flags & GODMODE) return - return ..() - -/mob/living/carbon/xenomorph/flamer_fire_act(burnlevel) if(xeno_caste.caste_flags & CASTE_FIRE_IMMUNE) return return ..() diff --git a/code/modules/mob/living/carbon/xenomorph/egg.dm b/code/modules/mob/living/carbon/xenomorph/egg.dm index 5654dc4864c81..dcde5a9be30cc 100644 --- a/code/modules/mob/living/carbon/xenomorph/egg.dm +++ b/code/modules/mob/living/carbon/xenomorph/egg.dm @@ -69,10 +69,7 @@ return FALSE return TRUE -/obj/alien/egg/flamer_fire_act(burnlevel) - burst(TRUE) - -/obj/alien/egg/fire_act() +/obj/alien/egg/fire_act(burn_level) burst(TRUE) /obj/alien/egg/ex_act(severity) diff --git a/code/modules/mob/living/carbon/xenomorph/facehuggers.dm b/code/modules/mob/living/carbon/xenomorph/facehuggers.dm index 49bdd92b8239c..9651ebcd92d3b 100644 --- a/code/modules/mob/living/carbon/xenomorph/facehuggers.dm +++ b/code/modules/mob/living/carbon/xenomorph/facehuggers.dm @@ -645,11 +645,7 @@ P.ammo.on_hit_obj(src,P) return TRUE -/obj/item/clothing/mask/facehugger/fire_act(exposed_temperature, exposed_volume) - if(exposed_temperature > 300) - kill_hugger() - -/obj/item/clothing/mask/facehugger/flamer_fire_act(burnlevel) +/obj/item/clothing/mask/facehugger/fire_act(burn_level) kill_hugger() /obj/item/clothing/mask/facehugger/dropped(mob/user) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 8dcb7ea20555a..b894d219705c2 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -181,10 +181,6 @@ if(fire_stacks > 0) adjust_fire_stacks(-1) //the fire is consumed slowly -/mob/living/fire_act() - adjust_fire_stacks(rand(1,2)) - IgniteMob() - /mob/living/lava_act() if(resistance_flags & INDESTRUCTIBLE) return FALSE @@ -200,8 +196,8 @@ IgniteMob() return TRUE -/mob/living/flamer_fire_act(burnlevel) - if(!burnlevel) +/mob/living/fire_act(burn_level) + if(!burn_level) return if(status_flags & (INCORPOREAL|GODMODE)) //Ignore incorporeal/invul targets return @@ -209,13 +205,13 @@ to_chat(src, span_warning("You are untouched by the flames.")) return - take_overall_damage(rand(10, burnlevel), BURN, FIRE, updating_health = TRUE, max_limbs = 4) + take_overall_damage(rand(10, burn_level), BURN, FIRE, updating_health = TRUE, max_limbs = 4) to_chat(src, span_warning("You are burned!")) if(pass_flags & PASS_FIRE) //Pass fire allow to cross fire without being ignited return - adjust_fire_stacks(burnlevel) + adjust_fire_stacks(burn_level) IgniteMob() /mob/living/proc/resist_fire(datum/source) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 1936aae49f370..f2bca83340288 100755 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -105,8 +105,8 @@ if (prob(25)) broken() -/obj/machinery/light/fire_act(exposed_temperature, exposed_volume) - if(prob(max(0, exposed_temperature - 673))) //0% at <400C, 100% at >500C +/obj/machinery/light/fire_act(burn_level) + if(prob(max(0, burn_level * 0.5))) broken() /obj/machinery/light/power_change() diff --git a/code/modules/projectiles/ammunition.dm b/code/modules/projectiles/ammunition.dm index 402276f43088d..35d2ab9c47152 100644 --- a/code/modules/projectiles/ammunition.dm +++ b/code/modules/projectiles/ammunition.dm @@ -211,7 +211,7 @@ caliber = source.caliber default_ammo = source.default_ammo -/obj/item/ammo_magazine/flamer_fire_act(burnlevel) +/obj/item/ammo_magazine/fire_act(burn_level) if(!current_rounds) return explosion(loc, 0, 0, 0, 1, 1, throw_range = FALSE) @@ -464,7 +464,7 @@ Turn() or Shift() as there is virtually no overhead. ~N qdel(AM) //explosion when using flamer procs. -/obj/item/big_ammo_box/flamer_fire_act(burnlevel) +/obj/item/big_ammo_box/fire_act(burn_level) if(!bullet_amount) return explosion(loc, 0, 0, 1, 0, 2, throw_range = FALSE) //blow it up. diff --git a/code/modules/projectiles/guns/flamer.dm b/code/modules/projectiles/guns/flamer.dm index 78dbe81dc5317..62f842b310fed 100644 --- a/code/modules/projectiles/guns/flamer.dm +++ b/code/modules/projectiles/guns/flamer.dm @@ -542,7 +542,7 @@ GLOBAL_LIST_EMPTY(flamer_particles) ///Effects applied to a mob that crosses a burning turf /obj/flamer_fire/proc/on_cross(datum/source, mob/living/M, oldloc, oldlocs) if(istype(M)) - M.flamer_fire_act(burnlevel) + M.fire_act(burnlevel) /obj/flamer_fire/effect_smoke(obj/effect/particle_effect/smoke/S) . = ..() @@ -575,7 +575,7 @@ GLOBAL_LIST_EMPTY(flamer_particles) return for(var/mob/living/C in get_turf(src)) - C.flamer_fire_act(fire_stacks) + C.fire_act(fire_stacks) C.take_overall_damage(fire_damage, BURN, FIRE, updating_health = TRUE) /obj/flamer_fire/proc/updateicon() @@ -613,7 +613,7 @@ GLOBAL_LIST_EMPTY(flamer_particles) qdel(src) return - T.flamer_fire_act(burnlevel) + T.fire_act(burnlevel) var/j = 0 for(var/i in T) @@ -622,7 +622,7 @@ GLOBAL_LIST_EMPTY(flamer_particles) var/atom/A = i if(QDELETED(A)) //The destruction by fire of one atom may destroy others in the same turf. continue - A.flamer_fire_act(burnlevel) + A.fire_act(burnlevel) firelevel -= 2 //reduce the intensity by 2 per tick diff --git a/code/modules/vehicles/mecha/mecha_defense.dm b/code/modules/vehicles/mecha/mecha_defense.dm index 5038e62528179..45a8972e3ee4d 100644 --- a/code/modules/vehicles/mecha/mecha_defense.dm +++ b/code/modules/vehicles/mecha/mecha_defense.dm @@ -150,7 +150,7 @@ equipment_disabled = TRUE set_mouse_pointer() -/obj/vehicle/sealed/mecha/fire_act() //Check if we should ignite the pilot of an open-canopy mech +/obj/vehicle/sealed/mecha/fire_act(burn_level) //Check if we should ignite the pilot of an open-canopy mech . = ..() if(enclosed || mecha_flags & SILICON_PILOT) return diff --git a/code/modules/vehicles/unmanned/unmanned_vehicle.dm b/code/modules/vehicles/unmanned/unmanned_vehicle.dm index 27986490bfcd5..e12d77bdcb444 100644 --- a/code/modules/vehicles/unmanned/unmanned_vehicle.dm +++ b/code/modules/vehicles/unmanned/unmanned_vehicle.dm @@ -284,11 +284,8 @@ /obj/vehicle/unmanned/proc/delete_muzzle_flash() vis_contents -= flash -/obj/vehicle/unmanned/flamer_fire_act(burnlevel) - take_damage(burnlevel / 2, BURN, FIRE) - -/obj/vehicle/unmanned/fire_act() - take_damage(20, BURN, FIRE) +/obj/vehicle/unmanned/fire_act(burn_level) + take_damage(burn_level / 2, BURN, FIRE) /obj/vehicle/unmanned/welder_act(mob/living/user, obj/item/I) return welder_repair_act(user, I, 35, 2 SECONDS, 0, SKILL_ENGINEER_ENGI, 1, 4 SECONDS) diff --git a/code/modules/xenomorph/_xeno_structure.dm b/code/modules/xenomorph/_xeno_structure.dm index 71a6521e981a7..3b400718a86ad 100644 --- a/code/modules/xenomorph/_xeno_structure.dm +++ b/code/modules/xenomorph/_xeno_structure.dm @@ -41,11 +41,8 @@ balloon_alert(user, "You only scrape at it") return TRUE -/obj/structure/xeno/flamer_fire_act(burnlevel) - take_damage(burnlevel / 3, BURN, FIRE) - -/obj/structure/xeno/fire_act() - take_damage(10, BURN, FIRE) +/obj/structure/xeno/fire_act(burn_level) + take_damage(burn_level / 3, BURN, FIRE) /// Destroy the xeno structure when the weed it was on is destroyed /obj/structure/xeno/proc/weed_removed() diff --git a/code/modules/xenomorph/acidwell.dm b/code/modules/xenomorph/acidwell.dm index 628f7e687bb57..361f61ab57ee3 100644 --- a/code/modules/xenomorph/acidwell.dm +++ b/code/modules/xenomorph/acidwell.dm @@ -77,10 +77,7 @@ . += mutable_appearance(icon, "[charges]", alpha = src.alpha) . += emissive_appearance(icon, "[charges]", alpha = src.alpha) -/obj/structure/xeno/acidwell/flamer_fire_act(burnlevel) //Removes a charge of acid, but fire is extinguished - acid_well_fire_interaction() - -/obj/structure/xeno/acidwell/fire_act() //Removes a charge of acid, but fire is extinguished +/obj/structure/xeno/acidwell/fire_act(burn_level) acid_well_fire_interaction() ///Handles fire based interactions with the acid well. Depletes 1 charge if there are any to extinguish all fires in the turf while producing acid smoke. diff --git a/code/modules/xenomorph/trap.dm b/code/modules/xenomorph/trap.dm index c774c78ecf92d..3918b028f63b6 100644 --- a/code/modules/xenomorph/trap.dm +++ b/code/modules/xenomorph/trap.dm @@ -92,12 +92,7 @@ else . += "It's empty." -/obj/structure/xeno/trap/flamer_fire_act(burnlevel) - hugger?.kill_hugger() - trigger_trap() - set_trap_type(null) - -/obj/structure/xeno/trap/fire_act() +/obj/structure/xeno/trap/fire_act(burn_level) hugger?.kill_hugger() trigger_trap() set_trap_type(null) diff --git a/code/modules/xenomorph/xeno_turret.dm b/code/modules/xenomorph/xeno_turret.dm index cfa12a4c6be7c..d5e1d2e9f8572 100644 --- a/code/modules/xenomorph/xeno_turret.dm +++ b/code/modules/xenomorph/xeno_turret.dm @@ -80,12 +80,8 @@ if(EXPLODE_LIGHT) take_damage(300, BRUTE, BOMB) -/obj/structure/xeno/xeno_turret/flamer_fire_act(burnlevel) - take_damage(burnlevel * 2, BURN, FIRE) - ENABLE_BITFIELD(resistance_flags, ON_FIRE) - -/obj/structure/xeno/xeno_turret/fire_act() - take_damage(60, BURN, FIRE) +/obj/structure/xeno/xeno_turret/fire_act(burn_level) + take_damage(burn_level * 2, BURN, FIRE) ENABLE_BITFIELD(resistance_flags, ON_FIRE) /obj/structure/xeno/xeno_turret/update_overlays()