11 protected float m_InnerDistance;
13 protected int m_TriggerUpdateMs;
15 void AreaDamageTrigger()
21 m_AreaDamageType =
null;
27 m_TriggerUpdateMs = 100;
34 if (
Class.CastTo(obj, other))
45 super.SetExtents(mins, maxs);
50 super.SetAreaDamageManager( adType );
57 super.SetAreaDamageManager( adType );
59 m_AreaDamageType = adType;
62 override void OnEnter(
Object obj )
66 if (
GetGame().IsServer() && m_AreaDamageType )
67 m_AreaDamageType.OnEnter( obj );
70 override void OnLeave(
Object obj )
74 if (
GetGame().IsServer() && m_AreaDamageType )
75 m_AreaDamageType.OnLeave( obj );
82 for (
int n = 0; n < m_insiders.Count(); )
85 if ( ins.GetObject() ==
null )
92 Object insObj = ins.GetObject();
93 if ( insObj && ( !insObj.IsAlive() ||
vector.DistanceSq(insObj.GetPosition(),
GetPosition()) > (m_InnerDistance * m_InnerDistance) ) )
95 int timeDiff =
g_Game.GetTime() - ins.timeStamp;
99 OnLeave(ins.GetObject());
100 m_insiders.Remove(n);
115 DebugSendDmgTrigger();