diff --git a/Challenge/src/main/java/de/fanta/challenge/Challenge.java b/Challenge/src/main/java/de/fanta/challenge/Challenge.java index 0efb479..9372b4f 100644 --- a/Challenge/src/main/java/de/fanta/challenge/Challenge.java +++ b/Challenge/src/main/java/de/fanta/challenge/Challenge.java @@ -13,9 +13,6 @@ import de.fanta.challenge.events.TimerChangedEvent; import de.fanta.challenge.guis.BackpackGui; import de.fanta.challenge.listeners.EventRegistration; -import de.fanta.challenge.schedular.BukkitScheduler; -import de.fanta.challenge.schedular.CancellableTask; -import de.fanta.challenge.schedular.Scheduler; import de.fanta.challenge.scoreboard.BukkitScoreBoardManager; import de.fanta.challenge.scoreboard.ScoreBoardMananger; import de.fanta.challenge.scoreboard.ScoreManager; @@ -46,6 +43,7 @@ import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.entity.Player; import org.bukkit.plugin.java.JavaPlugin; +import org.bukkit.scheduler.BukkitTask; import org.jetbrains.annotations.NotNull; import java.io.File; @@ -73,7 +71,7 @@ public NMSUtils nmsUtils; public PlayerUUIDCache playerUUIDCache; public String texturepacklink = null; - public CancellableTask resetTask; + public BukkitTask resetTask; public boolean reset = false; private TextComponent prefixComponent; private TextComponent guiPrefix; @@ -111,7 +109,6 @@ public boolean resetwithseed; private static final String CubesideMod_ModChannel = "cubesidemod:data"; - private Scheduler scheduler; private ColorUtils colorUtils; private final Path challengeSavePath = new File("/home/storagebox/Challenge-saves").toPath(); private final Path adventureSavePath = new File("/home/storagebox/Adventure-saves/").toPath(); @@ -151,9 +148,6 @@ statistics = new Statistics(this); } - getLogger().log(Level.INFO, "Bukkit found. Use Bukkit Scheduler"); - scheduler = new BukkitScheduler(this); - colorUtils = new ColorUtils(this); this.timer = new Timer(this); this.rndDrops = new RandomDropsChallenge(); @@ -185,15 +179,6 @@ this.sbManager = new BukkitScoreBoardManager(this); this.componentUtil = new ComponentUtil(); - getScheduler().runGlobalDelayed(() -> { - plugin.setDayLightCircle(false); - MLGChallenge.checkMLGWorld(); - setPvP(Config.getBoolean("pvp")); - if (plugin.getServerType() != ServerType.ADVENTURE) { - plugin.getSBManager().initScoreboard(); - } - }, 1L); - resetwithseed = Config.getBoolean("resetwithseed"); if (Config.getBoolean("World_Reset") && (serverType == ServerType.CHALLENGE || serverType == ServerType.CHALLENGE_EVENT)) { @@ -298,11 +283,20 @@ getServer().getMessenger().registerOutgoingPluginChannel(this, CubesideMod_ModChannel); - plugin.getScheduler().runGlobalDelayed(() -> { + plugin.getServer().getScheduler().runTaskLater(this, () -> { + plugin.setDayLightCircle(false); + MLGChallenge.checkMLGWorld(); + setPvP(Config.getBoolean("pvp")); + if (plugin.getServerType() != ServerType.ADVENTURE) { + plugin.getSBManager().initScoreboard(); + } + }, 1L); + + plugin.getServer().getScheduler().runTaskLater(this, () -> { EventRegistration.pM.callEvent(new ServerStatusChangedEvent(true)); EventRegistration.pM.callEvent(new TimerChangedEvent(timer.isRunning())); EventRegistration.pM.callEvent(new PlayerCountChangedEvent(Bukkit.getOnlinePlayers().size() - plugin.getVanish().countVanishPlayers())); - }, 200L); + }, 1L); getLogger().info("Plugin loaded!"); } @@ -497,7 +491,7 @@ public void startResetTask() { getLogger().info("Start Reset Task"); - resetTask = plugin.getScheduler().runGlobalDelayed(() -> Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "reset confirm"), 3 * 60 * 20); + resetTask = plugin.getServer().getScheduler().runTaskLater(this, () -> Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "reset confirm"), 3 * 60 * 20); reset = true; } @@ -536,7 +530,7 @@ public void setKeepInventory(Boolean value) { for (World w : plugin.getServer().getWorlds()) { if (w != null) { - getScheduler().run(() -> w.setGameRule(GameRule.KEEP_INVENTORY, value)); + w.setGameRule(GameRule.KEEP_INVENTORY, value); } } } @@ -548,7 +542,7 @@ public void setNaturalRegeneration(Boolean value) { for (World w : plugin.getServer().getWorlds()) { if (w != null) { - getScheduler().run(() -> w.setGameRule(GameRule.NATURAL_REGENERATION, value)); + w.setGameRule(GameRule.NATURAL_REGENERATION, value); } } } @@ -560,7 +554,7 @@ public void setDayLightCircle(boolean value) { for (World world : Bukkit.getWorlds()) { if (world.getEnvironment() == World.Environment.NORMAL && plugin.getServerType() != ServerType.ADVENTURE) { - getScheduler().run(() -> world.setGameRule(GameRule.DO_DAYLIGHT_CYCLE, value)); + world.setGameRule(GameRule.DO_DAYLIGHT_CYCLE, value); } } } @@ -685,10 +679,6 @@ return CubesideMod_ModChannel; } - public Scheduler getScheduler() { - return scheduler; - } - public ColorUtils getColorUtils() { return colorUtils; } diff --git a/Challenge/src/main/java/de/fanta/challenge/Timer.java b/Challenge/src/main/java/de/fanta/challenge/Timer.java index 96d5145..9c7e4e7 100644 --- a/Challenge/src/main/java/de/fanta/challenge/Timer.java +++ b/Challenge/src/main/java/de/fanta/challenge/Timer.java @@ -1,7 +1,6 @@ package de.fanta.challenge; import de.fanta.challenge.events.TimerChangedEvent; -import de.fanta.challenge.schedular.CancellableTask; import de.fanta.challenge.utils.Config; import de.fanta.challenge.utils.SaveWorldUtils; import de.fanta.challengeutils.Color; @@ -17,14 +16,15 @@ import org.bukkit.entity.Creature; import org.bukkit.entity.Entity; import org.bukkit.entity.Player; +import org.bukkit.scheduler.BukkitTask; import java.util.Optional; public class Timer { private final Challenge plugin; - private CancellableTask actionBarTaskId; - private CancellableTask idleActionBarTaskId; + private BukkitTask actionBarTaskId; + private BukkitTask idleActionBarTaskId; private long time; // milliseconds private TimerMode mode; private long countingSinceTimestamp; @@ -47,7 +47,7 @@ idleActionBarTaskId.cancel(); idleActionBarTaskId = null; } - actionBarTaskId = plugin.getScheduler().runGlobalAtFixedRate(() -> { + actionBarTaskId = plugin.getServer().getScheduler().runTaskTimer(plugin, () -> { if (mode == TimerMode.DOWN) { if (time <= 0) { if (Config.getBoolean("event.enabled")) { @@ -90,8 +90,8 @@ actionBarTaskId = null; sendIdleActionBar(); } - for (Player pp : Bukkit.getOnlinePlayers()) { - plugin.getScheduler().runDelayedOnEntity(pp, () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { + for (Player pp : Bukkit.getOnlinePlayers()) { for (final Entity entity : pp.getNearbyEntities(100, 100, 100)) { if ((entity instanceof final Creature creature)) { if ((creature.getTarget() != null) && creature.getTarget().equals(pp)) { @@ -99,13 +99,13 @@ } } } - }, 1); - } + } + }, 1); Bukkit.getPluginManager().callEvent(new TimerChangedEvent(false)); } private void sendIdleActionBar() { - idleActionBarTaskId = plugin.getScheduler().runGlobalAtFixedRate(() -> { + idleActionBarTaskId = plugin.getServer().getScheduler().runTaskTimer(plugin, () -> { for (Player p : Bukkit.getOnlinePlayers()) { if (!plugin.getVanish().isVanish(p)) { sendFormatedTimerActionBarToPlayer(p, Component.text("Der Timer ist pausiert.", Style.style(Color.RED, TextDecoration.BOLD))); diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/AllItemsChallenge.java b/Challenge/src/main/java/de/fanta/challenge/challenges/AllItemsChallenge.java index 7aa37b5..bbaace8 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/AllItemsChallenge.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/AllItemsChallenge.java @@ -1,7 +1,6 @@ package de.fanta.challenge.challenges; import de.fanta.challenge.Challenge; -import de.fanta.challenge.schedular.CancellableTask; import de.fanta.challenge.utils.Config; import de.fanta.challenge.utils.CubesideModUtils; import de.fanta.challengeutils.Color; @@ -14,6 +13,7 @@ import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; +import org.bukkit.scheduler.BukkitTask; import java.io.IOException; import java.util.ArrayList; @@ -23,7 +23,7 @@ public class AllItemsChallenge { - public static CancellableTask ItemScheduler; + public static BukkitTask ItemScheduler; public static BossBar bossBar; public static Material item; public static final List foundItems = new ArrayList<>(); @@ -69,7 +69,7 @@ } public static void update() { - ItemScheduler = plugin.getScheduler().runGlobalAtFixedRate(() -> { + ItemScheduler = plugin.getServer().getScheduler().runTaskTimer(plugin, () -> { if (Config.getBoolean("allitems") && Challenge.getPlugin().getTimer().isRunning()) { if (!itemsToSearch.isEmpty()) { for (Player pp : Bukkit.getOnlinePlayers()) { diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/BedrockWallChallenge.java b/Challenge/src/main/java/de/fanta/challenge/challenges/BedrockWallChallenge.java index 528a996..0714913 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/BedrockWallChallenge.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/BedrockWallChallenge.java @@ -28,7 +28,7 @@ } private void setWall(Location loc) { - plugin.getScheduler().runLocalDelayed(loc, () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { World world = loc.getWorld(); for (int y = world.getMinHeight(); y < world.getMaxHeight(); y++) { Block block = loc.set(loc.getX(), y, loc.getZ()).getBlock(); diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/BridgeRaceChallengeEvent.java b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/BridgeRaceChallengeEvent.java index 60bc3e4..c912132 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/BridgeRaceChallengeEvent.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/BridgeRaceChallengeEvent.java @@ -2,7 +2,6 @@ import de.fanta.challenge.Challenge; import de.fanta.challenge.events.TimerChangedEvent; -import de.fanta.challenge.schedular.CancellableTask; import de.fanta.challenge.scoreboard.ChallengePlayer; import de.fanta.challenge.scoreboard.Scorable; import de.fanta.challenge.scoreboard.ScoreManager; @@ -34,6 +33,7 @@ import org.bukkit.event.player.PlayerPortalEvent; import org.bukkit.event.player.PlayerRespawnEvent; import org.bukkit.inventory.ItemStack; +import org.bukkit.scheduler.BukkitTask; import java.util.ArrayList; import java.util.HashMap; @@ -51,7 +51,7 @@ private static boolean running; private static final HashMap playerSpawnLocations = new HashMap<>(); private static final Map bossBarMap = new HashMap<>(); - private CancellableTask spawnItemTask; + private BukkitTask spawnItemTask; private static final ArrayList materials = new ArrayList<>(); private static Location lastSpawnLocation = null; private static boolean load = false; @@ -222,7 +222,7 @@ ArrayList> allTasks = new ArrayList<>(); CompletableFuture future = new CompletableFuture<>(); allTasks.add(future); - plugin.getScheduler().run(() -> { + plugin.getServer().getScheduler().runTask(plugin, () -> { try { voidWorld = Bukkit.getWorld("VOID"); if (voidWorld == null) { @@ -239,12 +239,12 @@ } }); CompletableFuture waitForAll = CompletableFuture.allOf(allTasks.toArray(new CompletableFuture[0])); - plugin.getScheduler().runAsync(() -> { + plugin.getServer().getScheduler().runTaskAsynchronously(plugin, () -> { try { waitForAll.get(); for (Player pp : plugin.getVanish().getPlayerListWithoutVanishPlayers()) { createPlayerLocation(pp); - plugin.getScheduler().runLocalDelayed(playerSpawnLocations.get(pp.getUniqueId()), () -> teleportPlayer(pp), 1L); + teleportPlayer(pp); } load = true; } catch (InterruptedException | ExecutionException e) { @@ -275,7 +275,7 @@ setBedrock(getPlayerLocation(player).clone()); Location teleportLocation = getPlayerLocation(player).clone().add(0.5, 2, 0.5); teleportLocation.setYaw(-90); - plugin.getScheduler().runDelayedOnEntity(player, () -> player.teleport(teleportLocation), 1L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> player.teleport(teleportLocation), 1L); } private static Location getPlayerLocation(Player player) { @@ -299,7 +299,7 @@ } private void startItemSpawnTask() { - spawnItemTask = plugin.getScheduler().runGlobalAtFixedRate(this::itemSpawn, 6 * 20L, 6 * 20L); + spawnItemTask = plugin.getServer().getScheduler().runTaskTimer(plugin, this::itemSpawn, 6 * 20L, 6 * 20L); } private void stopItemSpawnTask() { @@ -314,7 +314,7 @@ for (Player player : plugin.getVanish().getPlayerListWithoutVanishPlayers()) { ItemStack randomItem = new ItemStack(materials.get(random.nextInt(materials.size()))); Location loc = getPlayerLocation(player).clone().add(0.5, 1, 0.5); - plugin.getScheduler().runLocalDelayed(loc, () -> loc.getWorld().dropItem(loc, randomItem), 1L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> loc.getWorld().dropItem(loc, randomItem), 1L); } } diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/DeathrunChallengeEvent.java b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/DeathrunChallengeEvent.java index d83e30a..9e6ea2c 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/DeathrunChallengeEvent.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/DeathrunChallengeEvent.java @@ -2,7 +2,6 @@ import de.fanta.challenge.Challenge; import de.fanta.challenge.events.TimerChangedEvent; -import de.fanta.challenge.schedular.CancellableTask; import de.fanta.challenge.scoreboard.ChallengePlayer; import de.fanta.challenge.scoreboard.Scorable; import de.fanta.challenge.scoreboard.ScoreManager; @@ -41,6 +40,7 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.persistence.PersistentDataContainer; import org.bukkit.persistence.PersistentDataType; +import org.bukkit.scheduler.BukkitTask; import java.util.ArrayList; import java.util.HashMap; @@ -61,7 +61,7 @@ private final Map> currentBarrier = new HashMap<>(); private static final Material barrierBlock = Material.GLASS; - private CancellableTask task; + private BukkitTask task; private static final NamespacedKey UUIDKey = new NamespacedKey(Challenge.getPlugin(), "uuid_deathrun"); @@ -123,7 +123,7 @@ public void onDamage(EntityDamageEvent e) { if (e.getEntity() instanceof Player p) { if (Objects.equals(Config.getString("event.type"), "deathrun") && plugin.getTimer().isRunning()) { - plugin.getScheduler().runDelayedOnEntity(p, () -> p.setWalkSpeed((float) (p.getHealth() / 100f)), 1L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> p.setWalkSpeed((float) (p.getHealth() / 100f)), 1L); } } } @@ -175,8 +175,8 @@ } } } else { - plugin.getScheduler().run(() -> world.setGameRule(GameRule.MAX_ENTITY_CRAMMING, Bukkit.getServer().getMaxPlayers())); - plugin.getScheduler().runGlobalDelayed(() -> { + world.setGameRule(GameRule.MAX_ENTITY_CRAMMING, Bukkit.getServer().getMaxPlayers()); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { for (Player pp : Bukkit.getOnlinePlayers()) { plugin.getScoreManager().join(new ChallengePlayer(pp.getUniqueId())); Location spawn = world.getSpawnLocation(); @@ -323,7 +323,7 @@ } public void startUpdateTask() { - task = plugin.getScheduler().runGlobalAtFixedRate(this::updateScoreAndBossBar, 1L, 1L); + task = plugin.getServer().getScheduler().runTaskTimer(plugin, this::updateScoreAndBossBar, 1L, 1L); } public void stopUpdateTask() { diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/SammelFieberChallengeEvent.java b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/SammelFieberChallengeEvent.java index 742f4ea..faea954 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/SammelFieberChallengeEvent.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/SammelFieberChallengeEvent.java @@ -173,7 +173,7 @@ } } } - plugin.getScheduler().runLocalDelayed(e.getInventory().getLocation(), () -> e.getInventory().clear(), 1); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> e.getInventory().clear(), 1); } private void updatePlayerBossBar() { diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/TimeChallengeEvent.java b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/TimeChallengeEvent.java index 82d9b7f..0b183d7 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/TimeChallengeEvent.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/TimeChallengeEvent.java @@ -2,7 +2,6 @@ import de.fanta.challenge.Challenge; import de.fanta.challenge.events.TimerChangedEvent; -import de.fanta.challenge.schedular.CancellableTask; import de.fanta.challenge.utils.Config; import de.iani.cubesideutils.bukkit.plugin.api.OnlinePlayerData; import de.iani.cubesideutils.bukkit.plugin.api.UtilsApiBukkit; @@ -11,6 +10,7 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.scheduler.BukkitTask; import java.util.HashMap; import java.util.Objects; @@ -21,7 +21,7 @@ private final Challenge plugin = Challenge.getPlugin(); private static final HashMap playerPlayTimes = new HashMap<>(); private static final HashMap playerStartTimes = new HashMap<>(); - private CancellableTask updateTimesTask; + private BukkitTask updateTimesTask; @EventHandler public void onActivation(TimerChangedEvent event) { @@ -38,7 +38,7 @@ } private void startUpdateTask() { - updateTimesTask = plugin.getScheduler().runGlobalAtFixedRate(() -> { + updateTimesTask = plugin.getServer().getScheduler().runTaskTimer(plugin, () -> { System.out.println("Update Times"); for (Player player : plugin.getVanish().getPlayerListWithoutVanishPlayers()) { updatePlayTime(player); diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/forcequest/QuestType.java b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/forcequest/QuestType.java index 4f027b6..e943c24 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/forcequest/QuestType.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/ChallengeEvents/forcequest/QuestType.java @@ -3,6 +3,7 @@ public enum QuestType { ForceItem(45), ForceBiome(25), + ForceStructure(25), ForceMob(30), ForceEffect(25), ForceDeath(15), diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/FloorIsLavaChallenge.java b/Challenge/src/main/java/de/fanta/challenge/challenges/FloorIsLavaChallenge.java index b2c096e..0b002ae 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/FloorIsLavaChallenge.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/FloorIsLavaChallenge.java @@ -32,7 +32,7 @@ int newz = newLoc.getBlockZ(); if (newx != oldx || newy != oldy || newz != oldz) { Block b = p.getLocation().subtract(0, 1, 0).getBlock(); - plugin.getScheduler().runLocalDelayed(b.getLocation(), () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { if (!b.isPassable() && !LAVA_BLOCKS.contains(b)) { LAVA_BLOCKS.add(b); setMagma(b, b.getType()); @@ -44,21 +44,21 @@ } public static void setMagma(Block b, Material old) { - plugin.getScheduler().runLocalDelayed(b.getLocation(), () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { b.setType(Material.MAGMA_BLOCK); setLava(b, old); }, 60L); } public static void setLava(Block b, Material old) { - plugin.getScheduler().runLocalDelayed(b.getLocation(), () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { b.setType(Material.LAVA); setOld(b, old); }, 100L); } public static void setOld(Block b, Material old) { - plugin.getScheduler().runLocalDelayed(b.getLocation(), () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { if (b.getType() == Material.LAVA || b.getType() == Material.OBSIDIAN || b.getType() == Material.COBBLESTONE || b.getType() == Material.STONE) { b.setType(old); } diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/MLGChallenge.java b/Challenge/src/main/java/de/fanta/challenge/challenges/MLGChallenge.java index 9fdd842..cf50d8f 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/MLGChallenge.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/MLGChallenge.java @@ -3,7 +3,6 @@ import de.fanta.challenge.Challenge; import de.fanta.challenge.events.TimerChangedEvent; import de.fanta.challenge.gravestones.GravestoneUtils; -import de.fanta.challenge.schedular.CancellableTask; import de.fanta.challenge.utils.Config; import org.bukkit.Bukkit; import org.bukkit.GameMode; @@ -25,6 +24,7 @@ import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.player.PlayerTeleportEvent; import org.bukkit.inventory.ItemStack; +import org.bukkit.scheduler.BukkitTask; import java.util.ArrayList; import java.util.HashMap; @@ -38,7 +38,7 @@ private static final Random random = new Random(); private static boolean MLGinProgress; private static boolean running; - private static CancellableTask task; + private static BukkitTask task; private static final HashMap mlgPlayerMap = new HashMap<>(); private static int timeSinceMLG; // seconds+ private static Location mlgLocation; @@ -62,7 +62,7 @@ if (isMLGinProgress() && e.getPlayer().getWorld().getName().equals("mlg_challenge")) { if (mlgPlayerMap.containsKey(e.getPlayer().getUniqueId())) { mlgResult(e.getPlayer(), true); - plugin.getScheduler().runDelayedOnEntity(e.getPlayer(), () -> e.getPlayer().spigot().respawn(), 1L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> e.getPlayer().spigot().respawn(), 1L); } } } @@ -97,7 +97,7 @@ @EventHandler public void onBucketEmpty(PlayerBucketEmptyEvent e) { if (isMLGinProgress() && e.getPlayer().getWorld().getName().equals("mlg_challenge")) { - plugin.getScheduler().runLocalDelayed(e.getBlock().getLocation(), () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { if (mlgPlayerMap.containsKey(e.getPlayer().getUniqueId()) && !e.getPlayer().isDead()) { mlgResult(e.getPlayer(), false); } @@ -108,7 +108,7 @@ @EventHandler public void onBlockPlace(BlockPlaceEvent e) { if (isMLGinProgress() && e.getPlayer().getWorld().getName().equals("mlg_challenge")) { - plugin.getScheduler().runLocalDelayed(e.getBlock().getLocation(), () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { if (mlgPlayerMap.containsKey(e.getPlayer().getUniqueId()) && !e.getPlayer().isDead()) { mlgResult(e.getPlayer(), false); } @@ -120,7 +120,7 @@ public void onEntityMount(EntityMountEvent e) { if (isMLGinProgress() && e.getMount().getWorld().getName().equals("mlg_challenge")) { if (e.getEntity() instanceof Player player) { - plugin.getScheduler().runDelayedOnEntity(e.getMount(), () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { if (mlgPlayerMap.containsKey(player.getUniqueId()) && !player.isDead()) { mlgResult(player, false); } @@ -178,9 +178,9 @@ mlgBlocks.add(Material.TWISTING_VINES); } Material mlgItem = mlgBlocks.get(random.nextInt(mlgBlocks.size())); - plugin.getScheduler().runDelayedOnEntity(p, () -> p.getInventory().setItemInMainHand(new ItemStack(mlgItem)), 1L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> p.getInventory().setItemInMainHand(new ItemStack(mlgItem)), 1L); } else { - plugin.getScheduler().runDelayedOnEntity(p, () -> p.getInventory().setItemInMainHand(new ItemStack(Material.WATER_BUCKET)), 1L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> p.getInventory().setItemInMainHand(new ItemStack(Material.WATER_BUCKET)), 1L); } if (mlgLocation == null) { @@ -220,14 +220,14 @@ } if (mlgPlayerMap.isEmpty()) { - plugin.getScheduler().runGlobalDelayed(() -> setMLGinProgress(false), 60L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> setMLGinProgress(false), 60L); } } private static void mlgBack(final Player p, Location loc, ItemStack[] content) { p.teleportAsync(loc); p.getInventory().setContents(content); - plugin.getScheduler().runDelayedOnEntity(p, () -> p.setInvulnerable(false), 60L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> p.setInvulnerable(false), 60L); } private static void tick() { @@ -259,7 +259,7 @@ public static void startTask() { if (task == null && plugin.getTimer().isRunning()) { - task = plugin.getScheduler().runGlobalAtFixedRate(MLGChallenge::tick, 20L, 20L); + task = plugin.getServer().getScheduler().runTaskTimer(plugin, MLGChallenge::tick, 20L, 20L); } } diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/ManHunt.java b/Challenge/src/main/java/de/fanta/challenge/challenges/ManHunt.java index fe1f036..e27b0f6 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/ManHunt.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/ManHunt.java @@ -2,7 +2,6 @@ import de.fanta.challenge.Challenge; import de.fanta.challenge.events.TimerChangedEvent; -import de.fanta.challenge.schedular.CancellableTask; import de.fanta.challenge.utils.Config; import de.fanta.challengeutils.ItemUtils; import de.fanta.challengeutils.Color; @@ -31,12 +30,13 @@ import org.bukkit.inventory.meta.CompassMeta; import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.persistence.PersistentDataType; +import org.bukkit.scheduler.BukkitTask; import java.util.HashMap; public class ManHunt implements Listener { private static final Challenge plugin = Challenge.getPlugin(); - private CancellableTask task; + private BukkitTask task; private final HashMap locationList = new HashMap<>(); private static final NamespacedKey hunterItemKey = new NamespacedKey(plugin, "HunterItem"); private static ItemStack hunterItem; @@ -217,7 +217,7 @@ } } public void startUpdateTask() { - task = plugin.getScheduler().runGlobalAtFixedRate(this::tick, 1L, 1L); + task = plugin.getServer().getScheduler().runTaskTimer(plugin, this::tick, 1L, 1L); } public void stopUpdateTask() { diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/MobRemoveWorldChallenge.java b/Challenge/src/main/java/de/fanta/challenge/challenges/MobRemoveWorldChallenge.java index 29ab94d..0f14ef0 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/MobRemoveWorldChallenge.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/MobRemoveWorldChallenge.java @@ -60,7 +60,7 @@ return; } Location loc = new Location(world, box.getCenterX(), box.getCenterY(), box.getCenterZ()); - plugin.getScheduler().runLocalDelayed(loc, () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { double boundingwithX = box.getWidthX() / 2; double boundingwithZ = box.getWidthZ() / 2; int worldMinHeight = world.getMinHeight(); diff --git a/Challenge/src/main/java/de/fanta/challenge/challenges/WorldBorderLevelChallenge.java b/Challenge/src/main/java/de/fanta/challenge/challenges/WorldBorderLevelChallenge.java index e4f7af5..b75a964 100644 --- a/Challenge/src/main/java/de/fanta/challenge/challenges/WorldBorderLevelChallenge.java +++ b/Challenge/src/main/java/de/fanta/challenge/challenges/WorldBorderLevelChallenge.java @@ -188,7 +188,7 @@ public static void borderSync() { int level = Config.getInt("worldborderlevellevel"); - plugin.getScheduler().runGlobalDelayed(() -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { for (Player player : Bukkit.getOnlinePlayers()) { if (level > 0) { int borderMultiplayer = Config.getInt("worldborderlevelbordermultiplier"); diff --git a/Challenge/src/main/java/de/fanta/challenge/commands/NetherToggleCommand.java b/Challenge/src/main/java/de/fanta/challenge/commands/NetherToggleCommand.java index 242708e..d84c20c 100644 --- a/Challenge/src/main/java/de/fanta/challenge/commands/NetherToggleCommand.java +++ b/Challenge/src/main/java/de/fanta/challenge/commands/NetherToggleCommand.java @@ -37,7 +37,7 @@ Location spawn = Bukkit.getWorlds().get(1).getSpawnLocation(); World world = spawn.getWorld(); - plugin.getScheduler().runLocalDelayed(spawn, () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { for (int x = spawn.getBlockX() - 2; x <= spawn.getBlockX() + 2; x++) { for (int z = spawn.getBlockZ() - 2; z <= spawn.getBlockZ() + 2; z++) { for (int y = spawn.getBlockY(); y <= spawn.getBlockY() + 3; y++) { diff --git a/Challenge/src/main/java/de/fanta/challenge/commands/challenges/ChallengesKickCommand.java b/Challenge/src/main/java/de/fanta/challenge/commands/challenges/ChallengesKickCommand.java index b5fe490..096741e 100644 --- a/Challenge/src/main/java/de/fanta/challenge/commands/challenges/ChallengesKickCommand.java +++ b/Challenge/src/main/java/de/fanta/challenge/commands/challenges/ChallengesKickCommand.java @@ -48,7 +48,7 @@ plugin.addBannedPlayer(punishedPlayer.getUniqueId(), false); plugin.portPlayerToLobby(punishedPlayer); plugin.getComponentUtil().sendMessage(player, Component.text("Du hast ", Color.GREEN).append(punishedPlayer.name().color(Color.BLUE).append(Component.text(" gekickt. Der Spieler kann in einer Minute wieder Joinen", Color.GREEN)))); - plugin.getScheduler().runGlobalDelayed(() -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { if (plugin.isPlayerBanned(punishedPlayer.getUniqueId())) { plugin.removeBannedPlayer(punishedPlayer.getUniqueId(), false); } diff --git a/Challenge/src/main/java/de/fanta/challenge/commands/event/EventStartCommand.java b/Challenge/src/main/java/de/fanta/challenge/commands/event/EventStartCommand.java index e8daa4f..1ba43b5 100644 --- a/Challenge/src/main/java/de/fanta/challenge/commands/event/EventStartCommand.java +++ b/Challenge/src/main/java/de/fanta/challenge/commands/event/EventStartCommand.java @@ -34,7 +34,7 @@ if (sender.hasPermission("challenges.event")) { AtomicInteger i = new AtomicInteger(4); - plugin.getScheduler().runGlobalAtFixedRate(task -> { + plugin.getServer().getScheduler().runTaskTimer(plugin, task -> { int j = i.decrementAndGet(); plugin.getComponentUtil().sendTitleToAll(Component.text("Event"), Component.text(j > 0 ? "" + j : "Go", Color.BLUE)); diff --git a/Challenge/src/main/java/de/fanta/challenge/guis/ResetGui.java b/Challenge/src/main/java/de/fanta/challenge/guis/ResetGui.java index 600e098..7fce73d 100644 --- a/Challenge/src/main/java/de/fanta/challenge/guis/ResetGui.java +++ b/Challenge/src/main/java/de/fanta/challenge/guis/ResetGui.java @@ -3,6 +3,7 @@ import de.fanta.challenge.Challenge; import de.fanta.challenge.ServerType; import de.fanta.challenge.utils.Config; +import de.fanta.challenge.utils.SaveWorldUtils; import de.fanta.challengeutils.ItemUtils; import de.fanta.challengeutils.Color; import de.iani.cubesideutils.bukkit.inventory.AbstractWindow; @@ -39,7 +40,7 @@ int slot = event.getSlot(); if (slot == RESET_INDEX) { - plugin.getScheduler().run(() -> Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "reset confirm")); + SaveWorldUtils.restartServer(null); getPlayer().closeInventory(); plugin.getComponentUtil().sendNormalMessage(getPlayer(), "Server wird nun neu gestartet!"); } diff --git a/Challenge/src/main/java/de/fanta/challenge/guis/eventgui/ForceQuestSettingsGui.java b/Challenge/src/main/java/de/fanta/challenge/guis/eventgui/ForceQuestSettingsGui.java index c698c79..9e08e0b 100644 --- a/Challenge/src/main/java/de/fanta/challenge/guis/eventgui/ForceQuestSettingsGui.java +++ b/Challenge/src/main/java/de/fanta/challenge/guis/eventgui/ForceQuestSettingsGui.java @@ -27,6 +27,7 @@ private static final int FORCE_EFFECT_INDEX = 13; private static final int FORCE_DEATH_INDEX = 14; private static final int FORCE_LOCATION_INDEX = 15; + private static final int FORCE_STRUCTURE_INDEX = 16; private static final int BACK_INDEX = 18; @@ -107,6 +108,14 @@ } rebuildInventory(); } + case FORCE_STRUCTURE_INDEX -> { + if (ForceQuestChallengeEvent.activeQuestTypes.contains(QuestType.ForceStructure)) { + ForceQuestChallengeEvent.activeQuestTypes.remove(QuestType.ForceStructure); + } else { + ForceQuestChallengeEvent.activeQuestTypes.add(QuestType.ForceStructure); + } + rebuildInventory(); + } case BACK_INDEX -> new EventGui(getPlayer()).open(); default -> { } @@ -172,6 +181,14 @@ item = ItemUtils.createGuiItem(Material.COMPASS, Component.text("Force Location", Color.RED), false); } } + case FORCE_STRUCTURE_INDEX -> { + if (ForceQuestChallengeEvent.activeQuestTypes.contains(QuestType.ForceStructure)) { + item = ItemUtils.createGuiItem(Material.STRUCTURE_VOID, Component.text("Force Structure", Color.GREEN), true); + } else { + item = ItemUtils.createGuiItem(Material.STRUCTURE_VOID, Component.text("Force Structure", Color.RED), false); + } + + } case BACK_INDEX -> item = CustomHeads.RAINBOW_ARROW_BACKWARD_II.getHead(Component.text("Zurück", Color.GREEN)); default -> item = ItemUtils.EMPTY_ICON; diff --git a/Challenge/src/main/java/de/fanta/challenge/guis/eventgui/SammelFieberSettingsGui.java b/Challenge/src/main/java/de/fanta/challenge/guis/eventgui/SammelFieberSettingsGui.java index 0e5b18b..2254f28 100644 --- a/Challenge/src/main/java/de/fanta/challenge/guis/eventgui/SammelFieberSettingsGui.java +++ b/Challenge/src/main/java/de/fanta/challenge/guis/eventgui/SammelFieberSettingsGui.java @@ -115,7 +115,7 @@ return; } - plugin.getScheduler().run(() -> getPlayer().updateInventory()); + getPlayer().updateInventory(); return; } default -> event.setCancelled(true); @@ -138,7 +138,7 @@ } } - plugin.getScheduler().run(() -> getPlayer().updateInventory()); + getPlayer().updateInventory(); } @Override @@ -182,7 +182,7 @@ } private void returnToEventSettingsSafely() { - plugin.getScheduler().run(() -> getParent().open()); + getParent().open(); } } diff --git a/Challenge/src/main/java/de/fanta/challenge/listeners/PlayerListener.java b/Challenge/src/main/java/de/fanta/challenge/listeners/PlayerListener.java index 3db7bbd..f97d8fa 100644 --- a/Challenge/src/main/java/de/fanta/challenge/listeners/PlayerListener.java +++ b/Challenge/src/main/java/de/fanta/challenge/listeners/PlayerListener.java @@ -86,7 +86,7 @@ if (!plugin.getTimer().isRunning() && player.getGameMode() == GameMode.SURVIVAL) { Location spawn = e.getPlayer().getWorld().getSpawnLocation(); if (playerloc.distance(spawn) > 20) { - plugin.getScheduler().runAsync(() -> player.teleportAsync(spawn)); + plugin.getServer().getScheduler().runTaskAsynchronously(plugin, () -> player.teleportAsync(spawn)); plugin.getComponentUtil().sendWarningMessage(player, "Du kommst erst vom Spawn weg, wenn der Timer gestartet wurde!"); } @@ -98,7 +98,7 @@ public void onPlayerRespawn(PlayerRespawnEvent e) { if (!Config.getBoolean("respawn")) { plugin.getComponentUtil().sendTitleToPlayer(e.getPlayer(), Component.text("Du bist gestorben!", Color.GREEN), Component.text("Du bist nun Zuschauer", Color.RED), 10, 80, 10, false); - plugin.getScheduler().runDelayedOnEntity(e.getPlayer(), () -> e.getPlayer().setGameMode(GameMode.SPECTATOR), 1); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> e.getPlayer().setGameMode(GameMode.SPECTATOR), 1); } if (Config.getBoolean("nether.enabled")) { Location spawn = Bukkit.getWorlds().get(1).getSpawnLocation(); diff --git a/Challenge/src/main/java/de/fanta/challenge/listeners/QuitJoinListener.java b/Challenge/src/main/java/de/fanta/challenge/listeners/QuitJoinListener.java index ae8ba0f..dd95796 100644 --- a/Challenge/src/main/java/de/fanta/challenge/listeners/QuitJoinListener.java +++ b/Challenge/src/main/java/de/fanta/challenge/listeners/QuitJoinListener.java @@ -43,18 +43,16 @@ plugin.addstatisticPlayers(p.getUniqueId()); if (plugin.getServerType() != ServerType.ADVENTURE) { if (!DeathrunChallengeEvent.getDeadPlayer().contains(p.getUniqueId())) { - plugin.getScheduler().run(() -> { - plugin.getScoreManager().join(new ChallengePlayer(p.getUniqueId())); - plugin.getSBManager().setScoreboardtoPlayer(p); - plugin.getSBManager().updateEventScoreboard(); - if (!Config.getBoolean("event.teams") && plugin.getScoreManager().getScores() != null && plugin.getScoreManager().getScore(new ChallengePlayer(p.getUniqueId())) == 0) { - plugin.getScoreManager().updateScore(new ChallengePlayer(e.getPlayer().getUniqueId()), 0); - } - }); + plugin.getScoreManager().join(new ChallengePlayer(p.getUniqueId())); + plugin.getSBManager().setScoreboardtoPlayer(p); + plugin.getSBManager().updateEventScoreboard(); + if (!Config.getBoolean("event.teams") && plugin.getScoreManager().getScores() != null && plugin.getScoreManager().getScore(new ChallengePlayer(p.getUniqueId())) == 0) { + plugin.getScoreManager().updateScore(new ChallengePlayer(e.getPlayer().getUniqueId()), 0); + } } } if (plugin.getCurrentEditor() == null) { - plugin.getScheduler().runDelayedOnEntity(p, () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { if (p.hasPermission("Challenges.editor")) { plugin.setCurrentEditor(p); @@ -129,7 +127,7 @@ SaveWorldUtils.saveWorld(plugin.getFirstEditor().getUniqueId().toString(), SaveSlot.SLOT_AUTO); plugin.startResetTask(); } else { - plugin.getScheduler().run(() -> Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "reset confirm")); + SaveWorldUtils.restartServer(null); } } } @@ -146,7 +144,7 @@ Bukkit.getPluginManager().callEvent(new PlayerCountChangedEvent(Bukkit.getOnlinePlayers().size() - plugin.getVanish().countVanishPlayers() - 1)); if (plugin.isWaitingForShutdown() && Bukkit.getOnlinePlayers().size() == 1) { - plugin.getScheduler().runGlobalDelayed(() -> Bukkit.getPluginManager().callEvent(new ServerStatusChangedEvent(false)), 1L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> Bukkit.getPluginManager().callEvent(new ServerStatusChangedEvent(false)), 1L); } } } diff --git a/Challenge/src/main/java/de/fanta/challenge/schedular/BukkitScheduler.java b/Challenge/src/main/java/de/fanta/challenge/schedular/BukkitScheduler.java deleted file mode 100644 index bf33365..0000000 --- a/Challenge/src/main/java/de/fanta/challenge/schedular/BukkitScheduler.java +++ /dev/null @@ -1,83 +0,0 @@ -package de.fanta.challenge.schedular; - -import de.fanta.challenge.Challenge; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.World; -import org.bukkit.entity.Entity; - -import java.util.function.Consumer; - -public class BukkitScheduler implements Scheduler { - - private final Challenge plugin; - - public BukkitScheduler(Challenge plugin) { - this.plugin = plugin; - } - - @Override - public void runAsync(Runnable task) { - Bukkit.getScheduler().runTaskAsynchronously(this.plugin, task); - } - - @Override - public void run(Runnable task) { - Bukkit.getScheduler().runTask(this.plugin, task); - } - - @Override - public void runLocal(Location location, Runnable task) { - Bukkit.getScheduler().runTask(this.plugin, task); - } - - @Override - public void runAtChunk(World world, int chunkX, int chunkZ, Runnable task) { - Bukkit.getScheduler().runTask(this.plugin, task); - } - - @Override - public CancellableTask runGlobalDelayed(Runnable task, long delay) { - return Bukkit.getScheduler().runTaskLater(this.plugin, task, delay)::cancel; - } - - @Override - public void runLocalDelayed(Location location, Runnable task, long delay) { - runGlobalDelayed(task, delay); - } - - @Override - public CancellableTask runLocalAtFixedRate(Location location, Runnable task, long delay, long period) { - return runGlobalAtFixedRate(task, delay, period); - } - - @Override - public void runLocalAtFixedRate(Location location, Consumer taskConsumer, long delay, long period) { - runGlobalAtFixedRate(taskConsumer, delay, period); - } - - @Override - public CancellableTask runGlobalAtFixedRate(Runnable task, long delay, long period) { - return Bukkit.getScheduler().runTaskTimer(this.plugin, task, delay, period)::cancel; - } - - @Override - public void runGlobalAtFixedRate(Consumer taskConsumer, long delay, long period) { - Bukkit.getScheduler().runTaskTimer(this.plugin, bukkitTask -> taskConsumer.accept(bukkitTask::cancel), delay, period); - } - - @Override - public CancellableTask runOnEntityAtFixedRate(Entity entity, Runnable task, long delay, long period) { - return runGlobalAtFixedRate(task, delay, period); - } - - @Override - public void runOnEntityAtFixedRate(Entity entity, Consumer taskConsumer, long delay, long period) { - runLocalAtFixedRate(null, taskConsumer, delay, period); - } - - @Override - public void runDelayedOnEntity(Entity entity, Runnable task, long delay) { - Bukkit.getScheduler().scheduleSyncDelayedTask(this.plugin, task, delay); - } -} diff --git a/Challenge/src/main/java/de/fanta/challenge/schedular/CancellableTask.java b/Challenge/src/main/java/de/fanta/challenge/schedular/CancellableTask.java deleted file mode 100644 index 5009ab4..0000000 --- a/Challenge/src/main/java/de/fanta/challenge/schedular/CancellableTask.java +++ /dev/null @@ -1,5 +0,0 @@ -package de.fanta.challenge.schedular; - -public interface CancellableTask { - void cancel(); -} diff --git a/Challenge/src/main/java/de/fanta/challenge/schedular/Scheduler.java b/Challenge/src/main/java/de/fanta/challenge/schedular/Scheduler.java deleted file mode 100644 index 57728bd..0000000 --- a/Challenge/src/main/java/de/fanta/challenge/schedular/Scheduler.java +++ /dev/null @@ -1,44 +0,0 @@ -package de.fanta.challenge.schedular; - -import org.bukkit.Location; -import org.bukkit.World; -import org.bukkit.entity.Entity; - -import java.util.function.Consumer; - -public interface Scheduler { - - void runAsync(Runnable task); - - void run(Runnable task); - - void runLocal(Location location, Runnable task); - - void runAtChunk(World world, int chunkX, int chunkZ, Runnable task); - - CancellableTask runGlobalDelayed(Runnable task, long delay); - - default void runGlobalDelayed(Runnable task) { - runGlobalDelayed(task, 1); - } - - void runLocalDelayed(Location location, Runnable task, long delay); - - default void runLocalDelayed(Runnable task) { - runGlobalDelayed(task, 1); - } - - CancellableTask runLocalAtFixedRate(Location location, Runnable task, long delay, long period); - - void runLocalAtFixedRate(Location location, Consumer taskConsumer, long delay, long period); - - CancellableTask runGlobalAtFixedRate(Runnable task, long delay, long period); - - void runGlobalAtFixedRate(Consumer taskConsumer, long delay, long period); - - CancellableTask runOnEntityAtFixedRate(Entity entity, Runnable task, long delay, long period); - - void runOnEntityAtFixedRate(Entity entity, Consumer taskConsumer, long delay, long period); - - void runDelayedOnEntity(Entity entity, Runnable task, long delay); -} diff --git a/Challenge/src/main/java/de/fanta/challenge/scoreboard/ScoreManager.java b/Challenge/src/main/java/de/fanta/challenge/scoreboard/ScoreManager.java index 6f6a734..f77cc21 100644 --- a/Challenge/src/main/java/de/fanta/challenge/scoreboard/ScoreManager.java +++ b/Challenge/src/main/java/de/fanta/challenge/scoreboard/ScoreManager.java @@ -7,9 +7,12 @@ import de.fanta.challenge.teams.ChallengeTeam; import de.fanta.challenge.teams.TeamUtils; import de.fanta.challenge.utils.Config; +import de.fanta.challengeutils.Color; import de.iani.cubesideutils.HastebinUtil; import de.iani.cubesideutils.StringUtil; import de.iani.playerUUIDCache.CachedPlayer; +import net.kyori.adventure.text.Component; +import net.kyori.adventure.text.event.ClickEvent; import org.bukkit.entity.Player; import org.bukkit.scoreboard.Team; @@ -268,7 +271,7 @@ @Override public void onSuccess(String url) { if (player != null) { - plugin.getComponentUtil().sendNormalMessage(player, "Event Log gepastet: " + url); + plugin.getComponentUtil().sendMessage(player, Component.text("Event Log gepastet: ", Color.GREEN).append(Component.text(url, Color.YELLOW).clickEvent(ClickEvent.clickEvent(ClickEvent.Action.OPEN_URL, url)))); } plugin.getLogger().log(Level.SEVERE, "Event Log gepastet: " + url); } diff --git a/Challenge/src/main/java/de/fanta/challenge/teams/TeamListener.java b/Challenge/src/main/java/de/fanta/challenge/teams/TeamListener.java index ea73f15..fb5688e 100644 --- a/Challenge/src/main/java/de/fanta/challenge/teams/TeamListener.java +++ b/Challenge/src/main/java/de/fanta/challenge/teams/TeamListener.java @@ -172,7 +172,7 @@ } Player p = e.getPlayer(); - plugin.getScheduler().runDelayedOnEntity(p, () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { ChallengeTeam team = TeamUtils.getPlayerTeam(p); if (team == null) { return; diff --git a/Challenge/src/main/java/de/fanta/challenge/utils/ColorUtils.java b/Challenge/src/main/java/de/fanta/challenge/utils/ColorUtils.java index 5c18b60..68d3338 100644 --- a/Challenge/src/main/java/de/fanta/challenge/utils/ColorUtils.java +++ b/Challenge/src/main/java/de/fanta/challenge/utils/ColorUtils.java @@ -2,17 +2,17 @@ import de.fanta.challenge.Challenge; import de.fanta.challenge.Timer; -import de.fanta.challenge.schedular.CancellableTask; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.Style; import net.kyori.adventure.text.format.TextColor; import net.kyori.adventure.text.format.TextDecoration; +import org.bukkit.scheduler.BukkitTask; public class ColorUtils { private final Challenge plugin; private long time; - private CancellableTask cancellableTask; + private BukkitTask cancellableTask; public ColorUtils(Challenge plugin) { this.plugin = plugin; @@ -176,8 +176,7 @@ if (this.cancellableTask != null) { cancellableTask.cancel(); } - - cancellableTask = plugin.getScheduler().runGlobalAtFixedRate(() -> time++, 0L, l); + cancellableTask = plugin.getServer().getScheduler().runTaskTimer(plugin, () -> time++, 0L, l); } public long getTime() { diff --git a/Challenge/src/main/java/de/fanta/challenge/utils/CoordsTargeter.java b/Challenge/src/main/java/de/fanta/challenge/utils/CoordsTargeter.java index fdeddc2..b3b4ba2 100644 --- a/Challenge/src/main/java/de/fanta/challenge/utils/CoordsTargeter.java +++ b/Challenge/src/main/java/de/fanta/challenge/utils/CoordsTargeter.java @@ -2,7 +2,6 @@ import de.fanta.challenge.Challenge; import de.fanta.challenge.events.TimerChangedEvent; -import de.fanta.challenge.schedular.CancellableTask; import org.bukkit.Location; import org.bukkit.Particle; import org.bukkit.Vibration; @@ -10,6 +9,7 @@ import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.scheduler.BukkitTask; import java.util.ArrayList; import java.util.Collection; @@ -22,7 +22,7 @@ private static final HashMap locationMap = new HashMap<>(); private static final Collection autoDetectionList = new ArrayList<>(); - private CancellableTask task; + private BukkitTask task; @EventHandler public void onTimer(TimerChangedEvent e) { @@ -71,7 +71,7 @@ } public void startUpdateTask() { - task = plugin.getScheduler().runGlobalAtFixedRate(this::updateTargeter, 5L, 5L); + task = plugin.getServer().getScheduler().runTaskTimer(plugin, this::updateTargeter, 5L, 5L); } public void stopUpdateTask() { diff --git a/Challenge/src/main/java/de/fanta/challenge/utils/CubesideModUtils.java b/Challenge/src/main/java/de/fanta/challenge/utils/CubesideModUtils.java index 3bc8b2b..65f725c 100644 --- a/Challenge/src/main/java/de/fanta/challenge/utils/CubesideModUtils.java +++ b/Challenge/src/main/java/de/fanta/challenge/utils/CubesideModUtils.java @@ -13,7 +13,7 @@ public static void sendFlashScreenToCubesideMod(Challenge plugin, Player player, int duration, TextColor color) { - plugin.getScheduler().runDelayedOnEntity(player, () -> { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> { if (player == null) { return; }