4 const float DAMAGE_TICK_RATE = 10;
12 super.OnEnterServerEvent( insider );
20 playerInsider.GetModifiersManager().ActivateModifier(
eModifiers.MDF_AREAEXPOSURE );
27 creature.IncreaseEffectTriggerCount();
35 super.OnLeaveServerEvent( insider );
41 if ( playerInsider && !
m_Manager.IsPlayerInTriggerType( playerInsider,
this ) )
43 playerInsider.GetModifiersManager().DeactivateModifier(
eModifiers.MDF_AREAEXPOSURE );
50 creature.DecreaseEffectTriggerCount();
57 super.OnEnterClientEvent( insider );
62 super.OnLeaveClientEvent( insider );
69 if (m_TimeAccuStay > DAMAGE_TICK_RATE)
71 m_DealDamageFlag =
true;
82 m_DealDamageFlag =
false;
88 if ( m_DealDamageFlag )
91 if(creature && creature.m_EffectTriggerCount != 0)
98 return "ContaminatedArea_SoundSet";
110 RegisterNetSyncVariableInt(
"m_AreaState");
130 if ( playerInsider.IsControlledPlayer() )
133 if ( !
m_Manager.IsPlayerInTriggerType( playerInsider,
this ) )
137 if ( nonDefaultState )
140 int localPartBirthRate;
142 localPartBirthRate = 20;
144 localPartBirthRate = 10;
146 playerInsider.SetContaminatedEffectEx(
true,
m_PPERequester, m_AroundPartId, m_TinyPartId, GetAmbientSoundsetName(), nonDefaultState, localPartBirthRate );
149 playerInsider.SetContaminatedEffectEx(
true,
m_PPERequester, m_AroundPartId, m_TinyPartId, GetAmbientSoundsetName() );
153 m_Manager.OnPlayerEnter( playerInsider,
this );
160 super.OnVariablesSynchronized();
163 for (
int i = 0; i < GetInsiders().Count(); i++ )
168 if ( playerInsider.IsControlledPlayer() )
172 if ( nonDefaultState )
174 int localPartBirthRate;
176 localPartBirthRate = 20;
178 localPartBirthRate = 10;
181 playerInsider.SetContaminatedEffectEx(
true,
m_PPERequester, m_AroundPartId, m_TinyPartId, GetAmbientSoundsetName(), nonDefaultState, localPartBirthRate );
override void OnEnterClientEvent(TriggerInsider insider)
PPERequester_PainBlur m_PPERequester
void ContaminatedTrigger_Dynamic()
class ContaminatedTrigger extends EffectTrigger m_AreaState
void SetAreaState(int state)
override void OnVariablesSynchronized()
ModifiersManager m_Manager
do not process rotations !
override void OnStayServerEvent(TriggerInsider insider, float deltaTime)
override void OnStayStartServerEvent(int nrOfInsiders)
override void OnStayFinishServerEvent()
override void OnLeaveClientEvent(TriggerInsider insider)
override string GetAmbientSoundsetName()
override void OnEnterServerEvent(TriggerInsider insider)
override void OnLeaveServerEvent(TriggerInsider insider)
override void OnEnterClientEvent(TriggerInsider insider)
static TriggerEffectManager GetInstance()
The object which is in a trigger and its metadata.
const float AI_CONTAMINATION_DMG_PER_SEC