From 535008a31e3203c4b1c023af4319ccb308d40607 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20M=C3=BCller?= Date: Fri, 11 Apr 2025 10:21:59 +0200 Subject: [PATCH] startet implementation of buildBattle --- .../minigames/instance/game/GameList.java | 4 +++- .../types/buildBattle/BuildBattle.java | 13 ++++++++++++ .../types/buildBattle/BuildBattleFactory.java | 21 +++++++++++++++++++ .../types/buildBattle/BuilderWorld.java | 12 +++++++++++ 4 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuildBattle.java create mode 100644 src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuildBattleFactory.java create mode 100644 src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuilderWorld.java diff --git a/src/main/java/eu/mhsl/minenet/minigames/instance/game/GameList.java b/src/main/java/eu/mhsl/minenet/minigames/instance/game/GameList.java index 0cf3f47..f0d8116 100644 --- a/src/main/java/eu/mhsl/minenet/minigames/instance/game/GameList.java +++ b/src/main/java/eu/mhsl/minenet/minigames/instance/game/GameList.java @@ -3,6 +3,7 @@ package eu.mhsl.minenet.minigames.instance.game; import eu.mhsl.minenet.minigames.instance.game.stateless.config.GameFactory; import eu.mhsl.minenet.minigames.instance.game.stateless.types.anvilRun.AnvilRunFactory; import eu.mhsl.minenet.minigames.instance.game.stateless.types.bowSpleef.BowSpleefFactory; +import eu.mhsl.minenet.minigames.instance.game.stateless.types.buildBattle.BuildBattleFactory; import eu.mhsl.minenet.minigames.instance.game.stateless.types.elytraRace.ElytraRaceFactory; import eu.mhsl.minenet.minigames.instance.game.stateless.types.backrooms.BackroomsFactory; import eu.mhsl.minenet.minigames.instance.game.stateless.types.bedwars.BedwarsFactory; @@ -32,7 +33,8 @@ public enum GameList { ACIDRAIN(new AcidRainFactory(), GameType.PVE), ELYTRARACE(new ElytraRaceFactory(), GameType.PVP), SPLEEF(new SpleefFactory(), GameType.PVP), - JUMPDIVE(new JumpDiveFactory(), GameType.JUMPNRUN); + JUMPDIVE(new JumpDiveFactory(), GameType.JUMPNRUN), + BUILDBATTLE(new BuildBattleFactory(), GameType.OTHER); private final GameFactory factory; private final GameType type; diff --git a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuildBattle.java b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuildBattle.java new file mode 100644 index 0000000..c9de12b --- /dev/null +++ b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuildBattle.java @@ -0,0 +1,13 @@ +package eu.mhsl.minenet.minigames.instance.game.stateless.types.buildBattle; + +import eu.mhsl.minenet.minigames.instance.Dimension; +import eu.mhsl.minenet.minigames.instance.game.stateless.StatelessGame; +import eu.mhsl.minenet.minigames.score.NoScore; + +public class BuildBattle extends StatelessGame { + public BuildBattle() { + super(Dimension.OVERWORLD.key, "buildBattle", new NoScore()); + } + + +} diff --git a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuildBattleFactory.java b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuildBattleFactory.java new file mode 100644 index 0000000..dcb3dcb --- /dev/null +++ b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuildBattleFactory.java @@ -0,0 +1,21 @@ +package eu.mhsl.minenet.minigames.instance.game.stateless.types.buildBattle; + +import eu.mhsl.minenet.minigames.instance.game.Game; +import eu.mhsl.minenet.minigames.instance.game.stateless.config.GameFactory; +import eu.mhsl.minenet.minigames.instance.game.stateless.config.Option; +import eu.mhsl.minenet.minigames.instance.room.Room; +import eu.mhsl.minenet.minigames.message.component.TranslatedComponent; + +import java.util.Map; + +public class BuildBattleFactory implements GameFactory { + @Override + public TranslatedComponent name() { + return TranslatedComponent.byId("game_BuildBattle#name"); + } + + @Override + public Game manufacture(Room parent, Map> configuration) throws Exception { + return new BuildBattle(); + } +} diff --git a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuilderWorld.java b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuilderWorld.java new file mode 100644 index 0000000..d3df729 --- /dev/null +++ b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/buildBattle/BuilderWorld.java @@ -0,0 +1,12 @@ +package eu.mhsl.minenet.minigames.instance.game.stateless.types.buildBattle; + +import eu.mhsl.minenet.minigames.instance.game.stateless.StatelessGame; +import eu.mhsl.minenet.minigames.score.Score; +import net.minestom.server.registry.DynamicRegistry; +import net.minestom.server.world.DimensionType; + +class BuilderWorld extends StatelessGame { + public BuilderWorld(DynamicRegistry.Key dimensionType, String gameName, Score score) { + super(dimensionType, gameName, score); + } +}