Files
LuaCsForBarotraumaEP/Barotrauma/BarotraumaShared/Source/Characters/CauseOfDeath.cs
T
2019-03-18 20:39:27 +02:00

34 lines
1.1 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;
DebugConsole.ThrowError(errorMsg);
GameAnalyticsManager.AddErrorEventOnce("InvalidCauseOfDeath", GameAnalyticsSDK.Net.EGAErrorSeverity.Error, errorMsg);
type = CauseOfDeathType.Unknown;
}
Type = type;
Affliction = affliction;
Killer = killer;
DamageSource = damageSource;
}
}
}