diff --git a/src/main/java/eu/mhsl/craftattack/worldmuseum/Main.java b/src/main/java/eu/mhsl/craftattack/worldmuseum/Main.java index 9e17391..3fd5247 100755 --- a/src/main/java/eu/mhsl/craftattack/worldmuseum/Main.java +++ b/src/main/java/eu/mhsl/craftattack/worldmuseum/Main.java @@ -2,10 +2,12 @@ package eu.mhsl.craftattack.worldmuseum; import eu.mhsl.craftattack.worldmuseum.commands.GamemodeCommand; import eu.mhsl.craftattack.worldmuseum.commands.GcCommand; +import eu.mhsl.craftattack.worldmuseum.commands.SpawnCommand; import eu.mhsl.craftattack.worldmuseum.commands.TeleportCommand; import eu.mhsl.craftattack.worldmuseum.listener.*; import eu.mhsl.craftattack.worldmuseum.skins.SkinCache; import eu.mhsl.craftattack.worldmuseum.util.Config; +import eu.mhsl.craftattack.worldmuseum.util.SignHandler; import eu.mhsl.craftattack.worldmuseum.worlds.World; import eu.mhsl.craftattack.worldmuseum.worlds.WorldManager; import eu.mhsl.craftattack.worldmuseum.items.CompassManager; @@ -24,9 +26,10 @@ public class Main { public static void main(String[] args) { // Initialization - System.setProperty("minestom.chunk-view-distance", "16"); + System.setProperty("minestom.chunk-view-distance", "8"); MinecraftServer minecraftServer = MinecraftServer.init(); - MinecraftServer.setChunkViewDistance(8); +// MinecraftServer.setChunkViewDistance(8); + //temp MinecraftServer.getSchedulerManager().scheduleTask(new TablistUpdateTask(), TaskSchedule.tick(20), TaskSchedule.tick(20)); @@ -55,11 +58,13 @@ public class Main { globalEventHandler.addListener(PlayerBlockBreakEvent.class, new BlockBreakListener()); globalEventHandler.addListener(PlayerBlockPlaceEvent.class, new BlockPlaceListener()); globalEventHandler.addListener(PlayerMoveEvent.class, new MovementListener()); + MinecraftServer.getBlockManager().registerHandler("minecraft:sign", SignHandler::new); //commands MinecraftServer.getCommandManager().register(new TeleportCommand()); MinecraftServer.getCommandManager().register(new GcCommand()); MinecraftServer.getCommandManager().register(new GamemodeCommand()); + MinecraftServer.getCommandManager().register(new SpawnCommand()); globalEventHandler.addListener(PlayerLoginEvent.class, event -> { final NewPlayer player = (NewPlayer) event.getPlayer(); diff --git a/src/main/java/eu/mhsl/craftattack/worldmuseum/commands/SpawnCommand.java b/src/main/java/eu/mhsl/craftattack/worldmuseum/commands/SpawnCommand.java new file mode 100644 index 0000000..1395a9a --- /dev/null +++ b/src/main/java/eu/mhsl/craftattack/worldmuseum/commands/SpawnCommand.java @@ -0,0 +1,17 @@ +package eu.mhsl.craftattack.worldmuseum.commands; + +import eu.mhsl.craftattack.worldmuseum.worlds.World; +import net.minestom.server.command.builder.Command; +import net.minestom.server.entity.Player; + +public class SpawnCommand extends Command { + public SpawnCommand() { + super("spawn"); + setDefaultExecutor((sender, context) -> { + Player p = (Player) sender; + World world = (World) p.getInstance(); + assert world != null; + p.teleport(world.getSpawn()); + }); + } +}