From 29782f84541da63f11cb55ccaa95b989a1ab9cdb Mon Sep 17 00:00:00 2001 From: Benkralex Date: Wed, 30 Aug 2023 16:38:08 +0200 Subject: [PATCH] Menu shows now Playerheads removed Debug Messages --- pvptogglepluginworkspace/pom.xml | 2 +- .../benkralex/pvptoggle/InventoryMenu.java | 37 +++++++++++++++++++ .../main/java/benkralex/pvptoggle/Util.java | 36 ++---------------- 3 files changed, 41 insertions(+), 34 deletions(-) diff --git a/pvptogglepluginworkspace/pom.xml b/pvptogglepluginworkspace/pom.xml index 6db5674..977ec54 100644 --- a/pvptogglepluginworkspace/pom.xml +++ b/pvptogglepluginworkspace/pom.xml @@ -6,7 +6,7 @@ benkralex Pvptoggle - 1.7.9-SNAPSHOT + 1.8-FINAL jar Pvptoggle diff --git a/pvptogglepluginworkspace/src/main/java/benkralex/pvptoggle/InventoryMenu.java b/pvptogglepluginworkspace/src/main/java/benkralex/pvptoggle/InventoryMenu.java index ca3113c..5a1fc9d 100644 --- a/pvptogglepluginworkspace/src/main/java/benkralex/pvptoggle/InventoryMenu.java +++ b/pvptogglepluginworkspace/src/main/java/benkralex/pvptoggle/InventoryMenu.java @@ -12,10 +12,13 @@ import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemFlag; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; +import org.bukkit.inventory.meta.SkullMeta; +import org.bukkit.persistence.PersistentDataContainer; import org.bukkit.persistence.PersistentDataType; import java.util.ArrayList; import java.util.List; +import java.util.UUID; public class InventoryMenu { public static final int PVP_TOGGLE=0; @@ -194,6 +197,23 @@ public class InventoryMenu { public static Inventory pvpBlacklistMenu(Player p) { Inventory inv = Bukkit.createInventory(null, 3*9, "Blacklist-Menu"); + PersistentDataContainer pdc = p.getPersistentDataContainer(); + PersistentDataContainer pBlacklist = pdc.get(new NamespacedKey(Pvptoggle.pvptoggle, "blacklist"), PersistentDataType.TAG_CONTAINER); + int i = 0; + for (NamespacedKey blacklistedPlayerUuid:pBlacklist.getKeys()) { + ItemStack item = new ItemStack(Material.PLAYER_HEAD); + SkullMeta m = (SkullMeta) item.getItemMeta(); + m.setDisplayName(ChatColor.GREEN + Bukkit.getPlayer(UUID.fromString(blacklistedPlayerUuid.getKey())).getDisplayName()); + m.setOwningPlayer(Bukkit.getPlayer(UUID.fromString(blacklistedPlayerUuid.getKey()))); + item.setItemMeta(m); + if (!((i == 8) || (i == 26))) { + inv.setItem(i, item); + } else { + i++; + inv.setItem(i, item); + } + i++; + } inv.setItem(8, getMenuItem(CLOSE, p)); inv.setItem(26, getMenuItem(BACK, p)); @@ -203,6 +223,23 @@ public class InventoryMenu { public static Inventory pvpWhitelistMenu(Player p) { Inventory inv = Bukkit.createInventory(null, 3*9, "Whitelist-Menu"); + PersistentDataContainer pdc = p.getPersistentDataContainer(); + PersistentDataContainer pWhitelist = pdc.get(new NamespacedKey(Pvptoggle.pvptoggle, "whitelist"), PersistentDataType.TAG_CONTAINER); + int i = 0; + for (NamespacedKey whitelistedPlayerUuid:pWhitelist.getKeys()) { + ItemStack item = new ItemStack(Material.PLAYER_HEAD); + SkullMeta m = (SkullMeta) item.getItemMeta(); + m.setDisplayName(ChatColor.GREEN + Bukkit.getPlayer(UUID.fromString(whitelistedPlayerUuid.getKey())).getDisplayName()); + m.setOwningPlayer(Bukkit.getPlayer(UUID.fromString(whitelistedPlayerUuid.getKey()))); + item.setItemMeta(m); + if (!((i == 8) || (i == 26))) { + inv.setItem(i, item); + } else { + i++; + inv.setItem(i, item); + } + i++; + } inv.setItem(8, getMenuItem(CLOSE, p)); inv.setItem(26, getMenuItem(BACK, p)); diff --git a/pvptogglepluginworkspace/src/main/java/benkralex/pvptoggle/Util.java b/pvptogglepluginworkspace/src/main/java/benkralex/pvptoggle/Util.java index c3daa75..ab26e21 100644 --- a/pvptogglepluginworkspace/src/main/java/benkralex/pvptoggle/Util.java +++ b/pvptogglepluginworkspace/src/main/java/benkralex/pvptoggle/Util.java @@ -30,38 +30,8 @@ public class Util { blacklisted = false; } - //return (!(toggle||ultravictim)||checkPvPData(damager,victim))&&!ultradamager; - //debug - victim.sendMessage(ChatColor.RED + "DEBUG:"); - victim.sendMessage("Rückschlag: " + checkPvPData(damager,victim)); - victim.sendMessage("Damager in Whitelist: " + whitelisted); - victim.sendMessage("Damager in Blacklist: " + blacklisted); - victim.sendMessage("PvP-Schutz (Toggle): " + toggle); - victim.sendMessage("PvP-Schutz (Ultra): " + ultravictim); - victim.sendMessage("Ultra bei Damager: " + ultradamager); - victim.sendMessage("Schutz: " + (toggle||ultravictim)); - victim.sendMessage(" "); - victim.sendMessage("2.Oder: " + (whitelisted && !ultradamager)); - victim.sendMessage("3.Oder: " + ((!toggle||!ultravictim) && !blacklisted && !ultradamager)); - - damager.sendMessage(ChatColor.RED + "DEBUG:"); - damager.sendMessage("Rückschlag: " + checkPvPData(damager,victim)); - damager.sendMessage("Damager in Whitelist: " + whitelisted); - damager.sendMessage("Damager in Blacklist: " + blacklisted); - damager.sendMessage("Victim PvP-Schutz (Toggle): " + toggle); - damager.sendMessage("Victim PvP-Schutz (Ultra): " + ultravictim); - damager.sendMessage("Ultra bei Damager: " + ultradamager); - damager.sendMessage("Victim Schutz: " + (toggle||ultravictim)); - damager.sendMessage(" "); - damager.sendMessage("2.Oder: " + (whitelisted && !ultradamager)); - damager.sendMessage("3.Oder: " + ((!toggle||!ultravictim) && !blacklisted && !ultradamager)); - - Pvptoggle.pvptoggle.getLogger().info("1.Oder: " + checkPvPData(damager,victim)); - Pvptoggle.pvptoggle.getLogger().info("2.Oder: " + (whitelisted && !ultradamager)); - Pvptoggle.pvptoggle.getLogger().info("3.Oder: " + (((!toggle||!ultravictim) && !blacklisted && !ultradamager)?"true":"false")); - //debug ende - - return checkPvPData(damager,victim) || (whitelisted && !ultradamager) || ((!toggle && !ultravictim) && !blacklisted && !ultradamager); + //einstellung ob ultradamager an kein rückschlag + return (checkPvPData(damager,victim) && !ultradamager) || (whitelisted && !ultradamager) || ((!toggle && !ultravictim) && !blacklisted && !ultradamager); } public static boolean checkPvPData(Player damager, Player victim){ String victimUUID = victim.getUniqueId().toString(); @@ -76,7 +46,7 @@ public class Util { } public static void delOldData(PersistentDataContainer pvpdamagers){ for(NamespacedKey damagerKey:pvpdamagers.getKeys()){ - if(pvpdamagers.get(damagerKey, PersistentDataType.LONG) >= Instant.now().getEpochSecond() - Config.getPvpTime()){ + if(pvpdamagers.get(damagerKey, PersistentDataType.LONG) <= Instant.now().getEpochSecond() - Config.getPvpTime()){ pvpdamagers.remove(damagerKey); } }