public void RemoveEntityDecision(int decId, int entityId) { //清理旧的 if (decDict.ContainsKey(entityId)) { BaseDecisionServerObj server = GetServer(decDict[entityId]); server.RemoveEntity(decId, entityId); decDict.Remove(entityId); } }
public void AddEntityDecision(DecisionGroup decisionGroup, int decId, int entityId) { EntityWorkData entityWorkData = ECSLayerLocate.Info.GetEntityWorkData(entityId); //清理旧的 RemoveEntityDecision(decId, entityWorkData.Id); //加新的 BaseDecisionServerObj newServer = GetServer(decisionGroup); if (!newServer.HasTree(decId)) { DecisionTree tree = LoadDecision(decId); if (tree == null) { return; } newServer.AddTree(tree); } newServer.AddEntity(decId, entityWorkData); decDict.Add(entityWorkData.Id, decisionGroup); }