Skip to content

Commit 442239a

Browse files
committed
chore(game): change view update handling
1 parent a8e664e commit 442239a

2 files changed

Lines changed: 7 additions & 14 deletions

File tree

game/src/main/java/net/onelitefeather/cygnus/Cygnus.java

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,16 @@
22

33
import net.onelitefeather.cygnus.event.GameStartEvent;
44
import net.onelitefeather.cygnus.listener.game.GameStartListener;
5+
import net.onelitefeather.cygnus.listener.view.ViewUpdateListener;
56
import net.onelitefeather.cygnus.map.GameMapProvider;
67
import net.onelitefeather.cygnus.map.event.GameMapLoadedEvent;
8+
import net.onelitefeather.cygnus.view.event.ViewUpdateEvent;
79
import net.theevilreaper.aves.map.provider.AbstractMapProvider;
8-
import net.theevilreaper.aves.util.Strings;
9-
import net.theevilreaper.aves.util.TimeFormat;
1010
import net.theevilreaper.aves.util.functional.VoidConsumer;
1111
import net.theevilreaper.xerus.api.phase.LinearPhaseSeries;
1212
import net.theevilreaper.xerus.api.phase.Phase;
1313
import net.theevilreaper.xerus.api.phase.TimedPhase;
1414
import net.theevilreaper.xerus.api.team.TeamService;
15-
import net.kyori.adventure.text.Component;
1615
import net.minestom.server.MinecraftServer;
1716
import net.minestom.server.entity.Player;
1817
import net.minestom.server.event.player.AsyncPlayerConfigurationEvent;
@@ -26,7 +25,6 @@
2625
import net.onelitefeather.cygnus.ambient.AmbientProvider;
2726
import net.onelitefeather.cygnus.command.StartCommand;
2827
import net.onelitefeather.cygnus.common.ListenerHandling;
29-
import net.onelitefeather.cygnus.common.Messages;
3028
import net.onelitefeather.cygnus.common.config.GameConfig;
3129
import net.onelitefeather.cygnus.common.config.GameConfigReader;
3230
import net.onelitefeather.cygnus.common.event.GamePreLaunchEvent;
@@ -98,7 +96,7 @@ public Cygnus() {
9896
MinecraftServer.getConnectionManager().setPlayerProvider(CygnusPlayer::new);
9997
this.pageProvider = new PageProvider(this::handleAllPageFound);
10098
this.mapProvider = new GameMapProvider(path);
101-
this.view = new GameViewImpl(this::getViewComponent);
99+
this.view = new GameViewImpl();
102100
this.createTeams(this.gameConfig, this.teamService, this.ambientProvider);
103101
this.initPhases();
104102
this.initCommands();
@@ -155,6 +153,8 @@ private void registerGameListener() {
155153
SlenderReviveEvent.class, new SlenderReviveListener(((GameMapProvider) this.mapProvider).getGameMap(), this.staminaService));
156154
manager.addListener(GamePreLaunchEvent.class, new GamePreLaunchListener(this.pageProvider::setMaxPageAmount));
157155
manager.addListener(StaminaStateChangeEvent.class, new StaminaStateChangeListener());
156+
manager.addListener(ViewUpdateEvent.class, new ViewUpdateListener(this.view, this.pageProvider));
157+
158158
MinecraftServer.getPacketListenerManager().setPlayListener(ClientEntityActionPacket.class, CygnusEntityActionListener::listener);
159159
}
160160

@@ -183,14 +183,6 @@ private void finishGame() {
183183
MinecraftServer.getPacketListenerManager().setPlayListener(ClientEntityActionPacket.class, EntityActionListener::listener);
184184
}
185185

186-
private @NotNull Component getViewComponent() {
187-
var gamePhase = (GamePhase) this.linearPhaseSeries.getCurrentPhase();
188-
return Messages.getViewComponent(
189-
Strings.getTimeString(TimeFormat.MM_SS, gamePhase.getCurrentTicks()),
190-
this.pageProvider.getPageStatus()
191-
);
192-
}
193-
194186
private void triggerViewRuleUpdate(@NotNull Player player) {
195187
ViewRuleUpdater.updateViewer(player, this.teamService.getTeams().get(Helper.SURVIVOR_ID));
196188
}

game/src/main/java/net/onelitefeather/cygnus/phase/GamePhase.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import net.minestom.server.event.EventDispatcher;
44
import net.onelitefeather.cygnus.event.GameStartEvent;
5+
import net.onelitefeather.cygnus.view.event.ViewUpdateEvent;
56
import net.theevilreaper.xerus.api.phase.TickDirection;
67
import net.theevilreaper.xerus.api.phase.TimedPhase;
78
import net.minestom.server.MinecraftServer;
@@ -72,6 +73,6 @@ protected void onFinish() {
7273
*/
7374
@Override
7475
public void onUpdate() {
75-
this.gameView.updateView();
76+
EventDispatcher.call(new ViewUpdateEvent(getCurrentTicks()));
7677
}
7778
}

0 commit comments

Comments
 (0)