/// <summary> /// 工具型方法,请勿在未判断业务逻辑时直接使用 /// </summary> /// <param name="agent"></param> public void DestoryAgent(FlockAgent agent) { if (agent.agentContainerType == AgentContainerType.MainPanel) { agent.Reset(); Destroy(agent.gameObject); } else if (agent.agentContainerType == AgentContainerType.BackPanel) { agent.Reset(); Destroy(agent.gameObject); } else { _flockAgentInStarPool.ReleaseObj(agent); } }
// // 清理所有的agents // public void RecycleAgent(FlockAgent agent) { //Debug.Log("Recycle Agent : " + agent.gameObject + "[" + agent.SceneIndex + "]") ; agent.Reset(); _agents.Remove(agent); _manager.collisionManager.RemoveCollisionMoveBasicAgent(agent); DestoryAgent(agent); }