improve ignite logs (#18669)
This commit is contained in:
@@ -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();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user