mirror of
				https://github.com/inf112-v20/Fiasko.git
				synced 2025-10-31 01:33:43 +01:00 
			
		
		
		
	Update RoboRallyGame.java
Legger til funksjonalitet for at en robot bare kan registrere besøk på ett flagg hver runde. Co-Authored-By: gabrielmagnus <gabrielmagnus@users.noreply.github.com>
This commit is contained in:
		| @@ -216,6 +216,16 @@ public class RoboRallyGame implements IDrawableGame { | |||||||
|         // TODO: If this player is in power down, ask if it shall continue |         // TODO: If this player is in power down, ask if it shall continue | ||||||
|         // Respawn dead robots, as long as they have more lives left |         // Respawn dead robots, as long as they have more lives left | ||||||
|         respawnRobots(); |         respawnRobots(); | ||||||
|  |         resetHasTouchedFlagThisTurnForAllRobots(); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * Resets the boolean for if the robot has touched a flag this turn, to set up the next turn. | ||||||
|  |      */ | ||||||
|  |     private void resetHasTouchedFlagThisTurnForAllRobots() { | ||||||
|  |         for (Robot robot : gameBoard.getAliveRobots()) { | ||||||
|  |             robot.setHasTouchedFlagThisTurn(false); | ||||||
|  |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     /** |     /** | ||||||
| @@ -462,8 +472,14 @@ public class RoboRallyGame implements IDrawableGame { | |||||||
|         for (BoardElementContainer<Tile> flag:listOfFlags) { |         for (BoardElementContainer<Tile> flag:listOfFlags) { | ||||||
|             Position flagPosition = flag.getPosition(); |             Position flagPosition = flag.getPosition(); | ||||||
|             if (gameBoard.hasRobotOnPosition(flagPosition)) { |             if (gameBoard.hasRobotOnPosition(flagPosition)) { | ||||||
|                 RobotID robot = gameBoard.getRobotOnPosition(flagPosition); |                 RobotID robotID = gameBoard.getRobotOnPosition(flagPosition); | ||||||
|                 gameBoard.updateFlagOnRobot(robot, flag.getElement().getTileType()); |                 for (Robot robot : gameBoard.getAliveRobots()) { | ||||||
|  |                     if (robot.getRobotId() != robotID || robot.isHasTouchedFlagThisTurn()) { | ||||||
|  |                         continue; | ||||||
|  |                     } | ||||||
|  |                     gameBoard.updateFlagOnRobot(robotID, flag.getElement().getTileType()); | ||||||
|  |                     robot.setHasTouchedFlagThisTurn(true); | ||||||
|  |                 } | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 torlunjen
					torlunjen