Severely nerf fires and severely buff fire protection (#5396)

* Make fires do less damage

* Severely nerf fires and severely buff temperature protection

* fuck it, i'll nerf it so hard and we can buff it later if we decide

* new scaling func

* fix

* unused

* reviews + balance metabolism heat + reduce atmos air temp transfer efficiency

* little more balance

* just a wee bit more

* slight adjustment
This commit is contained in:
mirrorcult
2021-11-18 23:08:30 -07:00
committed by GitHub
parent a724292023
commit 07024f7c77
17 changed files with 179 additions and 84 deletions

View File

@@ -2,8 +2,6 @@ using System;
using Content.Server.Alert;
using Content.Server.Atmos.Components;
using Content.Server.Stunnable;
using Content.Server.Stunnable.Components;
using Content.Server.Temperature.Components;
using Content.Server.Temperature.Systems;
using Content.Shared.ActionBlocker;
using Content.Shared.Alert;
@@ -11,7 +9,6 @@ using Content.Shared.Atmos;
using Content.Shared.Damage;
using Content.Shared.Interaction;
using Content.Shared.Popups;
using Content.Shared.Stunnable;
using Content.Shared.Temperature;
using Robust.Server.GameObjects;
using Robust.Shared.GameObjects;
@@ -25,7 +22,6 @@ namespace Content.Server.Atmos.EntitySystems
internal sealed class FlammableSystem : EntitySystem
{
[Dependency] private readonly ActionBlockerSystem _actionBlockerSystem = default!;
[Dependency] private readonly DamageableSystem _damageableSystem = default!;
[Dependency] private readonly AtmosphereSystem _atmosphereSystem = default!;
[Dependency] private readonly StunSystem _stunSystem = default!;
[Dependency] private readonly TemperatureSystem _temperatureSystem = default!;
@@ -209,11 +205,7 @@ namespace Content.Server.Atmos.EntitySystems
if (flammable.FireStacks > 0)
{
_temperatureSystem.ReceiveHeat(uid, 200 * flammable.FireStacks);
// TODO ATMOS Fire resistance from armor
var damageScale = Math.Min((int) (flammable.FireStacks * 2.5f), 10);
_damageableSystem.TryChangeDamage(uid, flammable.Damage * damageScale);
_temperatureSystem.ChangeHeat(uid, 80000 * flammable.FireStacks);
AdjustFireStacks(uid, -0.1f * (flammable.Resisting ? 10f : 1f), flammable);
}
else