Test game
This commit is contained in:
		| @@ -11,6 +11,8 @@ import eu.mhsl.minenet.minigames.instance.game.stateless.types.deathcube.Deathcu | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.types.minerun.MinerunFactory; | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.types.spleef.SpleefFactory; | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.types.stickfight.StickFightFactory; | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.types.test.Test; | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.types.test.TestFactory; | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.types.tntrun.TntRunFactory; | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.types.towerdefense.TowerdefenseFactory; | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.types.trafficlightrace.TrafficLightRaceFactory; | ||||
| @@ -28,7 +30,8 @@ public enum GameList { | ||||
|     ANVILRUN(new AnvilRunFactory(), GameType.PVE), | ||||
|     ELYTRARACE(new ElytraRaceFactory(), GameType.PVP), | ||||
|     SPLEEF(new SpleefFactory(), GameType.PVP), | ||||
|     BOWSPLEEF(new BowSpleefFactory(), GameType.PVP); | ||||
|     BOWSPLEEF(new BowSpleefFactory(), GameType.PVP), | ||||
|     Test(new TestFactory(), GameType.OTHER); | ||||
|  | ||||
|     private final GameFactory factory; | ||||
|     private final GameType type; | ||||
|   | ||||
| @@ -7,6 +7,7 @@ import eu.mhsl.minenet.minigames.instance.Dimension; | ||||
| import eu.mhsl.minenet.minigames.world.BlockPallet; | ||||
| import eu.mhsl.minenet.minigames.world.generator.terrain.CircularPlateTerrainGenerator; | ||||
| import net.minestom.server.coordinate.Pos; | ||||
| import net.minestom.server.entity.Player; | ||||
| import net.minestom.server.event.player.PlayerMoveEvent; | ||||
| import net.minestom.server.instance.batch.AbsoluteBlockBatch; | ||||
| import org.jetbrains.annotations.NotNull; | ||||
|   | ||||
| @@ -0,0 +1,47 @@ | ||||
| package eu.mhsl.minenet.minigames.instance.game.stateless.types.test; | ||||
|  | ||||
| import eu.mhsl.minenet.minigames.instance.Dimension; | ||||
| import eu.mhsl.minenet.minigames.instance.game.stateless.StatelessGame; | ||||
| import eu.mhsl.minenet.minigames.score.FirstWinsScore; | ||||
| import net.minestom.server.coordinate.Pos; | ||||
| import net.minestom.server.event.player.PlayerBlockInteractEvent; | ||||
| import net.minestom.server.instance.block.Block; | ||||
| import org.jetbrains.annotations.NotNull; | ||||
|  | ||||
| import java.util.concurrent.CompletableFuture; | ||||
|  | ||||
| public class Test extends StatelessGame { | ||||
|  | ||||
|     int zähler = 0; | ||||
|  | ||||
|     public Test() { | ||||
|         super(Dimension.THE_END.key, "test", new FirstWinsScore()); | ||||
|         eventNode().addListener(PlayerBlockInteractEvent.class, event -> { | ||||
|             if (!isBeforeBeginning) { | ||||
|                 zähler++; | ||||
|             } | ||||
|             if (zähler >= 10) { | ||||
|                 getScore().insertResult(event.getPlayer()); | ||||
|                 System.out.println("Sieg"); | ||||
|             } | ||||
|         }); | ||||
|  | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     protected void onLoad(@NotNull CompletableFuture<Void> callback) { | ||||
|         for(int x = 0; x <= 10; x++) { | ||||
|             for(int z = 0; z <= 10; z++) { | ||||
|                 setBlock(x, 0, z, Block.BEDROCK); | ||||
|             } | ||||
|         } | ||||
|         setBlock(3,1,6, Block.BIRCH_BUTTON.withProperty("face", "floor")); | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
|     @Override | ||||
|     public Pos getSpawn() { | ||||
|         return  new Pos(5, 3, 5); | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,22 @@ | ||||
| package eu.mhsl.minenet.minigames.instance.game.stateless.types.test; | ||||
|  | ||||
| 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 net.kyori.adventure.text.Component; | ||||
|  | ||||
| import java.util.Map; | ||||
|  | ||||
| public class TestFactory implements GameFactory { | ||||
|     @Override | ||||
|     public TranslatedComponent name() { | ||||
|         return TranslatedComponent.byId("test"); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Game manufacture(Room parent, Map<String, Option<?>> configuration) throws Exception { | ||||
|         return new Test().setParent(parent); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user