Example #1
0
        protected void onActorDead(ref GameDeadEventParam prm)
        {
            int count = this.m_spawnedList.Count;
            int index = 0;

            while (index < this.m_spawnedList.Count)
            {
                if (this.m_spawnedList[index] == 0)
                {
                    this.m_spawnedList.RemoveAt(index);
                }
                else
                {
                    PoolObjHandle <ActorRoot> handle = this.m_spawnedList[index];
                    if (handle.Equals(prm.src))
                    {
                        this.m_spawnedList.RemoveAt(index);
                        break;
                    }
                    index++;
                }
            }
            int num3 = this.m_spawnedList.Count;

            if ((num3 == 0) && (num3 < count))
            {
                this.onMyselfAllDead();
                Singleton <GameEventSys> .instance.SendEvent <GameDeadEventParam>(GameEventDef.Event_MonsterGroupDead, ref prm);
            }
        }