1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- class BurningMdfr: ModifierBase
- {
- private const float BURNING_TRESHOLD = 199;
- private const float HEALTH_DECREMENT_PER_SEC = -5;
-
- override void Init()
- {
- m_TrackActivatedTime = false;
- m_ID = eModifiers.MDF_BURNING;
- m_TickIntervalInactive = DEFAULT_TICK_TIME_INACTIVE;
- m_TickIntervalActive = DEFAULT_TICK_TIME_ACTIVE;
- }
- override bool ActivateCondition(PlayerBase player)
- {
- float hc = player.GetStatHeatComfort().Get();
- if ( hc > BURNING_TRESHOLD )
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- override void OnActivate(PlayerBase player)
- {
- //Print("My face is melting!");
- }
- override bool DeactivateCondition(PlayerBase player)
- {
- if ( player.GetStatHeatComfort().Get() <= BURNING_TRESHOLD )
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- override void OnTick(PlayerBase player, float deltaT)
- {
- float currenthealth = player.GetHealth("GlobalHealth", "Health");
- player.SetHealth("GlobalHealth", "Health" , ( currenthealth + (HEALTH_DECREMENT_PER_SEC*deltaT) ) );
- //player.GetStatTemperature().Set( player.GetStatTemperature().GetMax() );
- }
- };
|