Unconsciousness.c
class UnconsciousnessMdfr: ModifierBase
{
const int UNCONSIOUSS_COOLDOWN_TIME = 60;//in s
override void Init()
{
m_TrackActivatedTime = false;
m_AnalyticsStatsEnabled = true;
m_ID = eModifiers.MDF_UNCONSCIOUSNESS;
m_TickIntervalInactive = 0.5;
m_TickIntervalActive = 0.5;
}
override bool ActivateCondition(PlayerBase player)
{
if( player.GetHealth("","Shock") <= PlayerConstants.UNCONSCIOUS_THRESHOLD )
{
return true;
}
return false;
}
override void OnActivate(PlayerBase player)
{
DayZPlayerSyncJunctures.SendPlayerUnconsciousness(player, true);
}
override void OnDeactivate(PlayerBase player)
{
player.m_UnconsciousEndTime = g_Game.GetTime();
DayZPlayerSyncJunctures.SendPlayerUnconsciousness(player, false);
}
override string GetDebugText()
{
string text_pulse = "pulse type:"+m_Player.GetPulseType()+"|";
string text_shock = (PlayerConstants.CONSCIOUS_THRESHOLD - m_Player.GetHealth("","Shock")).ToString();
string debug_text = text_pulse + text_shock;
return debug_text;
}
override void OnReconnect(PlayerBase player)
{
}
override bool DeactivateCondition(PlayerBase player)
{
if( player.GetHealth("","Shock") >= PlayerConstants.CONSCIOUS_THRESHOLD && player.GetPulseType() == EPulseType.REGULAR )
{
return true;
}
return false;
}
override void OnTick(PlayerBase player, float deltaT)
{
}
};