From 888b52f3145b15d47c7a21542b742d6ea6343476 Mon Sep 17 00:00:00 2001 From: Cedric Beck Date: Tue, 10 Dec 2024 13:38:26 +0100 Subject: [PATCH] moved timermanger to app --- .../src/main/java/pp/mdga/client/MdgaApp.java | 9 +++++++++ .../mdga/client/animation/MatrixAnimation.java | 18 ++++++++---------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/MdgaApp.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/MdgaApp.java index 6a69b6ba..0fd2ff4b 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/MdgaApp.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/MdgaApp.java @@ -5,6 +5,7 @@ import com.sun.tools.javac.Main; import pp.mdga.client.acoustic.AcousticHandler; import com.jme3.system.AppSettings; +import pp.mdga.client.animation.TimerManager; import pp.mdga.client.dialog.JoinDialog; import pp.mdga.client.view.*; @@ -66,6 +67,9 @@ public class MdgaApp extends SimpleApplication { private ServerConnection networkConnection; + private final TimerManager timerManager = new TimerManager(); + + public static final int DEBUG_MULTIPLIER = 0; public MdgaApp() { @@ -144,6 +148,7 @@ public void simpleUpdate(float tpf) { acousticHandler.update(); notificationSynchronizer.update(); inputSynchronizer.update(tpf); + timerManager.update(tpf); } /** @@ -324,5 +329,9 @@ public void afterGameCleanup() { public GameView getGameView(){ return gameView; } + + public TimerManager getTimerManager() { + return timerManager; + } } diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/animation/MatrixAnimation.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/animation/MatrixAnimation.java index 8e513195..e525d06e 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/animation/MatrixAnimation.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/animation/MatrixAnimation.java @@ -21,7 +21,6 @@ public class MatrixAnimation extends ActionControl { private List activeEmitter = new ArrayList<>(); private ParticleEmitter radarEmitter = null; private float timeElapsed = 0f; - private final TimerManager timerManager = new TimerManager(); private enum MatrixState{ @@ -61,8 +60,9 @@ protected void controlUpdate(float tpf) { state = MatrixState.RADAR_OFF; timeElapsed = 0; radarEmitter.setParticlesPerSec(0); - timerManager.addTask(3f, () -> app.enqueue(() -> { + app.getTimerManager().addTask(3f, () -> app.enqueue(() -> { app.getRootNode().detachChild(radarEmitter); + System.out.println("delete radar"); return null; })); } @@ -80,14 +80,13 @@ protected void controlUpdate(float tpf) { state = MatrixState.MATRIX_OFF; timeElapsed = 0; turnOff(); - new Timer().schedule(new TimerTask() { - @Override - public void run() { - for (ParticleEmitter particleEmitter : activeEmitter){ - app.getRootNode().detachChild(particleEmitter); - } + app.getTimerManager().addTask(3f, () -> app.enqueue(() -> { + for (ParticleEmitter particleEmitter : activeEmitter){ + app.getRootNode().detachChild(particleEmitter); } - }, 3000); + System.out.println("delete particle"); + return null; + })); } } case MATRIX_OFF -> { @@ -98,7 +97,6 @@ public void run() { } } } - timerManager.update(tpf); } private void turnOff(){