diff --git a/pom.xml b/pom.xml index 4460825..a7c83bf 100644 --- a/pom.xml +++ b/pom.xml @@ -68,12 +68,6 @@ provided - com.github.yannicklamprecht - worldborderapi - 1.182.0 - provided - - org.jetbrains annotations 23.0.0 diff --git a/src/main/java/de/fanta/challenges/challenges/WorldBorderLevelChallenge.java b/src/main/java/de/fanta/challenges/challenges/WorldBorderLevelChallenge.java index ca3cffd..dbfee06 100644 --- a/src/main/java/de/fanta/challenges/challenges/WorldBorderLevelChallenge.java +++ b/src/main/java/de/fanta/challenges/challenges/WorldBorderLevelChallenge.java @@ -1,6 +1,5 @@ package de.fanta.challenges.challenges; -import com.github.yannicklamprecht.worldborder.api.WorldBorderApi; import de.fanta.challenges.Challenges; import org.bukkit.Bukkit; import org.bukkit.GameMode; @@ -8,6 +7,7 @@ import org.bukkit.Sound; import org.bukkit.StructureType; import org.bukkit.World; +import org.bukkit.WorldBorder; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; @@ -19,14 +19,12 @@ import org.bukkit.event.player.PlayerPortalEvent; import org.bukkit.event.player.PlayerRespawnEvent; import org.bukkit.event.world.SpawnChangeEvent; -import org.bukkit.plugin.RegisteredServiceProvider; import java.util.Objects; -import java.util.logging.Level; public class WorldBorderLevelChallenge implements Listener { - private final Challenges plugin = Challenges.getPlugin(); + private static final Challenges plugin = Challenges.getPlugin(); @EventHandler public void onExpChange(PlayerExpChangeEvent e) { @@ -72,7 +70,7 @@ @EventHandler public void onRespawn(PlayerRespawnEvent e) { if (plugin.getConfig().getBoolean("worldborderlevel")) { - borderSync(); + borderSync(); } } @@ -147,21 +145,19 @@ }, 1L); } - private void borderSync() { - RegisteredServiceProvider worldBorderAPI = plugin.getServer().getServicesManager().getRegistration(WorldBorderApi.class); + public static void borderSync() { int level = plugin.getConfig().getInt("worldborderlevellevel"); - if (worldBorderAPI == null) { - plugin.getLogger().log(Level.SEVERE, "WorldborderAPI null"); - return; - } Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, () -> { + WorldBorder worldBorder = Bukkit.createWorldBorder(); for (Player player : Bukkit.getOnlinePlayers()) { - if (level > 0) { - worldBorderAPI.getProvider().setBorder(player, level * 2, player.getWorld().getSpawnLocation()); - } else { - worldBorderAPI.getProvider().setBorder(player, 1, player.getWorld().getSpawnLocation()); - } + if (level > 0) { + worldBorder.setCenter(player.getWorld().getSpawnLocation()); + worldBorder.setSize(level * 2); + } else { + worldBorder.setSize(1); } + player.setWorldBorder(worldBorder); + } }, 1L); } } diff --git a/src/main/java/de/fanta/challenges/guis/settingsgui/ChallengesGui.java b/src/main/java/de/fanta/challenges/guis/settingsgui/ChallengesGui.java index 21fac1b..ddaa3e0 100644 --- a/src/main/java/de/fanta/challenges/guis/settingsgui/ChallengesGui.java +++ b/src/main/java/de/fanta/challenges/guis/settingsgui/ChallengesGui.java @@ -1,8 +1,8 @@ package de.fanta.challenges.guis.settingsgui; -import com.github.yannicklamprecht.worldborder.api.WorldBorderApi; import de.fanta.challenges.Challenges; import de.fanta.challenges.challenges.AllItemsChallenge; +import de.fanta.challenges.challenges.WorldBorderLevelChallenge; import de.fanta.challenges.utils.ChatUtil; import de.fanta.challenges.utils.guiutils.AbstractWindow; import de.fanta.challenges.utils.guiutils.GUIUtils; @@ -13,7 +13,6 @@ import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import org.bukkit.plugin.RegisteredServiceProvider; public class ChallengesGui extends AbstractWindow { @@ -126,25 +125,17 @@ } } case WORLD_BORDER_LEVEL_INDEX -> { - if (plugin.getServer().getServicesManager().getRegistration(WorldBorderApi.class) == null) { - return; - } - RegisteredServiceProvider worldBorderAPI = plugin.getServer().getServicesManager().getRegistration(WorldBorderApi.class); - if (worldBorderAPI == null) { - return; - } if (plugin.getConfig().getBoolean("worldborderlevel")) { GUIUtils.setConfig("worldborderlevel", false); for (Player pp : Bukkit.getOnlinePlayers()) { - worldBorderAPI.getProvider().resetWorldBorderToGlobal(pp); + if (pp.getWorldBorder() != null) { + pp.getWorldBorder().reset(); + } } GUIUtils.sendTitleToAll("Challenge", "World Border Level deaktiviert", ChatUtil.RED); } else { GUIUtils.setConfig("worldborderlevel", true); - for (Player pp : Bukkit.getOnlinePlayers()) { - worldBorderAPI.getProvider().setBorder(pp, 1, plugin.getServer().getWorld("world").getSpawnLocation()); - } - + WorldBorderLevelChallenge.borderSync(); for (Player pp : Bukkit.getOnlinePlayers()) { pp.teleport(pp.getWorld().getSpawnLocation()); } @@ -279,7 +270,8 @@ item = GUIUtils.createGuiItem(Material.WITHER_SKELETON_SKULL, ChatUtil.GREEN + "Ziel: Wither töten"); } } - case SHUFFLE_RANDOM_DROP_INDEX -> item = GUIUtils.createGuiItem(Material.CHORUS_FLOWER, ChatUtil.GREEN + "Zufällige Drops neu mischen"); + case SHUFFLE_RANDOM_DROP_INDEX -> + item = GUIUtils.createGuiItem(Material.CHORUS_FLOWER, ChatUtil.GREEN + "Zufällige Drops neu mischen"); case BACK_INDEX -> { item = CustomHeads.QUARTZ_ARROW_LEFT.getHead(); diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index c0be9e9..8e18447 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -4,7 +4,7 @@ author: ${project.author} api-version: 1.13 depend: [CubesideUtils, VanishNoPacket, GlobalPort, CubesideNMSUtils, ViaVersion] -softdepend: [NBTAPI, WorldBorderAPI] +softdepend: [NBTAPI] commands: hp: description: Verwalte die HP eines Spielers