Refactor spawn handling into dedicated event listener
- Moved player spawn logic from join event to a new `PlayerSpawnEvent`. - Improved separation of concerns by restructuring `VoidWorld` spawning logic. - Added join logging for better debugging.
This commit is contained in:
@@ -76,7 +76,14 @@ public class Main {
|
|||||||
final VoidWorld voidWorld = new VoidWorld();
|
final VoidWorld voidWorld = new VoidWorld();
|
||||||
|
|
||||||
event.setSpawningInstance(voidWorld);
|
event.setSpawningInstance(voidWorld);
|
||||||
MinecraftServer.getSchedulerManager().scheduleNextTick(() -> {
|
System.out.println("[Join] Player " + player.getUsername() +" joined the server.");
|
||||||
|
});
|
||||||
|
|
||||||
|
globalEventHandler.addListener(PlayerSpawnEvent.class, event -> {
|
||||||
|
if(!event.isFirstSpawn()) return;
|
||||||
|
MuseumPlayer player = (MuseumPlayer) event.getPlayer();
|
||||||
|
final VoidWorld voidWorld = new VoidWorld();
|
||||||
|
|
||||||
player.setPermissionLevel(4);
|
player.setPermissionLevel(4);
|
||||||
player.setRespawnPoint(voidWorld.getSpawn());
|
player.setRespawnPoint(voidWorld.getSpawn());
|
||||||
player.setGameMode(GameMode.SPECTATOR);
|
player.setGameMode(GameMode.SPECTATOR);
|
||||||
@@ -85,9 +92,6 @@ public class Main {
|
|||||||
voidWorld.movePlayer(player);
|
voidWorld.movePlayer(player);
|
||||||
});
|
});
|
||||||
|
|
||||||
System.out.println("[Join] Player " + player.getUsername() +" joined the server.");
|
|
||||||
});
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
PORT = Integer.parseInt(args[0]);
|
PORT = Integer.parseInt(args[0]);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user