diff --git a/gui/src/controller/Controller.java b/gui/src/controller/Controller.java index 010484f9d72ef352fb6c69d2419602ec5b1dbba4..2739604e6444ee47300a2c8ae3370fd559e26060 100644 --- a/gui/src/controller/Controller.java +++ b/gui/src/controller/Controller.java @@ -23,6 +23,7 @@ import java.io.IOException; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.URL; +import java.util.ArrayList; import java.util.List; import java.util.Random; import java.util.ResourceBundle; @@ -32,6 +33,7 @@ public class Controller implements Initializable private static final String iaProgramPath = "../bin/theturk"; private static final String introMusicFile = "./resource/pingu_theme.wav"; private static final String clickSoundFile = "./resource/clic.wav"; + private static final int max1Fish = 30, max2Fish = 20, max3Fish = 10; private GameState gameState; private Process gameProcess; @@ -121,12 +123,21 @@ public class Controller implements Initializable gameState.setScore(Player.Red, 0); gameState.setScore(Player.Blue, 0); //Generating random fish values + int[] fishCount = {0,0,0}; for (int i = 0; i < 60; i++) { - int nbFish = new Random().nextInt(3) + 1; + List<Integer> possibleFish = new ArrayList<>(); + if(fishCount[0] < max1Fish) + possibleFish.add(1); + if(fishCount[1] < max2Fish) + possibleFish.add(2); + if(fishCount[2] < max3Fish) + possibleFish.add(3); + int nbFish = possibleFish.get(new Random().nextInt(possibleFish.size())); gameState.setFish(i, nbFish); board[i].setNbFish(nbFish); boardView[i].update(); + fishCount[nbFish-1]++; } //Adding listener to add penguins penguinGenCounter = 0;