예제 #1
0
        public void TestAgentToPullPullBent()
        {
            string levelString = @"
++++++++++++
++++0+++++++
++++ +++++++
++++ +++++++
+B       GF+
++++++++++++";

            List <AgentCommand> commands = new List <AgentCommand>()
            {
                AgentCommand.CreateMove(Direction.S),
                AgentCommand.CreateMove(Direction.S),
                AgentCommand.CreateMove(Direction.S),
                AgentCommand.CreateMove(Direction.W),
                AgentCommand.CreateMove(Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
            };

            VerifyMoveBoxToGoalCreator(levelString, commands);
        }
예제 #2
0
        public void TestPullPush()
        {
            string levelString = @"
++++++++++
+B0    FG+
+++++ ++++
++++++++++";

            List <AgentCommand> commands = new List <AgentCommand>()
            {
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.E, Direction.W),
                AgentCommand.CreatePull(Direction.S, Direction.W),
                AgentCommand.CreatePush(Direction.N, Direction.E),
                AgentCommand.CreatePush(Direction.E, Direction.E),
                AgentCommand.CreatePush(Direction.E, Direction.E),
            };

            VerifyMoveBoxToGoalCreator(levelString, commands);
        }
예제 #3
0
        public void TestPushPullTurnLast()
        {
            string levelString = @"
++++++++++
+0B    GF+
+++++++ ++
++++++++++";

            List <AgentCommand> commands = new List <AgentCommand>()
            {
                AgentCommand.CreatePush(Direction.E, Direction.E),
                AgentCommand.CreatePush(Direction.E, Direction.E),
                AgentCommand.CreatePush(Direction.E, Direction.E),
                AgentCommand.CreatePush(Direction.E, Direction.E),
                AgentCommand.CreatePush(Direction.E, Direction.E),
                AgentCommand.CreatePush(Direction.E, Direction.S),
                AgentCommand.CreatePull(Direction.E, Direction.S),
            };

            VerifyMoveBoxToGoalCreator(levelString, commands);
        }