Skip to content

Commit e077e9a

Browse files
Refac
1 parent c166516 commit e077e9a

File tree

2 files changed

+15
-16
lines changed

2 files changed

+15
-16
lines changed

pacman-ui/src/main/java/de/amr/pacmanfx/ui/PacManGames_UI_Impl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ public PacManGames_UI_Impl(GameContext gameContext, Stage stage, double width, d
117117
configureStage(stage);
118118

119119
startPagesView = new StartPagesView(this);
120-
playView = new PlayView(this, gameContext, mainScene);
120+
playView = new PlayView(this, mainScene);
121121

122122
theGameClock.setPausableAction(this::doSimulationStepAndUpdateGameScene);
123123
theGameClock.setPermanentAction(this::drawCurrentView);

pacman-ui/src/main/java/de/amr/pacmanfx/ui/layout/PlayView.java

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
*/
55
package de.amr.pacmanfx.ui.layout;
66

7-
import de.amr.pacmanfx.GameContext;
87
import de.amr.pacmanfx.controller.GameState;
98
import de.amr.pacmanfx.event.GameEvent;
109
import de.amr.pacmanfx.lib.Vector2f;
10+
import de.amr.pacmanfx.model.GameLevel;
1111
import de.amr.pacmanfx.model.actors.ActorAnimationMap;
1212
import de.amr.pacmanfx.ui.*;
1313
import de.amr.pacmanfx.ui._2d.CrudeCanvasContainer;
@@ -70,7 +70,6 @@ private static byte identifySceneSwitchType(GameScene sceneBefore, GameScene sce
7070
private final ActionBindingManager actionBindings;
7171

7272
private final GameUI ui;
73-
private final GameContext gameContext;
7473
private final Scene parentScene;
7574

7675
private BorderPane canvasLayer;
@@ -83,9 +82,8 @@ private static byte identifySceneSwitchType(GameScene sceneBefore, GameScene sce
8382
private final MiniGameView miniGameView;
8483
private final ContextMenu contextMenu = new ContextMenu();
8584

86-
public PlayView(GameUI ui, GameContext gameContext, Scene parentScene) {
85+
public PlayView(GameUI ui, Scene parentScene) {
8786
this.ui = requireNonNull(ui);
88-
this.gameContext = requireNonNull(gameContext);
8987
this.parentScene = requireNonNull(parentScene);
9088
this.miniGameView = new MiniGameView();
9189
this.dashboard = new Dashboard(ui);
@@ -183,8 +181,8 @@ public void draw() {
183181
}
184182
});
185183

186-
if (miniGameView.isVisible() && ui.isCurrentGameSceneID(SCENE_ID_PLAY_SCENE_3D) && gameContext.optGameLevel().isPresent()) {
187-
miniGameView.draw(ui, gameContext.theGameLevel());
184+
if (miniGameView.isVisible() && ui.isCurrentGameSceneID(SCENE_ID_PLAY_SCENE_3D) && ui.theGameContext().optGameLevel().isPresent()) {
185+
miniGameView.draw(ui, ui.theGameContext().theGameLevel());
188186
}
189187

190188
// Dashboard updates must be called from permanent clock task too!
@@ -210,20 +208,21 @@ public void onGameEvent(GameEvent gameEvent) {
210208
Logger.trace("Handle {}", gameEvent);
211209
switch (gameEvent.type()) {
212210
case LEVEL_CREATED -> {
211+
GameLevel gameLevel = ui.theGameContext().theGameLevel();
213212
GameUI_Config config = ui.theConfiguration();
214-
ActorAnimationMap pacAnimationMap = config.createPacAnimations(gameContext.theGameLevel().pac());
215-
gameContext.theGameLevel().pac().setAnimations(pacAnimationMap);
216-
gameContext.theGameLevel().ghosts().forEach(ghost -> {
213+
ActorAnimationMap pacAnimationMap = config.createPacAnimations(gameLevel.pac());
214+
gameLevel.pac().setAnimations(pacAnimationMap);
215+
gameLevel.ghosts().forEach(ghost -> {
217216
ActorAnimationMap ghostAnimationMap = config.createGhostAnimations(ghost);
218217
ghost.setAnimations(ghostAnimationMap);
219218
});
220-
miniGameView.onLevelCreated(ui, gameContext.theGameLevel());
219+
miniGameView.onLevelCreated(ui, gameLevel);
221220

222221
// size of game scene might have changed, so re-embed
223222
ui.currentGameScene().ifPresent(this::embedGameScene);
224223
}
225224
case GAME_STATE_CHANGED -> {
226-
if (gameContext.theGameState() == GameState.LEVEL_COMPLETE) {
225+
if (ui.theGameContext().theGameState() == GameState.LEVEL_COMPLETE) {
227226
miniGameView.onLevelCompleted();
228227
}
229228
}
@@ -243,7 +242,7 @@ public CrudeCanvasContainer canvasContainer() {
243242
}
244243

245244
public void updateGameScene(boolean reloadCurrent) {
246-
final GameScene nextGameScene = ui.theConfiguration().selectGameScene(gameContext);
245+
final GameScene nextGameScene = ui.theConfiguration().selectGameScene(ui.theGameContext());
247246
if (nextGameScene == null) {
248247
String errorMessage = " Katastrophe! Could not determine game scene!";
249248
ui.showFlashMessageSec(30, errorMessage);
@@ -279,9 +278,9 @@ public void updateGameScene(boolean reloadCurrent) {
279278
public void quitCurrentGameScene() {
280279
ui.currentGameScene().ifPresent(gameScene -> {
281280
gameScene.end();
282-
gameContext.theGameController().changeGameState(GameState.BOOT);
283-
gameContext.theGame().resetEverything();
284-
if (!gameContext.theCoinMechanism().isEmpty()) gameContext.theCoinMechanism().consumeCoin();
281+
ui.theGameContext().theGameController().changeGameState(GameState.BOOT);
282+
ui.theGameContext().theGame().resetEverything();
283+
if (!ui.theGameContext().theCoinMechanism().isEmpty()) ui.theGameContext().theCoinMechanism().consumeCoin();
285284
ui.showStartView();
286285
Logger.info("Current game scene ({}) has been quit", gameScene.getClass().getSimpleName());
287286
});

0 commit comments

Comments
 (0)