1
mirror of https://github.com/Shiewk/SModeration.git synced 2026-04-28 05:54:16 +02:00

Hide death messages from vanished players

This commit is contained in:
Shy
2024-08-21 18:40:06 +02:00
parent 8de4382ec4
commit 8c00347ef2
@@ -2,14 +2,19 @@ package de.shiewk.smoderation.listener;
import de.shiewk.smoderation.SModeration; import de.shiewk.smoderation.SModeration;
import de.shiewk.smoderation.command.VanishCommand; import de.shiewk.smoderation.command.VanishCommand;
import net.kyori.adventure.text.Component;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
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.EventPriority;
import org.bukkit.event.Listener; import org.bukkit.event.Listener;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.player.PlayerQuitEvent;
import static de.shiewk.smoderation.SModeration.SECONDARY_COLOR;
import static net.kyori.adventure.text.Component.text;
public class VanishListener implements Listener { public class VanishListener implements Listener {
@EventHandler public void onPlayerQuit(PlayerQuitEvent event){ @EventHandler public void onPlayerQuit(PlayerQuitEvent event){
@@ -37,4 +42,17 @@ public class VanishListener implements Listener {
}); });
} }
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onPlayerDeath(PlayerDeathEvent event){
final Component message = event.deathMessage();
if (VanishCommand.isVanished(event.getPlayer()) && message != null){
event.deathMessage(null);
for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
if (onlinePlayer.hasPermission("smod.vanish.see")){
onlinePlayer.sendMessage(text("[VANISH] ").color(SECONDARY_COLOR).append(message));
}
}
}
}
} }