Added LevelManager

This commit is contained in:
Urban Modig
2025-08-30 13:44:54 +02:00
parent 4597279d9e
commit 014c9ea2ce
3 changed files with 11 additions and 2 deletions

View File

@ -8,13 +8,18 @@ import java.awt.Graphics;
@Slf4j @Slf4j
public class FruitManager { public class FruitManager {
private final LevelManager levelManager;
private Fruit activeFruit; private Fruit activeFruit;
private int dotsEaten = 0; private int dotsEaten = 0;
public FruitManager(LevelManager levelManager) {
this.levelManager = levelManager;
}
public void dotEaten() { public void dotEaten() {
dotsEaten++; dotsEaten++;
if (dotsEaten == 10 || dotsEaten == 170) { if (dotsEaten == 10 || dotsEaten == 170) {
spawnFruit(1); spawnFruit(levelManager.getLevel());
} }
} }

View File

@ -1,4 +1,8 @@
package se.urmo.game.state; package se.urmo.game.state;
import lombok.Getter;
public class LevelManager { public class LevelManager {
@Getter
private int level = 1;
} }

View File

@ -37,8 +37,8 @@ public class PlayingState implements GameState {
this.map = new GameMap("maps/map1.csv"); this.map = new GameMap("maps/map1.csv");
this.pacman = new PacMan(game, new CollisionChecker(map)); this.pacman = new PacMan(game, new CollisionChecker(map));
this.ghostManager = new GhostManager(new GhostCollisionChecker(map)); this.ghostManager = new GhostManager(new GhostCollisionChecker(map));
this.fruitManager = new FruitManager();
this.levelManager = new LevelManager(); this.levelManager = new LevelManager();
this.fruitManager = new FruitManager(levelManager);
this.arcadeFont = loadArcadeFont(); this.arcadeFont = loadArcadeFont();
} }