moved world check to own class
This commit is contained in:
parent
0707a51a89
commit
93d5c3c67c
src/main/java/eu/mhsl/minecraft/pixelblocks
PixelBlocks.java
listeners
@ -36,6 +36,7 @@ public final class PixelBlocks extends JavaPlugin {
|
|||||||
getServer().getPluginManager().registerEvents(new BlockExplodeListener(), this);
|
getServer().getPluginManager().registerEvents(new BlockExplodeListener(), this);
|
||||||
getServer().getPluginManager().registerEvents(new PlayerPortalListener(), this);
|
getServer().getPluginManager().registerEvents(new PlayerPortalListener(), this);
|
||||||
getServer().getPluginManager().registerEvents(new InventoryListener(), this);
|
getServer().getPluginManager().registerEvents(new InventoryListener(), this);
|
||||||
|
getServer().getPluginManager().registerEvents(new PlayerDropItemListener(), this);
|
||||||
getServer().getPluginManager().registerEvents(new PlayerChangeWorldListener(), this);
|
getServer().getPluginManager().registerEvents(new PlayerChangeWorldListener(), this);
|
||||||
|
|
||||||
Objects.requireNonNull(getCommand("createpixelblock")).setExecutor(new CreatePixelBlockCommand());
|
Objects.requireNonNull(getCommand("createpixelblock")).setExecutor(new CreatePixelBlockCommand());
|
||||||
|
@ -1,23 +1,15 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import eu.mhsl.minecraft.pixelblocks.pixelblock.PixelBlock;
|
import eu.mhsl.minecraft.pixelblocks.pixelblock.PixelBlock;
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.Location;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.block.BlockBreakEvent;
|
import org.bukkit.event.block.BlockBreakEvent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
public class BlockBreakListener implements Listener {
|
public class BlockBreakListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onBlockBreak(BlockBreakEvent event) {
|
static void onBlockBreak(BlockBreakEvent event) {
|
||||||
Location blockLocation = event.getBlock().getLocation();
|
if(CommonEventHandlers.isInPixelWorld(event.getBlock().getWorld())) {
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
PixelBlock pixelBlock = PixelBlock.getPixelBlockFromWorld(event.getBlock().getLocation().getWorld());
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(blockLocation.getWorld())) {
|
|
||||||
PixelBlock pixelBlock = PixelBlock.getPixelBlockFromWorld(blockLocation.getWorld());
|
|
||||||
|
|
||||||
assert pixelBlock != null;
|
assert pixelBlock != null;
|
||||||
pixelBlock.handleBlockBreak(event, true);
|
pixelBlock.handleBlockBreak(event, true);
|
||||||
|
@ -1,22 +1,12 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.Location;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.block.BlockExplodeEvent;
|
import org.bukkit.event.block.BlockExplodeEvent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
public class BlockExplodeListener implements Listener {
|
public class BlockExplodeListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onBlockExplode(BlockExplodeEvent event) {
|
static void onBlockExplode(BlockExplodeEvent event) {
|
||||||
Location eventLocation = event.getBlock().getLocation();
|
CommonEventHandlers.cancelIfInPixelWorld(event, event.getBlock().getWorld());
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(eventLocation.getWorld())) {
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ public class BlockPlaceListener implements Listener {
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
|
|
||||||
World playerWorld = event.getPlayer().getWorld();
|
World playerWorld = event.getPlayer().getWorld();
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1)};
|
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1)}; // don't allow Pixelblocks in the end dimension
|
||||||
|
|
||||||
if(Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
if(Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
||||||
Location newBlockLocation = event.getBlock().getLocation();
|
Location newBlockLocation = event.getBlock().getLocation();
|
||||||
@ -40,11 +40,8 @@ public class BlockPlaceListener implements Listener {
|
|||||||
event.getPlayer().sendMessage("Du kannst nur in der Overworld oder im Nether Pixelblocks platzieren!");
|
event.getPlayer().sendMessage("Du kannst nur in der Overworld oder im Nether Pixelblocks platzieren!");
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Location blockLocation = event.getBlock().getLocation();
|
if(CommonEventHandlers.isInPixelWorld(event.getBlock().getWorld())) {
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
PixelBlock pixelBlock = PixelBlock.getPixelBlockFromWorld(event.getBlock().getLocation().getWorld());
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(blockLocation.getWorld())) {
|
|
||||||
PixelBlock pixelBlock = PixelBlock.getPixelBlockFromWorld(blockLocation.getWorld());
|
|
||||||
|
|
||||||
assert pixelBlock != null;
|
assert pixelBlock != null;
|
||||||
pixelBlock.handleBlockPlace(event, true);
|
pixelBlock.handleBlockPlace(event, true);
|
||||||
|
@ -0,0 +1,25 @@
|
|||||||
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.World;
|
||||||
|
import org.bukkit.event.Cancellable;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static eu.mhsl.minecraft.pixelblocks.PixelBlocks.plugin;
|
||||||
|
|
||||||
|
public class CommonEventHandlers {
|
||||||
|
public static boolean isInPixelWorld(World world) {
|
||||||
|
List<World> standardWorlds = Bukkit.getWorlds().stream()
|
||||||
|
.filter(world1 -> !world1.getName().startsWith(plugin.getDataFolder().getPath()))
|
||||||
|
.toList();
|
||||||
|
|
||||||
|
return !standardWorlds.contains(world);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void cancelIfInPixelWorld(Cancellable event, World world) {
|
||||||
|
if(isInPixelWorld(world)) {
|
||||||
|
event.setCancelled(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,22 +1,12 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.Location;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.entity.CreatureSpawnEvent;
|
import org.bukkit.event.entity.CreatureSpawnEvent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
public class CreatureSpawnListener implements Listener {
|
public class CreatureSpawnListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onCreatureSpawn(CreatureSpawnEvent event) {
|
static void onCreatureSpawn(CreatureSpawnEvent event) {
|
||||||
Location entityLocation = event.getEntity().getLocation();
|
CommonEventHandlers.cancelIfInPixelWorld(event, event.getLocation().getWorld());
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(entityLocation.getWorld())) {
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,24 +1,12 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.entity.EntityDamageEvent;
|
import org.bukkit.event.entity.EntityDamageEvent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
public class EntityDamageListener implements Listener {
|
public class EntityDamageListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onEntityDamage(EntityDamageEvent event) {
|
static void onEntityDamage(EntityDamageEvent event) {
|
||||||
if(event.getEntity() instanceof Player player) {
|
CommonEventHandlers.cancelIfInPixelWorld(event, event.getEntity().getWorld());
|
||||||
World playerWorld = player.getWorld();
|
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,22 +1,12 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.Location;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.entity.EntityExplodeEvent;
|
import org.bukkit.event.entity.EntityExplodeEvent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
public class EntityExplodeListener implements Listener {
|
public class EntityExplodeListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onEntityExplode(EntityExplodeEvent event) {
|
static void onEntityExplode(EntityExplodeEvent event) {
|
||||||
Location eventLocation = event.getLocation();
|
CommonEventHandlers.cancelIfInPixelWorld(event, event.getLocation().getWorld());
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(eventLocation.getWorld())) {
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,23 +1,15 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.inventory.*;
|
import org.bukkit.event.inventory.*;
|
||||||
import org.bukkit.inventory.CraftingInventory;
|
import org.bukkit.inventory.CraftingInventory;
|
||||||
import org.bukkit.inventory.PlayerInventory;
|
import org.bukkit.inventory.PlayerInventory;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
public class InventoryListener implements Listener {
|
public class InventoryListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onInventoryOpen(InventoryOpenEvent event) {
|
static void onInventoryOpen(InventoryOpenEvent event) {
|
||||||
World playerWorld = event.getPlayer().getWorld();
|
if(CommonEventHandlers.isInPixelWorld(event.getPlayer().getWorld())) {
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
|
||||||
if(!(event.getInventory() instanceof PlayerInventory) && !(event.getInventory() instanceof CraftingInventory)) {
|
if(!(event.getInventory() instanceof PlayerInventory) && !(event.getInventory() instanceof CraftingInventory)) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
@ -26,10 +18,7 @@ public class InventoryListener implements Listener {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onInventoryDrag(InventoryDragEvent event) {
|
static void onInventoryDrag(InventoryDragEvent event) {
|
||||||
World playerWorld = event.getWhoClicked().getWorld();
|
if(CommonEventHandlers.isInPixelWorld(event.getWhoClicked().getWorld())) {
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
|
||||||
if(!(event.getInventory() instanceof PlayerInventory) && !(event.getInventory() instanceof CraftingInventory)) {
|
if(!(event.getInventory() instanceof PlayerInventory) && !(event.getInventory() instanceof CraftingInventory)) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
@ -38,10 +27,7 @@ public class InventoryListener implements Listener {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onInventoryClick(InventoryClickEvent event) {
|
static void onInventoryClick(InventoryClickEvent event) {
|
||||||
World playerWorld = event.getWhoClicked().getWorld();
|
if(CommonEventHandlers.isInPixelWorld(event.getWhoClicked().getWorld())) {
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
|
||||||
if(!(event.getInventory() instanceof PlayerInventory) && !(event.getInventory() instanceof CraftingInventory)) {
|
if(!(event.getInventory() instanceof PlayerInventory) && !(event.getInventory() instanceof CraftingInventory)) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
@ -50,25 +36,10 @@ public class InventoryListener implements Listener {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onInventoryInteract(InventoryInteractEvent event) {
|
static void onInventoryInteract(InventoryInteractEvent event) {
|
||||||
World playerWorld = event.getWhoClicked().getWorld();
|
if(CommonEventHandlers.isInPixelWorld(event.getWhoClicked().getWorld())) {
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
|
||||||
if(!(event.getInventory() instanceof PlayerInventory) && !(event.getInventory() instanceof CraftingInventory)) {
|
if(!(event.getInventory() instanceof PlayerInventory) && !(event.getInventory() instanceof CraftingInventory)) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
|
||||||
static void onInventoryMoveItem(InventoryMoveItemEvent event) {
|
|
||||||
World playerWorld = Objects.requireNonNull(event.getDestination().getLocation()).getWorld();
|
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
|
||||||
if(!(event.getDestination() instanceof PlayerInventory) && !(event.getDestination() instanceof CraftingInventory)) {
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -1,23 +1,17 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import eu.mhsl.minecraft.pixelblocks.pixelblock.PixelBlock;
|
import eu.mhsl.minecraft.pixelblocks.pixelblock.PixelBlock;
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.player.PlayerChangedWorldEvent;
|
import org.bukkit.event.player.PlayerChangedWorldEvent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
public class PlayerChangeWorldListener implements Listener {
|
public class PlayerChangeWorldListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onPlayerChangeWorld(PlayerChangedWorldEvent event) {
|
static void onPlayerChangeWorld(PlayerChangedWorldEvent event) {
|
||||||
World worldLeft = event.getFrom();
|
if(CommonEventHandlers.isInPixelWorld(event.getFrom())) {
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
Objects.requireNonNull(PixelBlock.getPixelBlockFromWorld(event.getFrom())).update();
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(worldLeft)) {
|
|
||||||
Objects.requireNonNull(PixelBlock.getPixelBlockFromWorld(worldLeft)).update();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,12 @@
|
|||||||
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
|
import org.bukkit.event.EventHandler;
|
||||||
|
import org.bukkit.event.Listener;
|
||||||
|
import org.bukkit.event.player.PlayerDropItemEvent;
|
||||||
|
|
||||||
|
public class PlayerDropItemListener implements Listener {
|
||||||
|
@EventHandler
|
||||||
|
static void onPlayerDropItem(PlayerDropItemEvent event) {
|
||||||
|
CommonEventHandlers.cancelIfInPixelWorld(event, event.getItemDrop().getWorld());
|
||||||
|
}
|
||||||
|
}
|
@ -1,24 +1,17 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import eu.mhsl.minecraft.pixelblocks.pixelblock.PixelBlock;
|
import eu.mhsl.minecraft.pixelblocks.pixelblock.PixelBlock;
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.player.PlayerMoveEvent;
|
import org.bukkit.event.player.PlayerMoveEvent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
public class PlayerMoveListener implements Listener {
|
public class PlayerMoveListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onPlayerMove(PlayerMoveEvent event) {
|
static void onPlayerMove(PlayerMoveEvent event) {
|
||||||
World playerWorld = event.getPlayer().getWorld();
|
if(CommonEventHandlers.isInPixelWorld(event.getPlayer().getWorld())) {
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(playerWorld)) {
|
|
||||||
Location playerLocation = event.getPlayer().getLocation();
|
Location playerLocation = event.getPlayer().getLocation();
|
||||||
PixelBlock pixelBlock = PixelBlock.getPixelBlockFromWorld(playerWorld);
|
PixelBlock pixelBlock = PixelBlock.getPixelBlockFromWorld(event.getPlayer().getWorld());
|
||||||
assert pixelBlock != null;
|
assert pixelBlock != null;
|
||||||
Location portalLocation = pixelBlock.getPortalLocation().clone();
|
Location portalLocation = pixelBlock.getPortalLocation().clone();
|
||||||
|
|
||||||
|
@ -1,21 +1,12 @@
|
|||||||
package eu.mhsl.minecraft.pixelblocks.listeners;
|
package eu.mhsl.minecraft.pixelblocks.listeners;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.player.PlayerPortalEvent;
|
import org.bukkit.event.player.PlayerPortalEvent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
public class PlayerPortalListener implements Listener {
|
public class PlayerPortalListener implements Listener {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
static void onPlayerPortal(PlayerPortalEvent event) {
|
static void onPlayerPortal(PlayerPortalEvent event) {
|
||||||
World worldLeft = event.getFrom().getWorld();
|
CommonEventHandlers.cancelIfInPixelWorld(event, event.getFrom().getWorld());
|
||||||
World[] standardWorlds = {Bukkit.getWorlds().get(0), Bukkit.getWorlds().get(1), Bukkit.getWorlds().get(2)};
|
|
||||||
|
|
||||||
if(!Arrays.stream(standardWorlds).toList().contains(worldLeft)) {
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user