removing gamemode creative option

This commit is contained in:
Martin Olischläger 2023-04-30 15:06:08 +02:00
parent af5b2e7b7f
commit 15d594528e
2 changed files with 24 additions and 4 deletions

View File

@ -8,10 +8,29 @@ import net.minestom.server.entity.Player;
public class GamemodeCommand extends Command {
public GamemodeCommand() {
super("gamemode", "gm");
addSyntax((sender, context) -> ((Player) sender).setGameMode(
context.get("target")),
ArgumentType.Enum("target", GameMode.class).setFormat(ArgumentEnum.Format.LOWER_CASED)
super("gamemode");
addSyntax(
(sender, context) -> {
((Player) sender).setGameMode(((PlayerGameModes) context.get("target")).getGameMode());
((Player) sender).setAllowFlying(true);
}, ArgumentType.Enum("target", PlayerGameModes.class).setFormat(ArgumentEnum.Format.LOWER_CASED)
);
}
public enum PlayerGameModes {
SURVIVAL(GameMode.SURVIVAL),
SPECTATOR(GameMode.SPECTATOR),
ADVENTURE(GameMode.ADVENTURE);
final GameMode gameMode;
PlayerGameModes(GameMode gameMode) {
this.gameMode = gameMode;
}
public GameMode getGameMode() {
return gameMode;
}
}
}

View File

@ -21,5 +21,6 @@ public class TeleportCommand extends Command {
else
p.teleport(targetPlayer.getPosition());
}), playerArgument);
}
}