From e0ee1e66c98db57d5ea192b9168e4b4cef705ab4 Mon Sep 17 00:00:00 2001 From: lars Date: Thu, 2 Jan 2025 01:08:53 +0100 Subject: [PATCH] added description message on game start --- .../minenet/minigames/instance/game/Game.java | 19 +++++++++++++++---- src/main/resources/lang/locales.map.csv | 10 +++++----- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/src/main/java/eu/mhsl/minenet/minigames/instance/game/Game.java b/src/main/java/eu/mhsl/minenet/minigames/instance/game/Game.java index 7cd870b..4fba113 100644 --- a/src/main/java/eu/mhsl/minenet/minigames/instance/game/Game.java +++ b/src/main/java/eu/mhsl/minenet/minigames/instance/game/Game.java @@ -46,10 +46,10 @@ public abstract class Game extends MineNetInstance implements Spawnable { logger = Logger.getLogger("Game:" + getUniqueId()); eventNode() - .addListener(PlayerMoveEvent.class, this::onPlayerMove) - .addListener(PlayerBlockBreakEvent.class, this::onBlockBreak) - .addListener(PlayerBlockPlaceEvent.class, this::onBlockPlace) - .addListener(ItemDropEvent.class, this::onItemDrop); + .addListener(PlayerMoveEvent.class, this::onPlayerMove) + .addListener(PlayerBlockBreakEvent.class, this::onBlockBreak) + .addListener(PlayerBlockPlaceEvent.class, this::onBlockPlace) + .addListener(ItemDropEvent.class, this::onItemDrop); } public Game setParent(Room parentRoom) { @@ -64,6 +64,17 @@ public abstract class Game extends MineNetInstance implements Spawnable { game.load(); Room.getRoom(owner).orElseThrow().moveMembersToInstance(game); + MinecraftServer.getSchedulerManager().scheduleTask(() -> { + game.getPlayers().forEach(player -> new ChatMessage(Icon.SCIENCE) + .appendStatic(factory.name().getAssembled(player).asComponent()) + .newLine() + .appendStatic(factory.description().getAssembled(player).asComponent()) + .send(player)); + + return TaskSchedule.stop(); + }, TaskSchedule.seconds(3)); + + } catch (Exception e) { new ChatMessage(Icon.ERROR).appendStatic("Instance crashed: " + e.getMessage()).send(owner); MinecraftServer.getSchedulerManager().scheduleNextTick(() -> Room.getRoom(owner).orElseThrow().moveMembersToRoomLobby()); diff --git a/src/main/resources/lang/locales.map.csv b/src/main/resources/lang/locales.map.csv index bc53024..3b62a9c 100644 --- a/src/main/resources/lang/locales.map.csv +++ b/src/main/resources/lang/locales.map.csv @@ -70,12 +70,12 @@ ns:GameFactory#;; missingDescription;No description;Keine Beschreibung ;; ns:game_TntRun#;; -name;tnt run;TNT Rennen +name;TNT run;TNT Rennen description;The tnt at the ground disappears, don't fall;Das TNT am Boden verschwindet, falle nicht herunter levels;levels;Ebenen ;; ns:game_ElytraRace#;; -name;elytra race;Elytra Rennen +name;Elytra race;Elytra Rennen description;Be fast while flying through the rings;Sei schnell während du durch die Ringe fliegst ringCount;ring count;Anzahl der Ringe ;; @@ -99,11 +99,11 @@ name;Red light green light;Rotes licht, Grünes licht description;Only go forward if the Trafficlights show green;Gehe nur bei Grün vorran ;; ns:game_AcidRain#;; -name;acid rain;Säureregen +name;Acid rain;Säureregen description;Stay under the holey roof to dodge acid rain;Bleib unter dem löchrigen Dach um dem sauren Regen auszuweichen ;; ns:game_BowSpleef#;; -name;bow spleef;Bogen Spleef +name;Bow spleef;Bogen Spleef description;Spleef other players and be the last survivor;Zerstöre Blöcke unter anderen Spielern und sei der letzte im Feld ;; ns:game_Towerdefense#;; @@ -124,5 +124,5 @@ isFast;Fast mode;Schneller Modus hasCombat;Competitive mode;Kompetitiver Modus ;; ns:game_AnvilRun#;; -name;Anvil Run;Anvil Run +name;Anvil run;Anvil run description;Run away from falling anvils;Renne von fallenden Ambossen davon \ No newline at end of file