diff --git a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/Tetris.java b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/Tetris.java index adfab17..827b4c9 100644 --- a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/Tetris.java +++ b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/Tetris.java @@ -5,7 +5,6 @@ import eu.mhsl.minenet.minigames.instance.game.stateless.types.tetris.game.Tetri import eu.mhsl.minenet.minigames.instance.Dimension; import eu.mhsl.minenet.minigames.instance.game.stateless.types.tetris.game.Tetromino; import eu.mhsl.minenet.minigames.score.PointsWinScore; -import eu.mhsl.minenet.minigames.world.generator.terrain.CircularPlateTerrainGenerator; import net.kyori.adventure.text.Component; import net.minestom.server.coordinate.Pos; import net.minestom.server.coordinate.Vec; @@ -25,7 +24,7 @@ class Tetris extends StatelessGame { public Tetris() { super(Dimension.THE_END.key, "Tetris", new PointsWinScore()); - this.setGenerator(new CircularPlateTerrainGenerator(30).setPlateHeight(0)); +// this.setGenerator(new CircularPlateTerrainGenerator(20)); eventNode() .addListener(PlayerUseItemEvent.class, this::onPlayerInteract) @@ -119,7 +118,7 @@ class Tetris extends StatelessGame { p.setSprinting(false); if(this.tetrisGames.get(p) == null) { - this.tetrisGames.put(p, new TetrisGame(this, getSpawn().sub(6, 8, 15).add(this.tetrisGames.size()*23, 0, 0))); + this.tetrisGames.put(p, new TetrisGame(this, getSpawn().sub(6, 8, 15).add(this.tetrisGames.size()*27, 0, 0))); this.tetrisGames.get(p).generate(); } TetrisGame tetrisGame = this.tetrisGames.get(p); @@ -132,6 +131,6 @@ class Tetris extends StatelessGame { @Override public Pos getSpawn() { - return new Pos(-50, 50, 15).withView(180, 0); + return new Pos(0, 30, 15).withView(180, 0); } } diff --git a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/game/Playfield.java b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/game/Playfield.java index 819f013..8eac64c 100644 --- a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/game/Playfield.java +++ b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/game/Playfield.java @@ -28,11 +28,11 @@ public class Playfield { } public Pos getHoldPosition() { - return this.lowerLeftCorner.add(-4, 19, 0); + return this.lowerLeftCorner.add(-4, 18, 1); } public Pos getNextPosition() { - return this.lowerLeftCorner.add(14, 19, 0); + return this.lowerLeftCorner.add(14, 18, 1); } public void generate() { @@ -50,6 +50,19 @@ public class Playfield { } } + for(int x = 0; x < 6; x++) { + for(int y = 0; y < 6; y++) { + if(x==0 || x==5 || y==0 || y==5) { + batch.setBlock(this.getHoldPosition().add(x-2, y-2, 0), Block.BLACK_CONCRETE); + batch.setBlock(this.getNextPosition().add(x-2, y-2, 0), Block.BLACK_CONCRETE); + batch.setBlock(this.getHoldPosition().add(x-2, y-2, -1), Block.BLACK_CONCRETE); + batch.setBlock(this.getNextPosition().add(x-2, y-2, -1), Block.BLACK_CONCRETE); + } + batch.setBlock(this.getHoldPosition().add(x-2, y-2, -1), Block.QUARTZ_BLOCK); + batch.setBlock(this.getNextPosition().add(x-2, y-2, -1), Block.QUARTZ_BLOCK); + } + } + batch.setBlock(getPlayerSpawnPosition().sub(0, 1, 0), Block.STONE); // batch.setBlock(getPlayerSpawnPosition(), Block.IRON_TRAPDOOR.withProperty("half", "bottom")); diff --git a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/game/TetrisGame.java b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/game/TetrisGame.java index 928469f..6b8f921 100644 --- a/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/game/TetrisGame.java +++ b/src/main/java/eu/mhsl/minenet/minigames/instance/game/stateless/types/tetris/game/TetrisGame.java @@ -97,7 +97,7 @@ public class TetrisGame { this.playfield.generate(); this.currentTetromino.setPosition(this.tetrominoSpawnPosition); - this.currentTetromino.draw(); + this.currentTetromino.draw(false); } public void tick() {