diff --git a/app/src/main/java/model/FloodGame.java b/app/src/main/java/model/FloodGame.java index 64d44a1846ae2c7bb0c04b029682013396941bc0..818b5474ffd55eedfd59dcb924e49fcd7a319cd5 100644 --- a/app/src/main/java/model/FloodGame.java +++ b/app/src/main/java/model/FloodGame.java @@ -1,9 +1,9 @@ package model; - import javafx.beans.property.SimpleIntegerProperty; - import java.util.Arrays; +import java.util.HashSet; import java.util.List; +import java.util.Set; public class FloodGame { @@ -11,38 +11,47 @@ public class FloodGame { private final int totalFloodingArea; private final SimpleIntegerProperty turn = new SimpleIntegerProperty(0); + //Constructeur de la calsse public FloodGame(int totalFloodingArea){ this.totalFloodingArea = totalFloodingArea; } + public void setPlayer(Player player){ this.player = player; } + public Player getPlayer(){ return player; } + public void setTurn(int value){ turn.setValue(value); } + public int getTurn(){ return turn.getValue(); } + public void resetTurn() { setTurn(0); } + public SimpleIntegerProperty getTurnProperty(){ return turn; } + public void incrementTurn(){ setTurn(getTurn()+1); } + public boolean isHumanTurn(){ return getPlayer().isHuman(); } @@ -50,17 +59,30 @@ public class FloodGame { public int getPlayerScore(Player player) { // TODO - return 0; + Set<Cell> pendingCells = new HashSet(); + int Cellcount = 0 ; + pendingCells.add(this.player.getStartCell()) ; + + + while (player.getStartCell().iterator().hasNext()) { + pendingCells.add(pendingCells.iterator().next()) ; + Cellcount++; + } + + return Cellcount ; } + public boolean hasWon(Player player){ // TODO - return false; + return this.getPlayerScore(player) == this.totalFloodingArea; } + public boolean hasEnded(){ // TODO - return false; + return hasWon(player); } } +