diff --git a/src/main/java/de/fanta/challenges/challenges/ChallengeEvents/BridgeRaceChallengeEvent.java b/src/main/java/de/fanta/challenges/challenges/ChallengeEvents/BridgeRaceChallengeEvent.java index 6b7925e..c5c3a7c 100644 --- a/src/main/java/de/fanta/challenges/challenges/ChallengeEvents/BridgeRaceChallengeEvent.java +++ b/src/main/java/de/fanta/challenges/challenges/ChallengeEvents/BridgeRaceChallengeEvent.java @@ -35,9 +35,7 @@ import org.bukkit.event.player.PlayerPortalEvent; import org.bukkit.event.player.PlayerRespawnEvent; import org.bukkit.inventory.ItemStack; -import org.spigotmc.event.player.PlayerSpawnLocationEvent; -import javax.annotation.Nullable; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -73,6 +71,7 @@ } materials.remove(Material.ELYTRA); materials.remove(Material.LAVA_BUCKET); + materials.remove(Material.WIND_CHARGE); for (Player pp : plugin.getVanish().getPlayerListWithoutVanishPlayers()) { plugin.getScoreManager().join(new ChallengePlayer(pp.getUniqueId())); @@ -129,12 +128,7 @@ if (isLoaded()) { createPlayerLocation(e.getPlayer()); - } - } - - public void onPlayerSpawn(PlayerSpawnLocationEvent e) { - if (isLoaded()) { - teleportPlayer(e.getPlayer(), e); + teleportPlayer(e.getPlayer()); } } @@ -153,7 +147,7 @@ int BARRIER_POS = 20; int BARRIER_SIZE = 6; if (distanceToCenter >= BARRIER_POS) { //Outside border - p.teleportAsync(getPlayerLocation(p).clone().add(0.5, 2, 0.5)); + p.teleport(getPlayerLocation(p).clone().add(0.5, 2, 0.5)); } else if (distanceToCenter >= BARRIER_POS - 6) { //Inside border //Send barrier double barrierZ = spawnLocation.getZ() + BARRIER_POS * (posRelatedToCenter > 0 ? 1 : -1); @@ -176,7 +170,7 @@ if (isLoaded() && !isRunning()) { if (p.getLocation().getY() <= 0) { - teleportPlayer(p, null); + teleportPlayer(p); } } } @@ -249,7 +243,7 @@ waitForAll.get(); for (Player pp : plugin.getVanish().getPlayerListWithoutVanishPlayers()) { createPlayerLocation(pp); - plugin.getScheduler().runLocalDelayed(playerSpawnLocations.get(pp.getUniqueId()), () -> teleportPlayer(pp, null), 1L); + plugin.getScheduler().runLocalDelayed(playerSpawnLocations.get(pp.getUniqueId()), () -> teleportPlayer(pp), 1L); } load = true; } catch (InterruptedException | ExecutionException e) { @@ -276,16 +270,12 @@ } } - private static void teleportPlayer(Player player, @Nullable PlayerSpawnLocationEvent event) { + private static void teleportPlayer(Player player) { setBedrock(getPlayerLocation(player).clone()); Location teleportLocation = getPlayerLocation(player).clone().add(0.5, 2, 0.5); teleportLocation.setYaw(-90); plugin.getScheduler().runDelayedOnEntity(player, () -> { - if (event != null) { - event.setSpawnLocation(teleportLocation); - } else { - player.teleportAsync(teleportLocation); - } + player.teleport(teleportLocation); }, 1L); }