secreterproject/src/main/java/net/pivipi/LoginHandler.java

50 lines
1.4 KiB
Java
Raw Normal View History

package net.pivipi;
import net.minestom.server.coordinate.Pos;
import net.minestom.server.entity.GameMode;
import net.minestom.server.entity.Player;
import net.minestom.server.event.GlobalEventHandler;
import net.minestom.server.event.player.AsyncPlayerConfigurationEvent;
import net.minestom.server.event.player.PlayerSpawnEvent;
import net.minestom.server.instance.Instance;
import net.pivipi.ball.Ball;
public class LoginHandler {
private final Instance spawningInstance;
public LoginHandler(Instance spawningInstance) {
this.spawningInstance = spawningInstance;
}
public void setup(GlobalEventHandler globalEventHandler) {
globalEventHandler.addListener(
AsyncPlayerConfigurationEvent.class,
event -> onLogin(event)
);
globalEventHandler.addListener(
PlayerSpawnEvent.class,
event -> onSpawn(event)
);
}
private void onLogin(AsyncPlayerConfigurationEvent event) {
Player player = event.getPlayer();
event.setSpawningInstance(spawningInstance);
event.setHardcore(true);
player.setRespawnPoint(new Pos(0, 5, 0));
}
private void onSpawn(PlayerSpawnEvent event) {
Player player = event.getPlayer();
player.setGameMode(GameMode.CREATIVE);
Ball ball = new Ball();
ball.setInstance(event.getInstance());
ball.teleport(new Pos(0.5, 15, 0.5));
}
}