Files
tbd-station-14/Content.Shared/MobState/MobStateChangedEvent.cs
2022-07-06 17:58:14 +10:00

53 lines
1.5 KiB
C#

using Content.Shared.MobState.Components;
namespace Content.Shared.MobState
{
public sealed class MobStateChangedEvent : EntityEventArgs
{
public MobStateChangedEvent(
MobStateComponent component,
DamageState? oldMobState,
DamageState currentMobState)
{
Component = component;
OldMobState = oldMobState;
CurrentMobState = currentMobState;
}
public EntityUid Entity => Component.Owner;
public MobStateComponent Component { get; }
public DamageState? OldMobState { get; }
public DamageState CurrentMobState { get; }
}
public static class A
{
[Obsolete("Just check for the enum value instead")]
public static bool IsAlive(this DamageState state)
{
return state == DamageState.Alive;
}
[Obsolete("Just check for the enum value instead")]
public static bool IsCritical(this DamageState state)
{
return state == DamageState.Critical;
}
[Obsolete("Just check for the enum value instead")]
public static bool IsDead(this DamageState state)
{
return state == DamageState.Dead;
}
[Obsolete("Just check for the enum value instead")]
public static bool IsIncapacitated(this DamageState state)
{
return state is DamageState.Dead or DamageState.Critical;
}
}
}