Files
LuaCsForBarotraumaEP/Barotrauma/BarotraumaShared/SharedSource/Characters/CauseOfDeath.cs
T
Joonas Rikkonen bbf06f0984 v0.10.6.2
2020-10-29 17:55:26 +02:00

34 lines
1.2 KiB
C#

using System;
namespace Barotrauma
{
enum CauseOfDeathType
{
Unknown, Pressure, Suffocation, Drowning, Affliction, Disconnected
}
class CauseOfDeath
{
public readonly CauseOfDeathType Type;
public readonly AfflictionPrefab Affliction;
public readonly Character Killer;
public readonly Entity DamageSource;
public CauseOfDeath(CauseOfDeathType type, AfflictionPrefab affliction, Character killer, Entity damageSource)
{
if (type == CauseOfDeathType.Affliction && affliction == null)
{
string errorMsg = "Invalid cause of death (the type of the cause of death was Affliction, but affliction was not specified).\n" + Environment.StackTrace.CleanupStackTrace();
DebugConsole.ThrowError(errorMsg);
GameAnalyticsManager.AddErrorEventOnce("InvalidCauseOfDeath", GameAnalyticsSDK.Net.EGAErrorSeverity.Error, errorMsg);
type = CauseOfDeathType.Unknown;
}
Type = type;
Affliction = affliction;
Killer = killer;
DamageSource = damageSource;
}
}
}