From 2430ee22a1ec52d67992b6d63ec63675bca8c626 Mon Sep 17 00:00:00 2001 From: Tobydrama Date: Tue, 31 Mar 2020 13:15:31 +0200 Subject: [PATCH 1/3] =?UTF-8?q?lagde=20tester=20for=20roboter=20p=C3=A5=20?= =?UTF-8?q?repair=20tiles=20og=20for=20=C3=A5=20sette=20roboter=20i=20powe?= =?UTF-8?q?rdown=20og=20for=20=C3=A5=20execute=20powerdown?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fiasko/roborally/objects/Board.java | 2 +- .../fiasko/roborally/objects/BoardTest.java | 52 ++++++++++++++----- 2 files changed, 40 insertions(+), 14 deletions(-) diff --git a/src/main/java/inf112/fiasko/roborally/objects/Board.java b/src/main/java/inf112/fiasko/roborally/objects/Board.java index 94cb859..998e91a 100644 --- a/src/main/java/inf112/fiasko/roborally/objects/Board.java +++ b/src/main/java/inf112/fiasko/roborally/objects/Board.java @@ -150,7 +150,7 @@ public class Board { */ public void repairRobotOnTile(RobotID robotID){ Robot robot = robots.get(robotID); - int newDamage =Math.max(robot.getDamageTaken()-1,0); + int newDamage = Math.max(robot.getDamageTaken()-1,0); robot.setDamageTaken(newDamage); } diff --git a/src/test/java/inf112/fiasko/roborally/objects/BoardTest.java b/src/test/java/inf112/fiasko/roborally/objects/BoardTest.java index 515fcf1..7d4562f 100644 --- a/src/test/java/inf112/fiasko/roborally/objects/BoardTest.java +++ b/src/test/java/inf112/fiasko/roborally/objects/BoardTest.java @@ -39,6 +39,8 @@ public class BoardTest { private final Map tileTypeNumberMap = new HashMap<>(); private List robotListforlaser; private Board boardforlaser; + private List robotListforpowerdown; + private Board boardforpowerdown; @BeforeClass public static void globalSetUp() { @@ -56,6 +58,19 @@ public class BoardTest { @Before public void setUp() { + Grid tileGridforpowerdown = new Grid<>(8, 8, new Tile(TileType.TILE, Direction.NORTH)); + Grid wallGridforpowerdown = new Grid<>(8, 8); + robotListforpowerdown = new ArrayList<>(); + robotListforpowerdown.add(new Robot(RobotID.ROBOT_1, new Position(2,1))); + robotListforpowerdown.add(new Robot(RobotID.ROBOT_2, new Position(4,0))); + robotListforpowerdown.add(new Robot(RobotID.ROBOT_3, new Position(4,1))); + robotListforpowerdown.add(new Robot(RobotID.ROBOT_4, new Position(1,7))); + robotListforpowerdown.add(new Robot(RobotID.ROBOT_5, new Position(0,4))); + robotListforpowerdown.add(new Robot(RobotID.ROBOT_6, new Position(0,5))); + robotListforpowerdown.add(new Robot(RobotID.ROBOT_7, new Position(7,0))); + robotListforpowerdown.add(new Robot(RobotID.ROBOT_8, new Position(1,1))); + boardforpowerdown = new Board(tileGridforpowerdown, wallGridforpowerdown, robotListforpowerdown); + Grid tileGridforlaser = new Grid<>(8, 8, new Tile(TileType.TILE, Direction.NORTH)); Grid wallGridforlaser = new Grid<>(8, 8); robotListforlaser = new ArrayList<>(); @@ -123,6 +138,30 @@ public class BoardTest { boardWithDifferentAmountOfAllTypes = new Board(tileGridAllTypes,wallGridAllTypes,emptyRobotList); } + @Test + public void setRobotPowerDownStatus(){ + Robot testrobot = robotListforpowerdown.get(0); + assertEquals(false , testrobot.isInPowerDown()); + boardforpowerdown.setPowerDown(RobotID.ROBOT_1,true); + assertEquals(true , testrobot.isInPowerDown()); + } + @Test + public void executRobotPowerDown(){ + Robot testrobot = robotListforpowerdown.get(1); + boardforpowerdown.setPowerDown(RobotID.ROBOT_2,true); + testrobot.setDamageTaken(4); + assertEquals(4,testrobot.getDamageTaken()); + boardforpowerdown.executePowerdown(); + assertEquals(0,testrobot.getDamageTaken()); + } + @Test + public void repairRobotOnRepairTile(){ + Robot testrobot = robotListforpowerdown.get(2); + testrobot.setDamageTaken(4); + assertEquals(4,testrobot.getDamageTaken()); + boardforpowerdown.repairRobotOnTile(RobotID.ROBOT_3); + assertEquals(3,testrobot.getDamageTaken()); + } @Test public void robotHitByLaserGetsDamaged(){ @@ -155,9 +194,7 @@ public class BoardTest { assertEquals(0, testRobot.getDamageTaken()); boardforlaser.fireAllLasers(); assertEquals(2,testRobot.getDamageTaken()); - } - @Test public void robotGetsHitByTwoLasers(){ Robot testRobot = robotListforlaser.get(3); @@ -165,9 +202,6 @@ public class BoardTest { boardforlaser.fireAllLasers(); assertEquals(2, testRobot.getDamageTaken()); } - - - @Test public void robotDamageEachOther() { Robot robot5 = robotListforlaser.get(4); @@ -179,9 +213,6 @@ public class BoardTest { assertEquals(1, robot5.getDamageTaken()); assertEquals(2, robot6.getDamageTaken()); } - - - @Test public void robotStandingOnLaserTakesDamage() { Robot robot6 = robotListforlaser.get(5); @@ -189,11 +220,6 @@ public class BoardTest { boardforlaser.fireAllLasers(); assertEquals(1, robot6.getDamageTaken()); } - - - - - @Test public void flagGetsUpdatedOnRobotWithCorrectLastVisitedFlag() { Robot testRobot = robotList.get(6); From 92cf618330a41d837ded40728cf4c16855318ca4 Mon Sep 17 00:00:00 2001 From: Tobydrama Date: Tue, 31 Mar 2020 13:43:23 +0200 Subject: [PATCH 2/3] la til en function som lar deg sett powerdown til en spill sin robot --- .../inf112/fiasko/roborally/objects/RoboRallyGame.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java b/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java index 6b0c8ab..d76c278 100644 --- a/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java +++ b/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java @@ -437,4 +437,13 @@ public class RoboRallyGame implements IDrawableGame { player.setPowerDownNextRound(false); } } + + /** + * sets the powerdown status of a robots + * @param player the player that owns the robot + * @param powerdownStatus the powerdown status + */ + private void setRobotPowerDown(Player player,Boolean powerdownStatus){ + gameBoard.setPowerDown(player.getRobotID(),powerdownStatus); + } } \ No newline at end of file From 15d6c6dc775c732554dbfdae9387fa76c6bed272 Mon Sep 17 00:00:00 2001 From: Steinar Aalstad Lillesund Date: Tue, 31 Mar 2020 13:45:35 +0200 Subject: [PATCH 3/3] fixed typos --- .../java/inf112/fiasko/roborally/objects/RoboRallyGame.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java b/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java index d76c278..4470f40 100644 --- a/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java +++ b/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java @@ -414,9 +414,9 @@ public class RoboRallyGame implements IDrawableGame { } /** - * repair all robots standing on a reparer tile + * repair all robots standing on a repair tile */ - private void repairAllRobotsOnReparerTiles(){ + private void repairAllRobotsOnRepairTiles(){ List> listOfRepareTiles = gameBoard.getPositionsOfTileOnBoard(TileType.FLAG_1, TileType.FLAG_2, TileType.FLAG_3, TileType.FLAG_4, TileType.WRENCH, TileType.WRENCH_AND_HAMMER); for (BoardElementContainer repareTile:listOfRepareTiles) {