From 014c9ea2ce99fa73a1c390254f21627dc578c3d7 Mon Sep 17 00:00:00 2001 From: Urban Modig Date: Sat, 30 Aug 2025 13:44:54 +0200 Subject: [PATCH] Added LevelManager --- src/main/java/se/urmo/game/state/FruitManager.java | 7 ++++++- src/main/java/se/urmo/game/state/LevelManager.java | 4 ++++ src/main/java/se/urmo/game/state/PlayingState.java | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/java/se/urmo/game/state/FruitManager.java b/src/main/java/se/urmo/game/state/FruitManager.java index 99e3c6d..77543fc 100644 --- a/src/main/java/se/urmo/game/state/FruitManager.java +++ b/src/main/java/se/urmo/game/state/FruitManager.java @@ -8,13 +8,18 @@ import java.awt.Graphics; @Slf4j public class FruitManager { + private final LevelManager levelManager; private Fruit activeFruit; private int dotsEaten = 0; + public FruitManager(LevelManager levelManager) { + this.levelManager = levelManager; + } + public void dotEaten() { dotsEaten++; if (dotsEaten == 10 || dotsEaten == 170) { - spawnFruit(1); + spawnFruit(levelManager.getLevel()); } } diff --git a/src/main/java/se/urmo/game/state/LevelManager.java b/src/main/java/se/urmo/game/state/LevelManager.java index 5d9f740..bfb5161 100644 --- a/src/main/java/se/urmo/game/state/LevelManager.java +++ b/src/main/java/se/urmo/game/state/LevelManager.java @@ -1,4 +1,8 @@ package se.urmo.game.state; +import lombok.Getter; + public class LevelManager { + @Getter + private int level = 1; } diff --git a/src/main/java/se/urmo/game/state/PlayingState.java b/src/main/java/se/urmo/game/state/PlayingState.java index 23049d6..29a9b95 100644 --- a/src/main/java/se/urmo/game/state/PlayingState.java +++ b/src/main/java/se/urmo/game/state/PlayingState.java @@ -37,8 +37,8 @@ public class PlayingState implements GameState { this.map = new GameMap("maps/map1.csv"); this.pacman = new PacMan(game, new CollisionChecker(map)); this.ghostManager = new GhostManager(new GhostCollisionChecker(map)); - this.fruitManager = new FruitManager(); this.levelManager = new LevelManager(); + this.fruitManager = new FruitManager(levelManager); this.arcadeFont = loadArcadeFont(); }