From 65914a4d54c6ce2a617280e281b46e8cafe94e00 Mon Sep 17 00:00:00 2001 From: yoyosource Date: Tue, 15 Nov 2022 17:39:36 +0100 Subject: [PATCH] Fix Jump and Run behaviour on LobbyPacket --- src/de/steamwar/lobby/LobbyPacketHandler.java | 8 +++++++- src/de/steamwar/lobby/jumpandrun/JumpAndRun.java | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/de/steamwar/lobby/LobbyPacketHandler.java b/src/de/steamwar/lobby/LobbyPacketHandler.java index 0d7bbcc..eb9d5e7 100644 --- a/src/de/steamwar/lobby/LobbyPacketHandler.java +++ b/src/de/steamwar/lobby/LobbyPacketHandler.java @@ -19,11 +19,13 @@ package de.steamwar.lobby; +import de.steamwar.lobby.jumpandrun.JumpAndRun; import de.steamwar.network.packets.PacketHandler; import de.steamwar.network.packets.common.FightInfoPacket; import de.steamwar.network.packets.server.StartingServerPacket; import de.steamwar.sql.SteamwarUser; import org.bukkit.Bukkit; +import org.bukkit.entity.Player; import org.bukkit.event.player.PlayerTeleportEvent; import java.util.Objects; @@ -37,6 +39,10 @@ public class LobbyPacketHandler extends PacketHandler { @Handler public void serverStarting(StartingServerPacket packet) { - Objects.requireNonNull(Bukkit.getPlayer(SteamwarUser.get(packet.getUser()).getUUID())).teleport(LobbySystem.config().getWaitingHallSpawn(), PlayerTeleportEvent.TeleportCause.PLUGIN); + Player player = Objects.requireNonNull(Bukkit.getPlayer(SteamwarUser.get(packet.getUser()).getUUID())); + player.teleport(LobbySystem.config().getWaitingHallSpawn(), PlayerTeleportEvent.TeleportCause.PLUGIN); + if (JumpAndRun.isPlayerInJumpAndRun(player)) { + JumpAndRun.reset(player); + } } } diff --git a/src/de/steamwar/lobby/jumpandrun/JumpAndRun.java b/src/de/steamwar/lobby/jumpandrun/JumpAndRun.java index 2c40d41..f534fed 100644 --- a/src/de/steamwar/lobby/jumpandrun/JumpAndRun.java +++ b/src/de/steamwar/lobby/jumpandrun/JumpAndRun.java @@ -144,7 +144,7 @@ public class JumpAndRun extends BasicListener { CLICKED.put(event.getPlayer(), System.currentTimeMillis()); } - private void reset(Player player) { + public static void reset(Player player) { PlayerSpawn.giveItems(player); player.setAllowFlight(true); CURRENT_POS.remove(player);