Bug fixes
This commit is contained in:
@@ -7,20 +7,20 @@ import java.time.Instant;
|
|||||||
|
|
||||||
public class Config {
|
public class Config {
|
||||||
|
|
||||||
privat FileConfiguration config = Pvptoggle.pvptoggle.getConfig();
|
private static FileConfiguration config = Pvptoggle.pvptoggle.getConfig();
|
||||||
|
|
||||||
public static void createConfig() {
|
public static void createConfig() {
|
||||||
config.options().copyDefaults(true);
|
config.options().copyDefaults(true);
|
||||||
config.addDefault("pvp-time-hit-back", 60);
|
config.addDefault("pvp-time-hit-back", 60);
|
||||||
config.addDefault("default-pvp-protection", true);
|
config.addDefault("default-pvp-protection", true);
|
||||||
Pvptoggle.pvptoggle.saveConfig();
|
Pvptoggle.pvptoggle.saveConfig();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int getPvpTime() {
|
public static int getPvpTime() {
|
||||||
return config.getInt("pvp-time-hit-back");
|
return config.getInt("pvp-time-hit-back");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int getPvpProt() {
|
public static boolean getPvpProt() {
|
||||||
return config.getBoolean("default-pvp-protection");
|
return config.getBoolean("default-pvp-protection");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,43 +1,50 @@
|
|||||||
package benkralex.pvptoggle;
|
package benkralex.pvptoggle;
|
||||||
|
|
||||||
|
import org.bukkit.NamespacedKey;
|
||||||
|
import benkralex.pvptoggle.InventoryMenu;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||||
|
import org.bukkit.inventory.Inventory;
|
||||||
|
import org.bukkit.persistence.PersistentDataContainer;
|
||||||
|
import org.bukkit.persistence.PersistentDataType;
|
||||||
|
|
||||||
public class InventoryListener implements Listener{
|
public class InventoryListener implements Listener{
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onPvpMenuInteract(InventoryClickEvent e) {
|
public void onPvpMenuInteract(InventoryClickEvent e) {
|
||||||
Player p = e.getWhoClicked();
|
Player p = (Player) e.getWhoClicked();
|
||||||
Inventory inv = e.getClickedInventory();
|
Inventory inv = e.getClickedInventory();
|
||||||
String invtitle = e.getView().getTitle();
|
String invtitle = e.getView().getTitle();
|
||||||
|
PersistentDataContainer pdc = p.getPersistentDataContainer();
|
||||||
|
NamespacedKey pvptoggle = new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle");
|
||||||
|
NamespacedKey ultra = new NamespacedKey(Pvptoggle.pvptoggle, "ultra");
|
||||||
if (invtitle.equals("PvP-Menu")) {
|
if (invtitle.equals("PvP-Menu")) {
|
||||||
event.setCancelled(true);
|
e.setCancelled(true);
|
||||||
if (event.getCurrentItem() != null) {
|
if (e.getCurrentItem() != null) {
|
||||||
switch (e.getCurrentItem().getItemMeta().getDisplayName()) {
|
switch (e.getCurrentItem().getItemMeta().getDisplayName()) {
|
||||||
case "Inventar schließen":
|
case "Inventar schließen":
|
||||||
p.closeInventory();
|
p.closeInventory();
|
||||||
break;
|
break;
|
||||||
case "Ultra an/aus schalten":
|
case "Ultra an/aus schalten":
|
||||||
multra.setDisplayName("Ultra an/aus schalten");
|
|
||||||
if (pdc.has(ultra, PersistentDataType.BOOLEAN)) {
|
if (pdc.has(ultra, PersistentDataType.BOOLEAN)) {
|
||||||
pdc.set(ultra, PersistentDataType.BOOLEAN, !pdc.get(ultra, PersistentDataType.BOOLEAN));
|
pdc.set(ultra, PersistentDataType.BOOLEAN, !pdc.get(ultra, PersistentDataType.BOOLEAN));
|
||||||
sender.sendMessage("PvP-Ultra ist für dich jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
p.sendMessage("PvP-Ultra ist für dich jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
inv.setItem(12, InventoryMenu.getMenuItem(1, p));
|
inv.setItem(12, InventoryMenu.getMenuItem(1, p));
|
||||||
} else {
|
} else {
|
||||||
pdc.set(ultra, PersistentDataContainer.BOOLEAN, true);
|
pdc.set(ultra, PersistentDataType.BOOLEAN, true);
|
||||||
sender.sendMessage("PvP-Ultra ist für dich jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
p.sendMessage("PvP-Ultra ist für dich jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
inv.setItem(12, InventoryMenu.getMenuItem(1, p));
|
inv.setItem(12, InventoryMenu.getMenuItem(1, p));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "PvP-Schutz an/aus schalten":
|
case "PvP-Schutz an/aus schalten":
|
||||||
mtoggle.setDisplayName("PvP-Schutz an/aus schalten");
|
|
||||||
if (pdc.has(pvptoggle, PersistentDataType.BOOLEAN)) {
|
if (pdc.has(pvptoggle, PersistentDataType.BOOLEAN)) {
|
||||||
pdc.set(pvptoggle, PersistentDataType.BOOLEAN, !pdc.get(pvptoggle, PersistentDataType.BOOLEAN));
|
pdc.set(pvptoggle, PersistentDataType.BOOLEAN, !pdc.get(pvptoggle, PersistentDataType.BOOLEAN));
|
||||||
sender.sendMessage("Dein PvP-Schutz ist jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
p.sendMessage("Dein PvP-Schutz ist jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
inv.setItem(10, InventoryMenu.getMenuItem(0, p));
|
inv.setItem(10, InventoryMenu.getMenuItem(0, p));
|
||||||
} else {
|
} else {
|
||||||
pdc.set(pvptoggle, PersistentDataType.BOOLEAN, Config.getPvpProt());
|
pdc.set(pvptoggle, PersistentDataType.BOOLEAN, Config.getPvpProt());
|
||||||
sender.sendMessage("Dein PvP-Schutz ist jetzt " + (pdc.get(pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN)?"an":"aus"));
|
p.sendMessage("Dein PvP-Schutz ist jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
inv.setItem(10, InventoryMenu.getMenuItem(0, p));
|
inv.setItem(10, InventoryMenu.getMenuItem(0, p));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -55,7 +62,7 @@ public class InventoryListener implements Listener{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (invtitle.equals("Whitelist-Menu")) {
|
} else if (invtitle.equals("Whitelist-Menu")) {
|
||||||
if (event.getCurrentItem() != null) {
|
if (e.getCurrentItem() != null) {
|
||||||
switch (e.getCurrentItem().getItemMeta().getDisplayName()) {
|
switch (e.getCurrentItem().getItemMeta().getDisplayName()) {
|
||||||
case "Inventar schließen":
|
case "Inventar schließen":
|
||||||
p.closeInventory();
|
p.closeInventory();
|
||||||
@@ -67,7 +74,7 @@ public class InventoryListener implements Listener{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (invtitle.equals("Blacklist-Menu")) {
|
} else if (invtitle.equals("Blacklist-Menu")) {
|
||||||
if (event.getCurrentItem() != null) {
|
if (e.getCurrentItem() != null) {
|
||||||
switch (e.getCurrentItem().getItemMeta().getDisplayName()) {
|
switch (e.getCurrentItem().getItemMeta().getDisplayName()) {
|
||||||
case "Inventar schließen":
|
case "Inventar schließen":
|
||||||
p.closeInventory();
|
p.closeInventory();
|
||||||
@@ -79,7 +86,7 @@ public class InventoryListener implements Listener{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (invtitle.equals("Operator-Menu")) {
|
} else if (invtitle.equals("Operator-Menu")) {
|
||||||
if (event.getCurrentItem() != null) {
|
if (e.getCurrentItem() != null) {
|
||||||
switch (e.getCurrentItem().getItemMeta().getDisplayName()) {
|
switch (e.getCurrentItem().getItemMeta().getDisplayName()) {
|
||||||
case "Inventar schließen":
|
case "Inventar schließen":
|
||||||
p.closeInventory();
|
p.closeInventory();
|
||||||
@@ -90,21 +97,21 @@ public class InventoryListener implements Listener{
|
|||||||
break;
|
break;
|
||||||
case "Standard PvP-Schutz an/aus schalten":
|
case "Standard PvP-Schutz an/aus schalten":
|
||||||
Config.setPvpProt(!Config.getPvpProt());
|
Config.setPvpProt(!Config.getPvpProt());
|
||||||
inv.set(11, InventoryMenu.getMenuItem(8));
|
inv.setItem(11, InventoryMenu.getMenuItem(8, p));
|
||||||
break;
|
break;
|
||||||
case "Zeit um zurückzuschlagen erhöhen":
|
case "Zeit um zurückzuschlagen erhöhen":
|
||||||
if (e.isRightClick()) {
|
if (e.isRightClick()) {
|
||||||
Config.setPvpTime(getPvpTime() + 1);
|
Config.setPvpTime(Config.getPvpTime() + 1);
|
||||||
} else if (e.isLeftClick()) {
|
} else if (e.isLeftClick()) {
|
||||||
Config.setPvpTime(getPvpTime() + 10);
|
Config.setPvpTime(Config.getPvpTime() + 10);
|
||||||
}
|
}
|
||||||
inv.setItem(15, InventoryMenu.getMenuItem(9));
|
inv.setItem(15, InventoryMenu.getMenuItem(9, p));
|
||||||
break;
|
break;
|
||||||
case "Zeit um zurückzuschlagen erniedrigen":
|
case "Zeit um zurückzuschlagen erniedrigen":
|
||||||
if (e.isRightClick()) {
|
if (e.isRightClick()) {
|
||||||
Config.setPvpTime(getPvpTime() - 1);
|
Config.setPvpTime(Config.getPvpTime() - 1);
|
||||||
} else if (e.isLeftClick()) {
|
} else if (e.isLeftClick()) {
|
||||||
Config.setPvpTime(getPvpTime() - 10);
|
Config.setPvpTime(Config.getPvpTime() - 10);
|
||||||
}
|
}
|
||||||
inv.setItem(15, InventoryMenu.getMenuItem(9, p));
|
inv.setItem(15, InventoryMenu.getMenuItem(9, p));
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -1,6 +1,20 @@
|
|||||||
|
package benkralex.pvptoggle;
|
||||||
|
|
||||||
|
import benkralex.pvptoggle.Config;
|
||||||
|
import benkralex.pvptoggle.Pvptoggle;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.Material;
|
||||||
|
import org.bukkit.NamespacedKey;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.inventory.Inventory;
|
||||||
|
import org.bukkit.inventory.ItemFlag;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
import org.bukkit.inventory.meta.ItemMeta;
|
||||||
|
import org.bukkit.persistence.PersistentDataType;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
public class InventoryMenu {
|
public class InventoryMenu {
|
||||||
public static final int PVP_TOGGLE=0;
|
public static final int PVP_TOGGLE=0;
|
||||||
@@ -17,37 +31,41 @@ public class InventoryMenu {
|
|||||||
public static final int PVP_TIME_MINUS=11;
|
public static final int PVP_TIME_MINUS=11;
|
||||||
|
|
||||||
public static ItemStack getMenuItem(int i, Player p) {
|
public static ItemStack getMenuItem(int i, Player p) {
|
||||||
switch i {
|
List<String> lore = new ArrayList<String >();
|
||||||
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
ItemStack itoggle = new ItemStack(Material.IRON_SWORD);
|
ItemStack itoggle = new ItemStack(Material.IRON_SWORD);
|
||||||
ItemMeta mtoggle = itoggle.getItemMeta();
|
ItemMeta mtoggle = itoggle.getItemMeta();
|
||||||
mtoggle.setDispalyName("PvP-Schutz an/aus schalten");
|
mtoggle.setDisplayName("PvP-Schutz an/aus schalten");
|
||||||
mtoggle.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mtoggle.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
mtoggle.setLore(ChatColor.BLUE + (p.getPersistentDataContainer().get(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN)?"Aus":"An" +) " schalten");
|
String s = p.getPersistentDataContainer().get(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN)?"Aus":"An";
|
||||||
|
lore.add(ChatColor.BLUE + s + " schalten");
|
||||||
|
mtoggle.setLore(lore);
|
||||||
itoggle.setItemMeta(mtoggle);
|
itoggle.setItemMeta(mtoggle);
|
||||||
return itoggle;
|
return itoggle;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
ItemStack iultra = new ItemStack(Material.DIAMOND_SWORD);
|
ItemStack iultra = new ItemStack(Material.DIAMOND_SWORD);
|
||||||
ItemMeta multra = iultra.getItemMeta();
|
ItemMeta multra = iultra.getItemMeta();
|
||||||
multra.setDispalyName("Ultra an/aus schalten");
|
multra.setDisplayName("Ultra an/aus schalten");
|
||||||
multra.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
multra.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
multra.setLore(ChatColor.BLUE + (p.getPersistentDataContainer().get(new NamespacedKey(Pvptoggle.pvptoggle, "pvpultra"), PersistentDataType.BOOLEAN)?"Aus":"An") + " schalten");
|
lore.add(ChatColor.BLUE + (p.getPersistentDataContainer().get(new NamespacedKey(Pvptoggle.pvptoggle, "pvpultra"), PersistentDataType.BOOLEAN)?"Aus":"An") + " schalten");
|
||||||
|
multra.setLore(lore);
|
||||||
iultra.setItemMeta(multra);
|
iultra.setItemMeta(multra);
|
||||||
return iultra;
|
return iultra;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
ItemStack iwhitelist = new ItemStack(Material.WHITE_CONCRET);
|
ItemStack iwhitelist = new ItemStack(Material.WHITE_CONCRETE);
|
||||||
ItemMeta mwhitelist = iwhitelist.getItemMeta();
|
ItemMeta mwhitelist = iwhitelist.getItemMeta();
|
||||||
mwhitelist.setDispalyName("Whitelist");
|
mwhitelist.setDisplayName("Whitelist");
|
||||||
mwhitelist.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mwhitelist.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
iwhitelist.setItemMeta(mwhitelist);
|
iwhitelist.setItemMeta(mwhitelist);
|
||||||
return iwhitelist;
|
return iwhitelist;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
ItemStack iblacklist = new ItemStack(Material.BLACK_CONCRET);
|
ItemStack iblacklist = new ItemStack(Material.BLACK_CONCRETE);
|
||||||
ItemMeta mblacklist = iblacklist.getItemMeta();
|
ItemMeta mblacklist = iblacklist.getItemMeta();
|
||||||
mblacklist.setDispalyName("Blacklist");
|
mblacklist.setDisplayName("Blacklist");
|
||||||
mblacklist.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mblacklist.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
iblacklist.setItemMeta(mblacklist);
|
iblacklist.setItemMeta(mblacklist);
|
||||||
return iblacklist;
|
return iblacklist;
|
||||||
@@ -55,7 +73,7 @@ public class InventoryMenu {
|
|||||||
case 4:
|
case 4:
|
||||||
ItemStack iop = new ItemStack(Material.BEDROCK);
|
ItemStack iop = new ItemStack(Material.BEDROCK);
|
||||||
ItemMeta mop = iop.getItemMeta();
|
ItemMeta mop = iop.getItemMeta();
|
||||||
mop.setDispalyName("Menu für Operators");
|
mop.setDisplayName("Menu für Operators");
|
||||||
mop.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mop.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
iop.setItemMeta(mop);
|
iop.setItemMeta(mop);
|
||||||
/*if (p.hasPermission("pvp.inv.op")) {
|
/*if (p.hasPermission("pvp.inv.op")) {
|
||||||
@@ -66,7 +84,7 @@ public class InventoryMenu {
|
|||||||
case 5:
|
case 5:
|
||||||
ItemStack iclose = new ItemStack(Material.BARRIER);
|
ItemStack iclose = new ItemStack(Material.BARRIER);
|
||||||
ItemMeta mclose = iclose.getItemMeta();
|
ItemMeta mclose = iclose.getItemMeta();
|
||||||
mclose.setDispalyName("Inventar schließen");
|
mclose.setDisplayName("Inventar schließen");
|
||||||
mclose.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mclose.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
iclose.setItemMeta(mclose);
|
iclose.setItemMeta(mclose);
|
||||||
//inv.setItem(8, getMenuItem(5));
|
//inv.setItem(8, getMenuItem(5));
|
||||||
@@ -75,14 +93,14 @@ public class InventoryMenu {
|
|||||||
case 6:
|
case 6:
|
||||||
ItemStack iback = new ItemStack(Material.HOPPER);
|
ItemStack iback = new ItemStack(Material.HOPPER);
|
||||||
ItemMeta mback = iback.getItemMeta();
|
ItemMeta mback = iback.getItemMeta();
|
||||||
mback.setDispalyName("Zurück");
|
mback.setDisplayName("Zurück");
|
||||||
mback.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mback.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
iback.setItemMeta(mback);
|
iback.setItemMeta(mback);
|
||||||
//inv.setItem(26, getMenuItem(6));
|
//inv.setItem(26, getMenuItem(6));
|
||||||
return iback;
|
return iback;
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
ItemStack ivoid = new ItemStack(Material.LIGHT_GRAY_STAIND_GLASS_PAIN);
|
ItemStack ivoid = new ItemStack(Material.LIGHT_GRAY_STAINED_GLASS_PANE);
|
||||||
ItemMeta mvoid = ivoid.getItemMeta();
|
ItemMeta mvoid = ivoid.getItemMeta();
|
||||||
mvoid.setDisplayName("");
|
mvoid.setDisplayName("");
|
||||||
mvoid.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mvoid.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
@@ -98,7 +116,8 @@ public class InventoryMenu {
|
|||||||
ItemStack idefaultprot = new ItemStack(Material.GOLDEN_SWORD);
|
ItemStack idefaultprot = new ItemStack(Material.GOLDEN_SWORD);
|
||||||
ItemMeta mdefaultprot = idefaultprot.getItemMeta();
|
ItemMeta mdefaultprot = idefaultprot.getItemMeta();
|
||||||
mdefaultprot.setDisplayName("Standard PvP-Schutz an/aus schalten");
|
mdefaultprot.setDisplayName("Standard PvP-Schutz an/aus schalten");
|
||||||
mdefaultprot.setLore(ChatColor.BLUE + (Config.getPvpProt()?"Aus":"An") + " schalten");
|
lore.add(ChatColor.BLUE + (Config.getPvpProt()?"Aus":"An") + " schalten");
|
||||||
|
mdefaultprot.setLore(lore);
|
||||||
mdefaultprot.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mdefaultprot.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
idefaultprot.setItemMeta(mdefaultprot);
|
idefaultprot.setItemMeta(mdefaultprot);
|
||||||
return idefaultprot;
|
return idefaultprot;
|
||||||
@@ -107,7 +126,8 @@ public class InventoryMenu {
|
|||||||
ItemStack ipvptime = new ItemStack(Material.CLOCK);
|
ItemStack ipvptime = new ItemStack(Material.CLOCK);
|
||||||
ItemMeta mpvptime = ipvptime.getItemMeta();
|
ItemMeta mpvptime = ipvptime.getItemMeta();
|
||||||
mpvptime.setDisplayName("Zeit um zurückzuschlagen");
|
mpvptime.setDisplayName("Zeit um zurückzuschlagen");
|
||||||
mpvptime.setLore(ChatColor.BLUE + Config.getPvpTime() + " Sekunden um zurückzuschlagen");
|
lore.add(ChatColor.BLUE + "" + Config.getPvpTime() + " Sekunden um zurückzuschlagen");
|
||||||
|
mpvptime.setLore(lore);
|
||||||
mpvptime.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mpvptime.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
ipvptime.setItemMeta(mpvptime);
|
ipvptime.setItemMeta(mpvptime);
|
||||||
return ipvptime;
|
return ipvptime;
|
||||||
@@ -117,7 +137,9 @@ public class InventoryMenu {
|
|||||||
ItemMeta mpvptimeplus = ipvptimeplus.getItemMeta();
|
ItemMeta mpvptimeplus = ipvptimeplus.getItemMeta();
|
||||||
mpvptimeplus.setDisplayName("Zeit um zurückzuschlagen erhöhen");
|
mpvptimeplus.setDisplayName("Zeit um zurückzuschlagen erhöhen");
|
||||||
mpvptimeplus.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mpvptimeplus.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
mpvptimeplus.setLore(ChatColor.BLUE + "Rechtsklick:" + ChatColor.GREEN + " +1\n" + ChatColor.BLUE + "Linksklick:" + ChatColor.GREEN + " +10");
|
lore.add(ChatColor.BLUE + "Rechtsklick:" + ChatColor.GREEN + " +1");
|
||||||
|
lore.add(ChatColor.BLUE + "Linksklick:" + ChatColor.GREEN + " +10");
|
||||||
|
mpvptimeplus.setLore(lore);
|
||||||
ipvptimeplus.setItemMeta(mpvptimeplus);
|
ipvptimeplus.setItemMeta(mpvptimeplus);
|
||||||
return ipvptimeplus;
|
return ipvptimeplus;
|
||||||
break;
|
break;
|
||||||
@@ -126,24 +148,29 @@ public class InventoryMenu {
|
|||||||
ItemMeta mpvptimeminus = ipvptimeminus.getItemMeta();
|
ItemMeta mpvptimeminus = ipvptimeminus.getItemMeta();
|
||||||
mpvptimeminus.setDisplayName("Zeit um zurückzuschlagen verringern");
|
mpvptimeminus.setDisplayName("Zeit um zurückzuschlagen verringern");
|
||||||
mpvptimeminus.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
mpvptimeminus.addItemFlags(ItemFlag.HIDE_ATTRIBUTES);
|
||||||
mpvptimeminus.setLore(ChatColor.BLUE + "Rechtsklick:" + ChatColor.RED + " -1\n" + ChatColor.BLUE + "Linksklick:" + ChatColor.RED + " -10");
|
lore.add(ChatColor.BLUE + "Rechtsklick:" + ChatColor.RED + " -1");
|
||||||
|
lore.add(ChatColor.BLUE + "Linksklick:" + ChatColor.RED + " -10");
|
||||||
|
mpvptimeminus.setLore(lore);
|
||||||
ipvptimeminus.setItemMeta(mpvptimeminus);
|
ipvptimeminus.setItemMeta(mpvptimeminus);
|
||||||
return ipvptimeminus;
|
return ipvptimeminus;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Inventory pvpMenuFillEmpty(Inventory inv, Player p) {
|
public static Inventory pvpMenuFillEmpty(Inventory inv, Player p) {
|
||||||
for (int i = 0, i <= (inv.getSize-1), i++) {
|
for (int i = 0; i <= inv.getSize()-1; i++) {
|
||||||
if (inv.getItem(i) == Material.AIR) {
|
if (inv.getItem(i).equals(Material.AIR)) {
|
||||||
inv.set(i, getMenuItem(7, p));
|
inv.setItem(i, getMenuItem(7, p));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return inv;
|
return inv;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Inventory pvpMenu(Player p) {
|
public static Inventory pvpMenu(Player p) {
|
||||||
Inventory inv = new Bukkit.createInventory(null, 3*9, "PvP-Menu");
|
Inventory inv = Bukkit.createInventory(null, 3 * 9, "PvP-Menu");
|
||||||
|
|
||||||
inv.setItem(10, getMenuItem(0, p));
|
inv.setItem(10, getMenuItem(0, p));
|
||||||
inv.setItem(12, getMenuItem(1, p));
|
inv.setItem(12, getMenuItem(1, p));
|
||||||
@@ -159,7 +186,7 @@ public class InventoryMenu {
|
|||||||
|
|
||||||
|
|
||||||
public static Inventory pvpBlacklistMenu(Player p) {
|
public static Inventory pvpBlacklistMenu(Player p) {
|
||||||
Inventory inv = new Bukkit.createInventory(null, 3*9, "Blacklist-Menu");
|
Inventory inv = Bukkit.createInventory(null, 3*9, "Blacklist-Menu");
|
||||||
inv.setItem(8, getMenuItem(5, p));
|
inv.setItem(8, getMenuItem(5, p));
|
||||||
inv.setItem(26, getMenuItem(6, p));
|
inv.setItem(26, getMenuItem(6, p));
|
||||||
|
|
||||||
@@ -168,7 +195,7 @@ public class InventoryMenu {
|
|||||||
|
|
||||||
|
|
||||||
public static Inventory pvpWhitelistMenu(Player p) {
|
public static Inventory pvpWhitelistMenu(Player p) {
|
||||||
Inventory inv = new Bukkit.createInventory(null, 3*9, "Whitelist-Menu");
|
Inventory inv = Bukkit.createInventory(null, 3*9, "Whitelist-Menu");
|
||||||
inv.setItem(8, getMenuItem(5, p));
|
inv.setItem(8, getMenuItem(5, p));
|
||||||
inv.setItem(26, getMenuItem(6, p));
|
inv.setItem(26, getMenuItem(6, p));
|
||||||
|
|
||||||
@@ -177,7 +204,7 @@ public class InventoryMenu {
|
|||||||
|
|
||||||
|
|
||||||
public static Inventory pvpOpSettingsMenu(Player p) {
|
public static Inventory pvpOpSettingsMenu(Player p) {
|
||||||
Inventory inv = new Bukkit.createInventory(null, 3*9, "Operator-Menu");
|
Inventory inv = Bukkit.createInventory(null, 3*9, "Operator-Menu");
|
||||||
inv.setItem(8, getMenuItem(5, p));
|
inv.setItem(8, getMenuItem(5, p));
|
||||||
inv.setItem(26, getMenuItem(6, p));
|
inv.setItem(26, getMenuItem(6, p));
|
||||||
inv.setItem(11, getMenuItem(8, p));
|
inv.setItem(11, getMenuItem(8, p));
|
||||||
|
|||||||
@@ -2,12 +2,20 @@ package benkralex.pvptoggle;
|
|||||||
|
|
||||||
import dev.jorel.commandapi.CommandAPI;
|
import dev.jorel.commandapi.CommandAPI;
|
||||||
import dev.jorel.commandapi.CommandAPICommand;
|
import dev.jorel.commandapi.CommandAPICommand;
|
||||||
|
import dev.jorel.commandapi.arguments.PlayerArgument;
|
||||||
import dev.jorel.commandapi.executors.CommandArguments;
|
import dev.jorel.commandapi.executors.CommandArguments;
|
||||||
|
import net.md_5.bungee.api.ChatColor;
|
||||||
|
import net.md_5.bungee.api.chat.ClickEvent;
|
||||||
|
import net.md_5.bungee.api.chat.TextComponent;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.NamespacedKey;
|
import org.bukkit.NamespacedKey;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.persistence.PersistentDataContainer;
|
import org.bukkit.persistence.PersistentDataContainer;
|
||||||
import org.bukkit.persistence.PersistentDataType;
|
import org.bukkit.persistence.PersistentDataType;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
|
||||||
public class PvpCommand {
|
public class PvpCommand {
|
||||||
public static void createPvpCommand() {
|
public static void createPvpCommand() {
|
||||||
//Create PVP-Command with Command-API
|
//Create PVP-Command with Command-API
|
||||||
@@ -60,7 +68,7 @@ public class PvpCommand {
|
|||||||
.withUsage("/pvp blacklist remove <Player>")
|
.withUsage("/pvp blacklist remove <Player>")
|
||||||
.withArguments(new PlayerArgument("Player"))
|
.withArguments(new PlayerArgument("Player"))
|
||||||
.withHelp("Spieler aus Blacklist entfernen", "Du kannst damit Spieler aus deiner Blacklist entfernen.")))
|
.withHelp("Spieler aus Blacklist entfernen", "Du kannst damit Spieler aus deiner Blacklist entfernen.")))
|
||||||
.withSubcommand(new ConmmandAPICommand("fight")
|
.withSubcommand(new CommandAPICommand("fight")
|
||||||
.executesPlayer((sender, args)->{pvpFight(sender, args, 0);})
|
.executesPlayer((sender, args)->{pvpFight(sender, args, 0);})
|
||||||
.withPermission("pvp.fight")
|
.withPermission("pvp.fight")
|
||||||
.withUsage("/pvp fight <Player>")
|
.withUsage("/pvp fight <Player>")
|
||||||
@@ -95,7 +103,7 @@ public class PvpCommand {
|
|||||||
sender.sendMessage("Dein PvP-Schutz ist jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
sender.sendMessage("Dein PvP-Schutz ist jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
} else {
|
} else {
|
||||||
pdc.set(pvptoggle, PersistentDataType.BOOLEAN, Config.getPvpProt());
|
pdc.set(pvptoggle, PersistentDataType.BOOLEAN, Config.getPvpProt());
|
||||||
sender.sendMessage("Dein PvP-Schutz ist jetzt " + (pdc.get(pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN)?"an":"aus"));
|
sender.sendMessage("Dein PvP-Schutz ist jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -107,17 +115,18 @@ public class PvpCommand {
|
|||||||
PersistentDataContainer pdc = sender.getPersistentDataContainer();
|
PersistentDataContainer pdc = sender.getPersistentDataContainer();
|
||||||
if (pdc.has(ultra, PersistentDataType.BOOLEAN)) {
|
if (pdc.has(ultra, PersistentDataType.BOOLEAN)) {
|
||||||
pdc.set(ultra, PersistentDataType.BOOLEAN, !pdc.get(ultra, PersistentDataType.BOOLEAN));
|
pdc.set(ultra, PersistentDataType.BOOLEAN, !pdc.get(ultra, PersistentDataType.BOOLEAN));
|
||||||
sender.sendMessage("PvP-Ultra ist für dich jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
sender.sendMessage("PvP-Ultra ist für dich jetzt " + (pdc.get(ultra, PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
} else {
|
} else {
|
||||||
pdc.set(ultra, PersistentDataContainer.BOOLEAN, true);
|
pdc.set(ultra, PersistentDataType.BOOLEAN, true);
|
||||||
sender.sendMessage("PvP-Ultra ist für dich jetzt " + (pdc.get(pvptoggle, PersistentDataType.BOOLEAN)?"an":"aus"));
|
sender.sendMessage("PvP-Ultra ist für dich jetzt " + (pdc.get(ultra, PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public static void pvpWhitelist(Player sender, CommandArguments args, Int action) {
|
public static void pvpWhitelist(Player sender, CommandArguments args, int action) {
|
||||||
//PvP Whitelist Command
|
//PvP Whitelist Command
|
||||||
|
Player pargs = (Player) args.get("Player");
|
||||||
PersistentDataContainer pdc = sender.getPersistentDataContainer();
|
PersistentDataContainer pdc = sender.getPersistentDataContainer();
|
||||||
NamespacedKey whitelist = new NamespacedKey(Pvptoggle.pvptoggle, "whitelist");
|
NamespacedKey whitelist = new NamespacedKey(Pvptoggle.pvptoggle, "whitelist");
|
||||||
if (action == 1) {
|
if (action == 1) {
|
||||||
@@ -128,7 +137,7 @@ public class PvpCommand {
|
|||||||
int i = 0;
|
int i = 0;
|
||||||
for (NamespacedKey whitelistkey:pdcwhitelist.getKeys()) {
|
for (NamespacedKey whitelistkey:pdcwhitelist.getKeys()) {
|
||||||
i++;
|
i++;
|
||||||
sender.sendMessage(ChatColor.LIGHT_BLUE + i + ". " + ChatColor.BLUE + Bukkit.getPlayer(UUID.fromString(pdcwhitelist.get(whitelistkey, PersistentDataType.STRING))).getDisplayName());
|
sender.sendMessage(ChatColor.BLUE + "" + i + ". " + ChatColor.DARK_BLUE + "" + Bukkit.getPlayer(UUID.fromString(pdcwhitelist.get(whitelistkey, PersistentDataType.STRING))).getDisplayName());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
sender.sendMessage("Deine Whitelist ist leer");
|
sender.sendMessage("Deine Whitelist ist leer");
|
||||||
@@ -143,8 +152,8 @@ public class PvpCommand {
|
|||||||
//pdc erstellen
|
//pdc erstellen
|
||||||
}
|
}
|
||||||
PersistentDataContainer pdcwhitelist = pdc.get(whitelist, PersistentDataType.TAG_CONTAINER);
|
PersistentDataContainer pdcwhitelist = pdc.get(whitelist, PersistentDataType.TAG_CONTAINER);
|
||||||
pdcwhitelist.add(new NamespacedKey(Pvptoggle.pvptoggle, args.get("Player").getUniqueId().toString()), PersistentDataType.STRING, args.get("Player").getUniqueId().toString()));
|
pdcwhitelist.set(new NamespacedKey(Pvptoggle.pvptoggle, pargs.getUniqueId().toString()), PersistentDataType.STRING, pargs.getUniqueId().toString());
|
||||||
sender.sendMessage(ChatColor.LIGHT_GREEN + args.get("Player").getDisplayName() + "wurde zu deiner Whitelist hinzugefügt");
|
sender.sendMessage(ChatColor.GREEN + pargs.getDisplayName() + "wurde zu deiner Whitelist hinzugefügt");
|
||||||
|
|
||||||
sender.sendMessage(ChatColor.RED + "Die Whitelist funktioniert aktuell nicht");
|
sender.sendMessage(ChatColor.RED + "Die Whitelist funktioniert aktuell nicht");
|
||||||
} else if (action == 3) {
|
} else if (action == 3) {
|
||||||
@@ -154,11 +163,11 @@ public class PvpCommand {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
PersistentDataContainer whitelistpdc = pdc.get(whitelist, PersistentDataType.TAG_CONTAINER);
|
PersistentDataContainer whitelistpdc = pdc.get(whitelist, PersistentDataType.TAG_CONTAINER);
|
||||||
if (whitelistpdc.has(new NamespacedKey(Pvptoggle.pvptoggle, args.get("Player").getUniqueId()))) {
|
if (whitelistpdc.has(new NamespacedKey(Pvptoggle.pvptoggle, pargs.getUniqueId().toString()), PersistentDataType.STRING)) {
|
||||||
whitelistpdc.remove(new NamespacedKey(Pvptoggle.pvptoggle, args.get("Player").getUniqueId().toString()), PersistentDataType.STRING);
|
whitelistpdc.remove(new NamespacedKey(Pvptoggle.pvptoggle, pargs.getUniqueId().toString()));
|
||||||
sender.sendMessage(ChatColor.LIGHT_GREEN + args.get("Player").getDispalyName() + "wurde aus deiner Whitelist entfernt");
|
sender.sendMessage(ChatColor.GREEN + pargs.getDisplayName() + "wurde aus deiner Whitelist entfernt");
|
||||||
} else {
|
} else {
|
||||||
sender.sendMessage(ChatColor.RED + args.get("Player").getDisplayName() + "ist nicht in deiner Whitelist");
|
sender.sendMessage(ChatColor.RED + pargs.getDisplayName() + "ist nicht in deiner Whitelist");
|
||||||
}
|
}
|
||||||
|
|
||||||
sender.sendMessage(ChatColor.RED + "Die Whitelist funktioniert aktuell nicht");
|
sender.sendMessage(ChatColor.RED + "Die Whitelist funktioniert aktuell nicht");
|
||||||
@@ -169,8 +178,9 @@ public class PvpCommand {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
public static void pvpBlacklist(Player sender, CommandArguments args, Int action) {
|
public static void pvpBlacklist(Player sender, CommandArguments args, int action) {
|
||||||
//PvP Blacklist Command
|
//PvP Blacklist Command
|
||||||
|
Player pargs = (Player) args.get("Player");
|
||||||
PersistentDataContainer pdc = sender.getPersistentDataContainer();
|
PersistentDataContainer pdc = sender.getPersistentDataContainer();
|
||||||
NamespacedKey blacklist = new NamespacedKey(Pvptoggle.pvptoggle, "blacklist");
|
NamespacedKey blacklist = new NamespacedKey(Pvptoggle.pvptoggle, "blacklist");
|
||||||
if (action == 1) {
|
if (action == 1) {
|
||||||
@@ -181,7 +191,7 @@ public class PvpCommand {
|
|||||||
int i = 0;
|
int i = 0;
|
||||||
for (NamespacedKey blacklistkey:pdcblacklist.getKeys()) {
|
for (NamespacedKey blacklistkey:pdcblacklist.getKeys()) {
|
||||||
i++;
|
i++;
|
||||||
sender.sendMessage(ChatColor.LIGHT_BLUE + i + ". " + ChatColor.BLUE + Bukkit.getPlayer(UUID.fromString(pdcblacklist.get(blacklistkey, PersistentDataType.STRING))).getDisplayName());
|
sender.sendMessage(ChatColor.BLUE + "" + i + ". " + ChatColor.BLUE + "" + Bukkit.getPlayer(UUID.fromString(pdcblacklist.get(blacklistkey, PersistentDataType.STRING))).getDisplayName());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
sender.sendMessage("Deine Blacklist ist leer");
|
sender.sendMessage("Deine Blacklist ist leer");
|
||||||
@@ -195,23 +205,23 @@ public class PvpCommand {
|
|||||||
if (!pdc.has(blacklist, PersistentDataType.TAG_CONTAINER)) {
|
if (!pdc.has(blacklist, PersistentDataType.TAG_CONTAINER)) {
|
||||||
//pdc erstellen
|
//pdc erstellen
|
||||||
}
|
}
|
||||||
PersistentDataContainer pdcblacklist = pdc.get(blacklistlist, PersistentDataType.TAG_CONTAINER);
|
PersistentDataContainer pdcblacklist = pdc.get(blacklist, PersistentDataType.TAG_CONTAINER);
|
||||||
pdcblacklist.add(new NamespacedKey(Pvptoggle.pvptoggle, args.get("Player").getUniqueId().toString()), PersistentDataType.STRING, args.get("Player").getUniqueId().toString()));
|
pdcblacklist.set(new NamespacedKey(Pvptoggle.pvptoggle, pargs.getUniqueId().toString()), PersistentDataType.STRING, pargs.getUniqueId().toString());
|
||||||
sender.sendMessage(ChatColor.LIGHT_GREEN + args.get("Player").getDisplayName() + "wurde zu deiner Blacklist hinzugefügt");
|
sender.sendMessage(ChatColor.GREEN + pargs.getDisplayName() + "wurde zu deiner Blacklist hinzugefügt");
|
||||||
|
|
||||||
sender.sendMessage(ChatColor.RED + "Die Blacklist funktioniert aktuell nicht");
|
sender.sendMessage(ChatColor.RED + "Die Blacklist funktioniert aktuell nicht");
|
||||||
} else if (action == 3) {
|
} else if (action == 3) {
|
||||||
//entfernen
|
//entfernen
|
||||||
if (!pdc.has(blacklistlist, PersistentDataType.TAG_CONTAINER)) {
|
if (!pdc.has(blacklist, PersistentDataType.TAG_CONTAINER)) {
|
||||||
sender.sendMessage(ChatColor.RED + "Der Spieler" + args.get("Player") + "ist nicht in deiner Blacklist");
|
sender.sendMessage(ChatColor.RED + "Der Spieler" + args.get("Player") + "ist nicht in deiner Blacklist");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
PersistentDataContainer blacklistpdc = pdc.get(blacklist, PersistentDataType.TAG_CONTAINER);
|
PersistentDataContainer blacklistpdc = pdc.get(blacklist, PersistentDataType.TAG_CONTAINER);
|
||||||
if (blacklistpdc.has(new NamespacedKey(Pvptoggle.pvptoggle, args.get("Player").getUniqueId()))) {
|
if (blacklistpdc.has(new NamespacedKey(Pvptoggle.pvptoggle, pargs.getUniqueId().toString()), PersistentDataType.STRING)) {
|
||||||
whitelistpdc.remove(new NamespacedKey(Pvptoggle.pvptoggle, args.get("Player").getUniqueId().toString()), PersistentDataType.STRING);
|
blacklistpdc.remove(new NamespacedKey(Pvptoggle.pvptoggle, pargs.getUniqueId().toString()));
|
||||||
sender.sendMessage(ChatColor.LIGHT_GREEN + args.get("Player").getDispalyName() + "wurde aus deiner Blacklist entfernt");
|
sender.sendMessage(ChatColor.GREEN + pargs.getDisplayName() + "wurde aus deiner Blacklist entfernt");
|
||||||
} else {
|
} else {
|
||||||
sender.sendMessage(ChatColor.RED + args.get("Player").getDisplayName() + "ist nicht in deiner Blacklist");
|
sender.sendMessage(ChatColor.RED + pargs.getDisplayName() + "ist nicht in deiner Blacklist");
|
||||||
}
|
}
|
||||||
|
|
||||||
sender.sendMessage(ChatColor.RED + "Die Blacklist funktioniert aktuell nicht");
|
sender.sendMessage(ChatColor.RED + "Die Blacklist funktioniert aktuell nicht");
|
||||||
@@ -220,17 +230,17 @@ public class PvpCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void pvpFight(Player sender, Commandarguments args, int action) {
|
public static void pvpFight(Player sender, CommandArguments args, int action) {
|
||||||
//PvP Fight Command
|
//PvP Fight Command
|
||||||
if (action == 0) {
|
if (action == 0) {
|
||||||
//Kampf herrausgefordert
|
//Kampf herrausgefordert
|
||||||
Player pargs = args.get("Player");
|
Player pargs = (Player) args.get("Player");
|
||||||
TextComponent accept = new TextComponent(ChatColor.LIGHT_GREEN + "Annehmen");
|
TextComponent accept = new TextComponent(ChatColor.GREEN + "Annehmen");
|
||||||
TextComponent deny = new TextComponent(ChatColor.RED + "Ablehnen");
|
TextComponent deny = new TextComponent(ChatColor.RED + "Ablehnen");
|
||||||
accept.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/pvp fight accept"));
|
accept.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/pvp fight accept"));
|
||||||
deny.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/pvp fight deny"));
|
deny.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/pvp fight deny"));
|
||||||
pargs.sendMessage("Du wurdest von " + sender.getDisplayName() + " zu einem Kampf herrausgefordert.");
|
pargs.sendMessage("Du wurdest von " + sender.getDisplayName() + " zu einem Kampf herrausgefordert.");
|
||||||
pargs.sendMessage(accept + ChatColor.WHITE + " | " + deny);
|
pargs.sendMessage(accept + "" + ChatColor.WHITE + " | " + deny);
|
||||||
sender.sendMessage("Der Command funktioniert noch nicht");
|
sender.sendMessage("Der Command funktioniert noch nicht");
|
||||||
} else if (action == 1) {
|
} else if (action == 1) {
|
||||||
//Kampf angenommen
|
//Kampf angenommen
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import org.bukkit.event.Listener;
|
|||||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||||
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 org.bukkit.persistence.PersistentDataType;
|
||||||
import org.bukkit.projectiles.ProjectileSource;
|
import org.bukkit.projectiles.ProjectileSource;
|
||||||
|
|
||||||
public class PvpEvent implements Listener {
|
public class PvpEvent implements Listener {
|
||||||
@@ -50,10 +51,10 @@ public class PvpEvent implements Listener {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void playerJoinListener(PlayerJoinEvent event) {
|
public void playerJoinListener(PlayerJoinEvent event) {
|
||||||
if (!event.getplayer().getPersistentDataContainer().has(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN)) {
|
if (!event.getPlayer().getPersistentDataContainer().has(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN)) {
|
||||||
event.getPlayer().getPersistentDataContainer().set(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN, Config.getPvpProt());
|
event.getPlayer().getPersistentDataContainer().set(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN, Config.getPvpProt());
|
||||||
} else {
|
} else {
|
||||||
event.getPlayer().sendMessage("Dein PvP-Schutz ist " + (pdc.get(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN)?"an":"aus"));
|
event.getPlayer().sendMessage("Dein PvP-Schutz ist " + (event.getPlayer().getPersistentDataContainer().get(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"), PersistentDataType.BOOLEAN)?"an":"aus"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,13 +11,15 @@ public class Util {
|
|||||||
public static boolean canPvP(Player damager, Player victim){
|
public static boolean canPvP(Player damager, Player victim){
|
||||||
PersistentDataContainer damagerPDC=damager.getPersistentDataContainer();
|
PersistentDataContainer damagerPDC=damager.getPersistentDataContainer();
|
||||||
PersistentDataContainer victimPDC=victim.getPersistentDataContainer();
|
PersistentDataContainer victimPDC=victim.getPersistentDataContainer();
|
||||||
|
Boolean ultradamager;
|
||||||
|
Boolean ultravictim;
|
||||||
Boolean toggle = damagerPDC.get(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"),PersistentDataType.BOOLEAN);
|
Boolean toggle = damagerPDC.get(new NamespacedKey(Pvptoggle.pvptoggle, "pvptoggle"),PersistentDataType.BOOLEAN);
|
||||||
if (victimPDC.has(new NamespacedKey(Pvptoggle.pvptoggle, "ultra"),PersistentDataType.BOOLEAN)) {
|
if (victimPDC.has(new NamespacedKey(Pvptoggle.pvptoggle, "ultra"),PersistentDataType.BOOLEAN)) {
|
||||||
Boolean ultravictim = victimPDC.get(new NamespacedKey(Pvptoggle.pvptoggle, "ultra"),PersistentDataType.BOOLEAN);
|
ultravictim = victimPDC.get(new NamespacedKey(Pvptoggle.pvptoggle, "ultra"),PersistentDataType.BOOLEAN);
|
||||||
} else {Boolean ultravictim = false;}
|
} else {ultravictim = false;}
|
||||||
if (damagerPDC.has(new NamespacedKey(Pvptoggle.pvptoggle, "ultra"),PersistentDataType.BOOLEAN)) {
|
if (damagerPDC.has(new NamespacedKey(Pvptoggle.pvptoggle, "ultra"),PersistentDataType.BOOLEAN)) {
|
||||||
Boolean ultradamager = damagerPDC.get(new NamespacedKey(Pvptoggle.pvptoggle, "ultra"),PersistentDataType.BOOLEAN);
|
ultradamager = damagerPDC.get(new NamespacedKey(Pvptoggle.pvptoggle, "ultra"),PersistentDataType.BOOLEAN);
|
||||||
} else {Boolean ultradamager = false;}
|
} else {ultradamager = false;}
|
||||||
|
|
||||||
if(toggle!=null) {
|
if(toggle!=null) {
|
||||||
return !toggle || checkPvPData(damager, victim) || !ultradamager || !ultravictim;
|
return !toggle || checkPvPData(damager, victim) || !ultradamager || !ultravictim;
|
||||||
@@ -38,7 +40,7 @@ public class Util {
|
|||||||
}
|
}
|
||||||
public static void delOldData(PersistentDataContainer pvpdamagers){
|
public static void delOldData(PersistentDataContainer pvpdamagers){
|
||||||
for(NamespacedKey damagerKey:pvpdamagers.getKeys()){
|
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);
|
pvpdamagers.remove(damagerKey);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -54,14 +56,4 @@ public class Util {
|
|||||||
damagersOfVictim.set(new NamespacedKey(Pvptoggle.pvptoggle, damagerUUID), PersistentDataType.LONG, Instant.now().getEpochSecond());
|
damagersOfVictim.set(new NamespacedKey(Pvptoggle.pvptoggle, damagerUUID), PersistentDataType.LONG, Instant.now().getEpochSecond());
|
||||||
victimPDC.set(new NamespacedKey(Pvptoggle.pvptoggle,"pvpdamagers"), PersistentDataType.TAG_CONTAINER,damagersOfVictim);
|
victimPDC.set(new NamespacedKey(Pvptoggle.pvptoggle,"pvpdamagers"), PersistentDataType.TAG_CONTAINER,damagersOfVictim);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void pdcTagContaineradd(Player p, NamespacedKey key, String s, Boolean value) {
|
|
||||||
PersistentDataContainer pdc = p.getPersistentDataContainer();
|
|
||||||
PersistentDataContainer pdctagcontainer = pdc.get(key, PersitentDataType.TAG_CONTAINER);
|
|
||||||
if(pdctagcontainer == null) {
|
|
||||||
pdc.tagcontainer = pdc.getAdapterContext().newPersistentDataContainer();
|
|
||||||
}
|
|
||||||
pdctagcontainer.set(new NamespacedKey(Pvptoggle.pvptoggle, s), PersistentDataType.BOOLEAN, value);
|
|
||||||
pdc.set(key,PersistentDataType.TAG_CONTAINER, pdctagcontainer);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user