コード例 #1
0
        public void teste()
        {
            BlackBoard BlackBoard = new PloobsEngine.IA.BlackBoard();
            WorldState WorldState = new PloobsEngine.IA.WorldState();

            WorldState.SetSymbolValue <int>("gold", 5);
            WorldState.SetSymbolValue <int>("wood", 5);
            WorldState.SetSymbolValue <int>("castle", 0);
            WorldState.SetSymbolValue <int>("warrior", 0);
            WorldState.SetSymbolValue <bool>("attack", false);
            BlackBoard.SetEntry <WorldState>("WorldState", WorldState);

            Dictionary <string, int> resneeded = new Dictionary <string, int>();

            resneeded.Add("gold", 10);

            Dictionary <string, int> resneeded2 = new Dictionary <string, int>();

            resneeded2.Add("wood", 2);
            resneeded2.Add("gold", 2);

            Dictionary <string, int> unitneeded = new Dictionary <string, int>();

            unitneeded.Add("warrior", 3);

            List <PloobsEngine.IA.Action> actions = new List <PloobsEngine.IA.Action>();

            actions.Add(new GatherResource("gold", 5));
            actions.Add(new GatherResource("wood", 5));
            actions.Add(new Build(resneeded, "castle", 1));
            actions.Add(new MakeUnit("warrior", "castle", resneeded2));
            actions.Add(new Patrol());
            actions.Add(new Attack(unitneeded));

            GoalPlanning GoalPlanning = new GoalPlanning(BlackBoard);
            PlanSet      PlanSet      = GoalPlanning.GetPlan(new GoalAttack(), actions);

            System.Diagnostics.Debug.Assert(PlanSet != null);

            foreach (var item in PlanSet.Actions)
            {
                Console.WriteLine(item.Name);
            }
        }
コード例 #2
0
        public void teste()
        {
            BlackBoard BlackBoard = new PloobsEngine.IA.BlackBoard();
            WorldState WorldState = new PloobsEngine.IA.WorldState();
            WorldState.SetSymbolValue<int>("gold", 5);
            WorldState.SetSymbolValue<int>("wood", 5);
            WorldState.SetSymbolValue<int>("castle", 0);
            WorldState.SetSymbolValue<int>("warrior", 0);
            WorldState.SetSymbolValue<bool>("attack", false);
            BlackBoard.SetEntry<WorldState>("WorldState", WorldState);
            
            Dictionary<string, int> resneeded = new Dictionary<string, int>();
            resneeded.Add("gold",10);

            Dictionary<string, int> resneeded2 = new Dictionary<string, int>();
            resneeded2.Add("wood", 2);
            resneeded2.Add("gold", 2);

            Dictionary<string, int> unitneeded = new Dictionary<string, int>();
            unitneeded.Add("warrior", 3);

            List<PloobsEngine.IA.Action> actions = new List<PloobsEngine.IA.Action>();
            actions.Add(new GatherResource("gold",5));
            actions.Add(new GatherResource("wood", 5));
            actions.Add(new Build(resneeded, "castle", 1));
            actions.Add(new MakeUnit("warrior", "castle", resneeded2));
            actions.Add(new Patrol());
            actions.Add(new Attack(unitneeded));
            
            GoalPlanning GoalPlanning = new GoalPlanning(BlackBoard);
            PlanSet PlanSet = GoalPlanning.GetPlan(new GoalAttack(), actions);

            System.Diagnostics.Debug.Assert(PlanSet != null);

            foreach (var item in PlanSet.Actions)
            {
                Console.WriteLine(item.Name);
            }
        }