adding easy event canceling

This commit is contained in:
Martin Olischläger 2023-04-30 15:03:05 +02:00
parent 6b9cc4ffc0
commit af5b2e7b7f
2 changed files with 25 additions and 3 deletions

View File

@ -18,6 +18,7 @@ import net.minestom.server.MinecraftServer;
import net.minestom.server.entity.GameMode;
import net.minestom.server.event.GlobalEventHandler;
import net.minestom.server.event.inventory.InventoryPreClickEvent;
import net.minestom.server.event.item.ItemDropEvent;
import net.minestom.server.event.player.*;
import net.minestom.server.timer.TaskSchedule;
@ -57,10 +58,19 @@ public class Main {
globalEventHandler.addListener(PlayerChunkUnloadEvent.class, new ChunkUnloading());
globalEventHandler.addListener(InventoryPreClickEvent.class, new InventoryClickListener());
globalEventHandler.addListener(PlayerBlockBreakEvent.class, new BlockBreakListener());
globalEventHandler.addListener(PlayerBlockPlaceEvent.class, new BlockPlaceListener());
globalEventHandler.addListener(PlayerMoveEvent.class, new MovementListener());
globalEventHandler.addListener(PlayerBlockPlaceEvent.class, new BlockPlaceListener());
MinecraftServer.getBlockManager().registerHandler("minecraft:sign", SignHandler::new);
//canceled Events
globalEventHandler.addListener(PlayerSwapItemEvent.class, new EventCancel<>());
globalEventHandler.addListener(ItemDropEvent.class, new EventCancel<>());
//commands
MinecraftServer.getCommandManager().register(new TeleportCommand());
MinecraftServer.getCommandManager().register(new GcCommand());
@ -74,9 +84,9 @@ public class Main {
event.setSpawningInstance(startworld);
player.setPermissionLevel(4);
player.setRespawnPoint(startworld.getSpawn());
player.setGameMode(GameMode.CREATIVE);
player.setGameMode(GameMode.SURVIVAL);
player.setAllowFlying(true);
player.getInventory().setItemStack(0, compassManager.getCompass());
player.getInventory().setItemStack(8, BedManager.getBedItem());
});

View File

@ -0,0 +1,12 @@
package eu.mhsl.craftattack.worldmuseum.listener;
import net.minestom.server.event.trait.CancellableEvent;
import java.util.function.Consumer;
public class EventCancel<T extends CancellableEvent> implements Consumer<T> {
@Override
public void accept(T cancellableEvent) {
cancellableEvent.setCancelled(true);
}
}