From dafa5c87a3ac2cc7a89a1c5c423a2dcc714a7b3a Mon Sep 17 00:00:00 2001 From: Tobydrama Date: Mon, 30 Mar 2020 18:28:06 +0200 Subject: [PATCH] lagger til en del hjelpe funkjsoner lagg til setpowerdown som setter powerdown til en gitt robot lagg til repairRobotOnTile som reparere roboter en skade fra en gitt robot lagg til executepowerdown som setter skaden til en gitt robot til 0 --- .../fiasko/roborally/objects/Board.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/main/java/inf112/fiasko/roborally/objects/Board.java b/src/main/java/inf112/fiasko/roborally/objects/Board.java index fa2034e..94cb859 100644 --- a/src/main/java/inf112/fiasko/roborally/objects/Board.java +++ b/src/main/java/inf112/fiasko/roborally/objects/Board.java @@ -135,6 +135,35 @@ public class Board { moveRobot(robotID, Direction.getReverseDirection(robots.get(robotID).getFacingDirection())); } + /** + * sets the powerdown status of the robot + * @param robotID the robotid of the robot + * @param powerdown the status of the powerdown + */ + public void setPowerDown(RobotID robotID,Boolean powerdown){ + robots.get(robotID).setPowerDown(powerdown); + } + + /** + * removes one damage for a given robot given that it has taken som damage before + * @param robotID the ID of the robot + */ + public void repairRobotOnTile(RobotID robotID){ + Robot robot = robots.get(robotID); + int newDamage =Math.max(robot.getDamageTaken()-1,0); + robot.setDamageTaken(newDamage); + } + + /** + * sets the damage taken of robots in powerdown to 0 + */ + public void executePowerdown(){ + for (Robot robot:robots.values()) { + if(robot.isInPowerDown()){ + robot.setDamageTaken(0); + } + } + } /** * Moves a robot one unit in a specified direction * @param robotID ID of the robot to move