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

            List <AgentCommand> commands = new List <AgentCommand>()
            {
                AgentCommand.CreateMove(Direction.S),
                AgentCommand.CreateMove(Direction.S),
                AgentCommand.CreateMove(Direction.S),
                AgentCommand.CreateMove(Direction.E),
                AgentCommand.CreateMove(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.E),
                AgentCommand.CreatePush(Direction.E, Direction.E),
            };

            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);
        }