improve ignite logs (#18669)

This commit is contained in:
Chief-Engineer
2023-08-04 21:18:09 -05:00
committed by GitHub
parent 4b8ec304d8
commit bfa3989011
6 changed files with 22 additions and 17 deletions

View File

@@ -74,7 +74,7 @@ namespace Content.Server.Atmos.EntitySystems
continue;
flammable.FireStacks += component.FireStacks;
Ignite(entity, flammable);
Ignite(entity, args.Weapon, flammable, args.User);
}
}
@@ -94,7 +94,7 @@ namespace Content.Server.Atmos.EntitySystems
return;
flammable.FireStacks += component.FireStacks;
Ignite(otherEnt, flammable);
Ignite(otherEnt, uid, flammable);
component.Count--;
if (component.Count == 0)
@@ -125,7 +125,7 @@ namespace Content.Server.Atmos.EntitySystems
if (!isHotEvent.IsHot)
return;
Ignite(uid, flammable);
Ignite(uid, args.Used, flammable, args.User);
args.Handled = true;
}
@@ -156,14 +156,14 @@ namespace Content.Server.Atmos.EntitySystems
{
flammable.FireStacks /= 2;
otherFlammable.FireStacks += flammable.FireStacks;
Ignite(otherUid, otherFlammable);
Ignite(otherUid, uid, otherFlammable);
}
}
else if (otherFlammable.OnFire)
{
otherFlammable.FireStacks /= 2;
flammable.FireStacks += otherFlammable.FireStacks;
Ignite(uid, flammable);
Ignite(uid, otherUid, flammable);
}
}
@@ -227,14 +227,18 @@ namespace Content.Server.Atmos.EntitySystems
UpdateAppearance(uid, flammable);
}
public void Ignite(EntityUid uid, FlammableComponent? flammable = null)
public void Ignite(EntityUid uid, EntityUid ignitionSource, FlammableComponent? flammable = null,
EntityUid? ignitionSourceUser = null)
{
if (!Resolve(uid, ref flammable))
return;
if (flammable.FireStacks > 0 && !flammable.OnFire)
{
_adminLogger.Add(LogType.Flammable, $"{ToPrettyString(flammable.Owner):entity} is on fire");
if (ignitionSourceUser != null)
_adminLogger.Add(LogType.Flammable, $"{ToPrettyString(uid):target} set on fire by {ToPrettyString(ignitionSourceUser.Value):actor} with {ToPrettyString(ignitionSource):tool}");
else
_adminLogger.Add(LogType.Flammable, $"{ToPrettyString(uid):target} set on fire by {ToPrettyString(ignitionSource):actor}");
flammable.OnFire = true;
}
@@ -272,11 +276,12 @@ namespace Content.Server.Atmos.EntitySystems
// 100 -> 1, 200 -> 2, 400 -> 3...
var fireStackMod = Math.Max(MathF.Log2(deltaTemp / 100) + 1, 0);
var fireStackDelta = fireStackMod - flammable.FireStacks;
var flammableEntity = flammable.Owner;
if (fireStackDelta > 0)
{
AdjustFireStacks(flammable.Owner, fireStackDelta, flammable);
AdjustFireStacks(flammableEntity, fireStackDelta, flammable);
}
Ignite(flammable.Owner, flammable);
Ignite(flammableEntity, flammableEntity, flammable);
}
_fireEvents.Clear();