Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class GameBoardAndMovement {
- private Robot robotOne;
- private Robot robotTwo;
- public static void main(String[] args){
- Out.println("What size of board you want to play on!");
- Out.println("For 4x4 write s.For 16x16 write b.");
- char size=In.readChar();
- switch(size){
- case 's':
- GameBoardAndRobot(4);
- break;
- case 'b':
- GameBoardAndRobot(16);
- default:
- Out.print("Choose either Small or Big.Rest wont be accepted1");
- break;
- }
- startGame();
- }
- public void startGame(){
- while(!robotOne.canSee(robotTwo))
- {
- char nextMove = Grid.readKey();
- MovementOfRobots(robotOne, nextMove);
- MovementOfRobots(robotTwo, opositeMovementOfRobots(nextMove));
- }
- Grid.showMessage("Nicely Done! :) ");
- }
- public void GameBoardAndRobot(int gridSize){
- Grid.create(gridSize,gridSize);
- robotOne=new Robot(0, 0);
- robotTwo=new Robot(gridSize-1,gridSize-1);
- Grid.placeRobot(robotOne.curRow,robotOne.curColumn);
- Grid.placeRobot(robotTwo.curRow,robotTwo.curColumn);
- }
- //MovementOptionts
- public void goLeft(Robot robot){
- Grid.removeRobot(robot.curRow,robot.curColumn);
- robot.curColumn--;
- Grid.placeRobot(robot.curRow,robot.curColumn);
- }
- public static void goUp(Robot robot){
- Grid.removeRobot(robot.curRow,robot.curColumn);
- robot.curRow--;
- Grid.placeRobot(robot.curRow,robot.curColumn);
- }
- public void goDown(Robot robot){
- Grid.removeRobot(robot.curRow,robot.curColumn);
- robot.curRow++;
- Grid.placeRobot(robot.curRow,robot.curColumn);
- }
- public void goRight(Robot robot){
- Grid.removeRobot(robot.curRow,robot.curColumn);
- robot.curColumn++;
- Grid.placeRobot(robot.curRow,robot.curColumn);
- }
- //
- public void MovementOfRobots(Robot robot,char nextMove){
- switch(nextMove){
- case 'a':
- if(Grid.insideBounds(robot.curRow, robot.curColumn-1)&&!Grid.robotAt(robot.curRow, robot.curColumn-1)){
- goLeft(robot);
- }
- break;
- case 'w':
- if(Grid.insideBounds(robot.curRow-1, robot.curColumn)&&!Grid.robotAt(robot.curRow-1, robot.curColumn)){
- goUp(robot);
- }
- break;
- case 's':
- if(Grid.insideBounds(robot.curRow+1, robot.curColumn)&&!Grid.robotAt(robot.curRow+1, robot.curColumn)){
- goDown(robot);
- }
- break;
- case 'd':
- if(Grid.insideBounds(robot.curRow, robot.curColumn+1)&&!Grid.robotAt(robot.curRow, robot.curColumn+1)){
- goRight(robot);
- }
- break;
- default:
- break;
- }
- }//End of MovementOfRobots
- public char opositeMovementOfRobots(char nextMove){
- switch(nextMove){
- case 'a':
- return 'd';
- case 'w':
- return 's';
- case 's':
- return 'w';
- case 'd':
- return 'a';
- default:
- return 'E';
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement