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

prevent duplicates

This commit is contained in:
Shy
2024-06-08 11:27:31 +02:00
parent 56d705173e
commit 667305bb81
@@ -4,6 +4,7 @@ import de.shiewk.smoderation.SModeration;
import de.shiewk.smoderation.event.PunishmentIssueEvent;
import de.shiewk.smoderation.punishments.Punishment;
import de.shiewk.smoderation.punishments.PunishmentType;
import de.shiewk.smoderation.storage.PunishmentContainer;
import io.papermc.paper.event.player.AsyncChatEvent;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@@ -41,6 +42,11 @@ public class PunishmentListener implements Listener {
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onPunishmentIssue(PunishmentIssueEvent event){
final Punishment punishment = event.getPunishment();
final PunishmentContainer container = event.getContainer();
final Punishment duplicate = container.find(p -> p.to.equals(punishment.to) && p.type == punishment.type && p.until >= punishment.time);
if (duplicate != null){
container.remove(duplicate);
}
switch (punishment.type){
case KICK, BAN -> {
final Player player = Bukkit.getPlayer(punishment.to);