From cf8f36630ea3b0b4f0178e2251808cfadd82dc39 Mon Sep 17 00:00:00 2001 From: Lixfel Date: Thu, 4 Jun 2020 13:27:28 +0200 Subject: [PATCH] Hotfix flying in arena issue Signed-off-by: Lixfel --- .../src/de/steamwar/fightsystem/fight/FightTeam.java | 11 ----------- .../listener/FreezeWorldStateListener.java | 7 +++++++ 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/FightSystem_Main/src/de/steamwar/fightsystem/fight/FightTeam.java b/FightSystem_Main/src/de/steamwar/fightsystem/fight/FightTeam.java index f2b79ca..22e7a21 100644 --- a/FightSystem_Main/src/de/steamwar/fightsystem/fight/FightTeam.java +++ b/FightSystem_Main/src/de/steamwar/fightsystem/fight/FightTeam.java @@ -228,18 +228,8 @@ public class FightTeam implements IFightTeam{ return ready; } - private void allowFlying(boolean fly){ - for(FightPlayer p : players){ - if(p.getPlayer() != null){ - p.getPlayer().setAllowFlight(fly); - p.getPlayer().setFlying(fly); - } - } - } - public void pasteSchematic(){ FreezeWorld freezer = new FreezeWorld(); - allowFlying(true); DyeColor c = ColorConverter.chat2dye(color); EditSession e; try { @@ -276,7 +266,6 @@ public class FightTeam implements IFightTeam{ broadcast(FightSystem.PREFIX + "§cFehler beim Pasten der Schematic"); throw new SecurityException("Error pasting arena in schematic", ex); } - allowFlying(false); Bukkit.getScheduler().runTaskLater(FightSystem.getPlugin(), () -> HandlerList.unregisterAll(freezer), 3); Bukkit.getScheduler().runTaskLater(FightSystem.getPlugin(), this::teleportToSpawn,40); } diff --git a/FightSystem_Main/src/de/steamwar/fightsystem/listener/FreezeWorldStateListener.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/FreezeWorldStateListener.java index b9f59d6..4f6fb2a 100644 --- a/FightSystem_Main/src/de/steamwar/fightsystem/listener/FreezeWorldStateListener.java +++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/FreezeWorldStateListener.java @@ -13,6 +13,7 @@ import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.event.inventory.InventoryDragEvent; import org.bukkit.event.inventory.InventoryPickupItemEvent; import org.bukkit.event.player.PlayerDropItemEvent; +import org.bukkit.event.player.PlayerKickEvent; import java.util.EnumSet; @@ -47,6 +48,12 @@ public class FreezeWorldStateListener extends BasicListener { event.setCancelled(true); } + @EventHandler + public void handlePlayerKickEvent(PlayerKickEvent e){ + if(e.getReason().equals("Flying is not enabled on this server!")) + e.setCancelled(true); + } + @EventHandler public void onInventoryDrag(InventoryDragEvent event) { if(PersonalKitCreator.notInKitCreator(event.getWhoClicked()))