Пример #1
0
        public static PlanningProcess GetPlanning(string agentFullName, int frame, int index)
        {
            if (_planningDb.ContainsKey(agentFullName))
            {
                PlanningProcess planning = _planningDb[agentFullName].Find((p) => p._frame == frame && p._index == index);

                return(planning);
            }

            return(null);
        }
Пример #2
0
        public static void PlanEnd(string agentFullName, string btId)
        {
            //string bt = null;
            //string nodeClassName = null;
            //string nodeId = ParseNodeId(btId, ref bt, ref nodeClassName);

            if (AddPlanningHanlder != null)
            {
                PlanningProcess p     = PlanningProcess._planning;
                int             frame = AgentDataPool.TotalFrames;
                AddPlanningHanlder(agentFullName, frame, p);
            }

            PlanningProcess._planning._currentState = null;
            PlanningProcess._planning = null;
        }
Пример #3
0
        private static PlanningProcess AddPlanning(string agentFullName, int frame, int index)
        {
            List <PlanningProcess> planning = null;
            PlanningProcess        p        = new PlanningProcess(agentFullName, frame, index);

            if (_planningDb.ContainsKey(agentFullName))
            {
                planning = _planningDb[agentFullName];
            }
            else
            {
                planning = new List <PlanningProcess>();
                _planningDb.Add(agentFullName, planning);
            }

            Debug.Check(planning != null);

            planning.Add(p);

            return(p);
        }
Пример #4
0
        private static PlanningProcess AddPlanning(string agentFullName, int frame, int index) {
            List<PlanningProcess> planning = null;
            PlanningProcess p = new PlanningProcess(agentFullName, frame, index);

            if (_planningDb.ContainsKey(agentFullName)) {
                planning = _planningDb[agentFullName];

            } else {
                planning = new List<PlanningProcess>();
                _planningDb.Add(agentFullName, planning);
            }

            Debug.Check(planning != null);

            planning.Add(p);

            return p;
        }