public void Stop()
 {
     SceneMan.RemoveSceneObjs(_agents);
     _agents.Clear();
     MonsterEntityCreator.commonDeathEvent -= OnMonsterDeath;
     DoodadEntityCreator.commonDeathEvent  -= OnMonsterDeath;
 }
    public void RemoveFixedSpawnPointFromScene(List <int> pointIds)
    {
        List <SceneEntityPosAgent> agents = new List <SceneEntityPosAgent>();
        FixedSpawnPointInfo        info   = null;

        foreach (int id in pointIds)
        {
            if (_fixedSpawnPointInfos.TryGetValue(id, out info) && info._bActive)
            {
                agents.Add(info._agent);
            }
        }
        SceneMan.RemoveSceneObjs(agents);
    }
    void OnDestroy()
    {
        if (_airborne != null)
        {
            MonsterAirborne.DestroyAirborne(_airborne, false);
        }

#if DestroyLeftMonster
        if (!isSweep)
        {
            for (int i = 0; i < _agents.Count; i++)
            {
                MonEscape(_agents [i] as SceneEntityPosAgent, transform.position);
            }
        }
#endif
        SceneMan.RemoveSceneObjs(_agents);
        _agents.Clear();

        if (UITowerInfo.Instance != null && _uiData != null)
        {
            UITowerInfo.Instance.Hide();
        }

        s_Beacons.Remove(this);

        if (!PeGameMgr.IsMulti && null != m_Mark)
        {
            PeMap.LabelMgr.Instance.Remove(m_Mark);
            m_Mark = null;
        }

        if (null != CSMain.Instance)
        {
            List <CSAssembly> assemblyList = CSMain.Instance.GetAllAssemblies();
            if (0 < assemblyList.Count)
            {
                for (int i = 0; i < assemblyList.Count; ++i)
                {
                    CSAssembly assembly = assemblyList[i];
                    if (null != assembly && assembly.InRange(_position))
                    {
                        DigTerrainManager.ClearColonyBlockInfo(assembly);
                    }
                }
            }
        }
    }
Exemplo n.º 4
0
 public void RemoveAllAgent()
 {
     SceneMan.RemoveSceneObjs(_lstAgents);
 }
Exemplo n.º 5
0
 void OnDestroy()
 {
     StopAllCoroutines();
     SceneMan.RemoveSceneObjs(_lstAgents);
 }