Bugfix after testing

This commit is contained in:
Lixfel
2025-04-09 21:04:28 +02:00
parent f2d8c9c02b
commit cf4ac95c2f
@@ -26,8 +26,10 @@ import org.bukkit.Bukkit;
import org.bukkit.GameMode; import org.bukkit.GameMode;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener; import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerGameModeChangeEvent; import org.bukkit.event.player.PlayerGameModeChangeEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.player.PlayerQuitEvent;
import com.comphenix.tinyprotocol.TinyProtocol; import com.comphenix.tinyprotocol.TinyProtocol;
@@ -52,20 +54,30 @@ public class Spectator implements Listener {
new StateDependentTask(ArenaMode.AntiTest, FightState.All, this::pseudoSpectatorCheck, 1, 1); new StateDependentTask(ArenaMode.AntiTest, FightState.All, this::pseudoSpectatorCheck, 1, 1);
} }
@EventHandler @EventHandler(priority = EventPriority.MONITOR)
@SuppressWarnings("deprecation") public void handlePlayerJoin(PlayerJoinEvent e) {
public void onGameModeChange(PlayerGameModeChangeEvent e) {
Player player = e.getPlayer(); Player player = e.getPlayer();
if (e.getNewGameMode() == GameMode.SPECTATOR) { if(player.getGameMode() == GameMode.SPECTATOR)
for(Player currentPlayer : Bukkit.getServer().getOnlinePlayers()) { gameModeChange(player, GameMode.SPECTATOR);
if(currentPlayer.getUniqueId() != player.getUniqueId()) }
currentPlayer.hidePlayer(player);
@EventHandler
public void onGameModeChange(PlayerGameModeChangeEvent e) {
gameModeChange(e.getPlayer(), e.getNewGameMode());
}
@SuppressWarnings("deprecation")
private void gameModeChange(Player player, GameMode gameMode) {
if (gameMode == GameMode.SPECTATOR) {
for(Player p : Bukkit.getServer().getOnlinePlayers()) {
if(p.getUniqueId() != player.getUniqueId())
p.hidePlayer(player);
} }
} else { } else {
for(Player currentPlayer : Bukkit.getServer().getOnlinePlayers()) { for(Player p : Bukkit.getServer().getOnlinePlayers()) {
if(currentPlayer.getUniqueId() != player.getUniqueId()) if(p.getUniqueId() != player.getUniqueId())
currentPlayer.showPlayer(player); p.showPlayer(player);
} }
} }
} }