removed tetris

This commit is contained in:
Lars Neuhaus 2024-10-19 16:28:32 +02:00
parent cfbb2688d2
commit 843fa26c08
3 changed files with 0 additions and 153 deletions

View File

@ -11,7 +11,6 @@ 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.tetris.TetrisFactory;
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;
@ -24,10 +23,7 @@ public enum GameList {
TOWERDEFENSE(new TowerdefenseFactory(), GameType.PROTOTYPE),
BEDWARS(new BedwarsFactory(), GameType.PROTOTYPE),
BACKROOMS(new BackroomsFactory(), GameType.PROTOTYPE),
ANVILRUN(new AnvilRunFactory(), GameType.PROTOTYPE),
TETRIS(new TetrisFactory(), GameType.PROTOTYPE),
TNTRUN(new TntRunFactory(), GameType.OTHER),
ACIDRAIN(new AcidRainFactory(), GameType.PVE),
ELYTRARACE(new ElytraRaceFactory(), GameType.PVP),

View File

@ -1,111 +0,0 @@
package eu.mhsl.minenet.minigames.instance.game.stateless.types.tetris;
import eu.mhsl.minenet.minigames.instance.game.stateless.StatelessGame;
import eu.mhsl.minenet.minigames.score.FirstWinsScore;
import eu.mhsl.minenet.minigames.util.BatchUtil;
import eu.mhsl.minenet.minigames.instance.Dimension;
import eu.mhsl.minenet.minigames.world.generator.terrain.CircularPlateTerrainGenerator;
import net.minestom.server.coordinate.Pos;
import net.minestom.server.coordinate.Vec;
import net.minestom.server.entity.Player;
import net.minestom.server.event.player.PlayerMoveEvent;
import net.minestom.server.instance.batch.AbsoluteBlockBatch;
import net.minestom.server.instance.block.Block;
import org.jetbrains.annotations.NotNull;
import java.util.concurrent.CompletableFuture;
class Tetris extends StatelessGame {
private final boolean isFast;
private final int width = 9;
private final int height = 20;
enum Button {
W,
A,
S,
D,
mouseLeft,
mouseRight,
space
}
public Tetris(boolean isFast) {
super(Dimension.THE_END.key, "Tetris", new FirstWinsScore());
this.setGenerator(new CircularPlateTerrainGenerator(30).setPlateHeight(0));
this.isFast = isFast;
}
protected void pressedButton(Button button) {
switch (button) {
case A -> System.out.println("A");
case S -> System.out.println("S");
case D -> System.out.println("D");
case W -> System.out.println("W");
}
}
@Override
protected void onLoad(@NotNull CompletableFuture<Void> callback) {
AbsoluteBlockBatch batch = new AbsoluteBlockBatch();
for(int y = 45; y <= 45+height; y++) {
for(int x = -(width/2)-1; x <= (width/2)+1; x++) {
batch.setBlock(x, y, 0, Block.STONE);
}
}
for(int y = 45; y <= 45+height; y++) {
batch.setBlock(-(width/2)-1, y, 1, Block.GRAY_CONCRETE);
batch.setBlock((width/2)+1, y, 1, Block.GRAY_CONCRETE);
}
for(int x = -(width/2)-1; x <= (width/2)+1; x++) {
batch.setBlock(x, 45, 1, Block.GRAY_CONCRETE);
}
BatchUtil.loadAndApplyBatch(batch, this, () -> callback.complete(null));
}
@Override
protected void onPlayerMove(@NotNull PlayerMoveEvent playerMoveEvent) {
super.onPlayerMove(playerMoveEvent);
// if(playerMoveEvent.getNewPosition().z() < getSpawn().z()) {
// pressedButton(Button.W);
// }
// if(playerMoveEvent.getNewPosition().z() > getSpawn().z()) {
// pressedButton(Button.S);
// }
// if(playerMoveEvent.getNewPosition().x() < getSpawn().x()) {
// pressedButton(Button.A);
// }
// if(playerMoveEvent.getNewPosition().x() > getSpawn().x()) {
// pressedButton(Button.D);
// }
// playerMoveEvent.getNewPosition().asVec();
Vec movementVector = playerMoveEvent.getPlayer().getPreviousPosition().asVec().sub(playerMoveEvent.getNewPosition());
System.out.println(movementVector);
// if(!(playerMoveEvent.getNewPosition().withYaw(0).withPitch(0) == getSpawn().withYaw(0).withPitch(0))) {
playerMoveEvent.setNewPosition(getSpawn().withView(playerMoveEvent.getNewPosition()));
// return;
// }
}
@Override
protected boolean onPlayerJoin(Player p) {
p.setNoGravity(true);
return super.onPlayerJoin(p);
}
@Override
public Pos getSpawn() {
return new Pos(0, 50, 15).withView(180, 0);
}
}

View File

@ -1,38 +0,0 @@
package eu.mhsl.minenet.minigames.instance.game.stateless.types.tetris;
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.game.stateless.config.ConfigManager;
import eu.mhsl.minenet.minigames.instance.room.Room;
import eu.mhsl.minenet.minigames.message.component.TranslatedComponent;
import net.minestom.server.item.Material;
import java.util.Map;
public class TetrisFactory implements GameFactory {
@Override
public TranslatedComponent name() {
return TranslatedComponent.byId("game_Tetris#name");
}
@Override
public TranslatedComponent description() {
return TranslatedComponent.byId("game_Tetris#description");
}
@Override
public ConfigManager configuration() {
return new ConfigManager();
}
@Override
public Game manufacture(Room parent, Map<String, Option<?>> configuration) {
return new Tetris(false).setParent(parent);
}
@Override
public Material symbol() {
return Material.PURPLE_WOOL;
}
}