diff --git a/src/main/java/com/dvorakmortonxd/qoltweaks/nopvp/NoPvPListener.java b/src/main/java/com/dvorakmortonxd/qoltweaks/nopvp/NoPvPListener.java index e1240fe..288c893 100644 --- a/src/main/java/com/dvorakmortonxd/qoltweaks/nopvp/NoPvPListener.java +++ b/src/main/java/com/dvorakmortonxd/qoltweaks/nopvp/NoPvPListener.java @@ -7,6 +7,8 @@ import org.bukkit.event.EventHandler; import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.player.PlayerJoinEvent; +import org.bukkit.event.player.PlayerRespawnEvent; public final class NoPvPListener implements Listener { @@ -16,6 +18,16 @@ public final class NoPvPListener implements Listener { this.manager = manager; } + @EventHandler(priority = EventPriority.MONITOR) + public void onPlayerJoin(PlayerJoinEvent event) { + manager.applyGlow(event.getPlayer()); + } + + @EventHandler(priority = EventPriority.MONITOR) + public void onPlayerRespawn(PlayerRespawnEvent event) { + manager.applyGlow(event.getPlayer()); + } + @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { if (!(event.getEntity() instanceof Player victim)) { diff --git a/src/main/java/com/dvorakmortonxd/qoltweaks/nopvp/NoPvPManager.java b/src/main/java/com/dvorakmortonxd/qoltweaks/nopvp/NoPvPManager.java index 59e2928..c8a29df 100644 --- a/src/main/java/com/dvorakmortonxd/qoltweaks/nopvp/NoPvPManager.java +++ b/src/main/java/com/dvorakmortonxd/qoltweaks/nopvp/NoPvPManager.java @@ -39,6 +39,7 @@ public final class NoPvPManager { UUID uuid = player.getUniqueId(); enabled.put(uuid, true); cooldownUntil.put(uuid, 0L); + player.setGlowing(true); scheduleSave(); } @@ -46,9 +47,16 @@ public final class NoPvPManager { UUID uuid = player.getUniqueId(); enabled.put(uuid, false); cooldownUntil.put(uuid, System.currentTimeMillis() + COOLDOWN_MILLIS); + player.setGlowing(false); scheduleSave(); } + public void applyGlow(Player player) { + if (isEnabled(player)) { + player.setGlowing(true); + } + } + private void load() { if (!dataFile.exists()) { return;