4 const float DAMAGE_TICK_RATE = 10;
12 super.OnEnterServerEvent( insider );
19 creature.IncreaseEffectTriggerCount();
26 super.OnLeaveServerEvent( insider );
33 creature.DecreaseEffectTriggerCount();
40 super.OnEnterClientEvent( insider );
45 super.OnLeaveClientEvent( insider );
51 m_TimeAccuStay += m_DeltaTime;
52 if (m_TimeAccuStay > DAMAGE_TICK_RATE)
54 m_DealDamageFlag =
true;
65 m_DealDamageFlag =
false;
71 if ( m_DealDamageFlag )
74 if(creature && creature.m_EffectTriggerCount != 0)
75 creature.DecreaseHealth(
"",
"",
GameConstants.AI_CONTAMINATION_DMG_PER_SEC * m_TimeAccuStay / creature.m_EffectTriggerCount);
79 override string GetAmbientSoundsetName()
81 return "ContaminatedArea_SoundSet";
93 RegisterNetSyncVariableInt(
"m_AreaState");
110 if ( insider.GetObject().IsMan() )
115 if ( playerInsider.IsControlledPlayer() )
119 if ( nonDefaultState )
122 int localPartBirthRate;
124 localPartBirthRate = 20;
126 localPartBirthRate = 10;
128 playerInsider.RequestTriggerEffect(
this,
m_PPERequester, m_AroundPartId, m_TinyPartId, GetAmbientSoundsetName(), nonDefaultState, localPartBirthRate );
131 playerInsider.RequestTriggerEffect(
this,
m_PPERequester, m_AroundPartId, m_TinyPartId, GetAmbientSoundsetName() );
140 super.OnVariablesSynchronized();
143 for (
int i = 0; i < GetInsiders().Count(); i++ )
148 if ( playerInsider.IsControlledPlayer() )
152 if ( nonDefaultState )
154 int localPartBirthRate;
156 localPartBirthRate = 20;
158 localPartBirthRate = 10;
161 playerInsider.RequestTriggerEffect(
this,
m_PPERequester, m_AroundPartId, m_TinyPartId, GetAmbientSoundsetName(), nonDefaultState, localPartBirthRate, true );
173 override string GetAmbientSoundsetName()