1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- class PainKillersMdfr : ModifierBase
- {
- const int LIFETIME = 240;
- const int ACTIVATION_DELAY = 15;
- override void Init()
- {
- m_TrackActivatedTime = true;
- m_AnalyticsStatsEnabled = true;
- m_IsPersistent = true;
- m_ID = eModifiers.MDF_PAINKILLERS;
- m_TickIntervalInactive = DEFAULT_TICK_TIME_INACTIVE;
- m_TickIntervalActive = 1;
- DisableActivateCheck();
- }
- override bool ActivateCondition(PlayerBase player)
- {
- return false;
- }
-
- override void OnReconnect(PlayerBase player)
- {
- OnActivate(player);
- }
-
- override string GetDebugText()
- {
- return (LIFETIME - GetAttachedTime()).ToString();
- }
- override void OnActivate(PlayerBase player)
- {
- if (player.GetBrokenLegs() != eBrokenLegs.NO_BROKEN_LEGS)
- player.m_ShockHandler.SetMultiplier(0.5);//was 0.75 //Switch the shock multiplier NEED A CONST
- player.IncreaseHealingsCount();
- m_Player.m_InjuryHandler.m_ForceInjuryAnimMask = m_Player.m_InjuryHandler.m_ForceInjuryAnimMask | eInjuryOverrides.PAIN_KILLERS_LVL0;
- }
-
- override void OnDeactivate(PlayerBase player)
- {
- if (player.GetBrokenLegs() != eBrokenLegs.NO_BROKEN_LEGS)
- player.m_ShockHandler.SetMultiplier(1); //Reset the shock multiplier when modifier stops
- player.DecreaseHealingsCount();
- m_Player.m_InjuryHandler.m_ForceInjuryAnimMask = m_Player.m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.PAIN_KILLERS_LVL0;
- m_Player.m_InjuryHandler.m_ForceInjuryAnimMask = m_Player.m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.PAIN_KILLERS_LVL1;
- }
-
- override bool DeactivateCondition(PlayerBase player)
- {
- float attached_time = GetAttachedTime();
-
- if (attached_time >= LIFETIME)
- return true;
- return false;
- }
- override void OnTick(PlayerBase player, float deltaT)
- {
- if (GetAttachedTime() > ACTIVATION_DELAY)
- {
- m_Player.m_InjuryHandler.m_ForceInjuryAnimMask = m_Player.m_InjuryHandler.m_ForceInjuryAnimMask | eInjuryOverrides.PAIN_KILLERS_LVL1;
- }
- }
- }
|