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); } }