This commit is contained in:
Ajneb97 2023-09-30 15:17:09 -03:00
parent 30103db82f
commit f41f74033e
9 changed files with 324 additions and 64 deletions

View file

@ -7,7 +7,9 @@ import pk.ajneb97.model.KitAction;
import pk.ajneb97.model.inventory.InventoryPlayer; import pk.ajneb97.model.inventory.InventoryPlayer;
import pk.ajneb97.model.inventory.ItemKitInventory; import pk.ajneb97.model.inventory.ItemKitInventory;
import pk.ajneb97.model.inventory.KitInventory; import pk.ajneb97.model.inventory.KitInventory;
import pk.ajneb97.model.item.KitItem;
import pk.ajneb97.model.verify.*; import pk.ajneb97.model.verify.*;
import pk.ajneb97.utils.ItemUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -75,6 +77,29 @@ public class VerifyManager {
} }
verifyActions(kit.getClaimActions(),"claim",kitName); verifyActions(kit.getClaimActions(),"claim",kitName);
verifyActions(kit.getErrorActions(),"error",kitName); verifyActions(kit.getErrorActions(),"error",kitName);
//Items
ArrayList<KitItem> allKitItems = new ArrayList<KitItem>();
allKitItems.add(kit.getDisplayItemDefault());
allKitItems.add(kit.getDisplayItemCooldown());
allKitItems.add(kit.getDisplayItemNoPermission());
allKitItems.add(kit.getDisplayItemOneTime());
allKitItems.add(kit.getDisplayItemOneTimeRequirements());
allKitItems.addAll(kit.getItems());
for(KitAction kitAction : kit.getClaimActions()){
allKitItems.add(kitAction.getDisplayItem());
}
for(KitAction kitAction : kit.getErrorActions()){
allKitItems.add(kitAction.getDisplayItem());
}
for(KitItem kitItem : allKitItems){
if(kitItem != null){
if(!verifyItem(kitItem.getId())){
errors.add(new PKInvalidItem(kit.getName()+".yml",null,true,kitItem.getId()));
criticalErrors = true;
}
}
}
} }
public void verifyActions(ArrayList<KitAction> actions,String actionGroup,String kitName){ public void verifyActions(ArrayList<KitAction> actions,String actionGroup,String kitName){
@ -115,10 +140,28 @@ public class VerifyManager {
criticalErrors = true; criticalErrors = true;
} }
} }
//Items
KitItem kitItem = item.getItem();
if(kitItem != null){
if(!verifyItem(kitItem.getId())){
errors.add(new PKInvalidItem("inventory.yml",null,true,kitItem.getId()));
criticalErrors = true;
}
}
} }
} }
public boolean isCriticalErrors() { public boolean isCriticalErrors() {
return criticalErrors; return criticalErrors;
} }
public boolean verifyItem(String material){
try{
ItemUtils.createItemFromID(material);
return true;
}catch(Exception e){
return false;
}
}
} }

View file

@ -0,0 +1,174 @@
package pk.ajneb97.managers.edit;
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.inventory.ClickType;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import pk.ajneb97.PlayerKits2;
import pk.ajneb97.managers.MessagesManager;
import pk.ajneb97.model.Kit;
import pk.ajneb97.model.KitAction;
import pk.ajneb97.model.inventory.InventoryPlayer;
import pk.ajneb97.utils.InventoryItem;
import pk.ajneb97.utils.OtherUtils;
import java.util.ArrayList;
import java.util.List;
public class InventoryEditActionsEditManager {
private PlayerKits2 plugin;
private InventoryEditActionsManager inventoryEditActionsManager;
public InventoryEditActionsEditManager(PlayerKits2 plugin, InventoryEditActionsManager inventoryEditActionsManager) {
this.plugin = plugin;
this.inventoryEditActionsManager = inventoryEditActionsManager;
}
public void openInventory(InventoryPlayer inventoryPlayer, String type, int actionSlot) {
inventoryPlayer.setInventoryName("edit_action_slot_" + type + "_" + actionSlot);
Inventory inv = Bukkit.createInventory(null, 27, MessagesManager.getColoredMessage("&9Editing Kit"));
//Set Go Back
new InventoryItem(inv, 18, Material.ARROW).name("&eGo Back").ready();
Kit kit = plugin.getKitsManager().getKitByName(inventoryPlayer.getKitName());
KitAction kitAction = inventoryEditActionsManager.getKitActionsFromType(kit, type).get(actionSlot);
//Set Edit Action
List<String> lore = new ArrayList<>();
lore.add(MessagesManager.getColoredMessage("&7Click to change the action."));
lore.add("");
lore.add(MessagesManager.getColoredMessage("&7Current:"));
lore.add(MessagesManager.getColoredMessage("&f") + kitAction.getAction());
ItemStack item = new ItemStack(Material.PAPER);
ItemMeta meta = item.getItemMeta();
meta.setDisplayName(MessagesManager.getColoredMessage("&6&lEdit Action"));
meta.setLore(lore);
item.setItemMeta(meta);
inv.setItem(10, item);
//Set Execute before giving items
lore = new ArrayList<>();
lore.add("&7Click to enable whether the action should");
lore.add("&7be executed before giving the kit items");
lore.add("&7to the player.");
lore.add("");
String executeBeforeGivingItems = "&cNO";
if (kitAction.isExecuteBeforeItems()) {
executeBeforeGivingItems = "&aYES";
}
lore.add("&7Current Status: " + executeBeforeGivingItems);
new InventoryItem(inv, 12, Material.BEACON).name("&eSet &6&lExecute Before Giving Items").lore(lore).ready();
//Set Count As Item
lore = new ArrayList<>();
lore.add("&7Click to enable whether this action should");
lore.add("&7count as an item, and therefore will be used");
lore.add("&7to count empty slots on the player inventory");
lore.add("&7when claiming the kit. Useful when you want");
lore.add("&7to give items through a command");
lore.add("");
String countAsItem = "&cNO";
if (kitAction.isCountAsItem()) {
countAsItem = "&aYES";
}
lore.add("&7Current Status: " + countAsItem);
new InventoryItem(inv, 14, Material.LADDER).name("&eSet &6&lCount As Item").lore(lore).ready();
//Set Display Item
Material headMaterial = null;
if (OtherUtils.isLegacy()) {
headMaterial = Material.valueOf("SKULL_ITEM");
} else {
headMaterial = Material.PLAYER_HEAD;
}
lore = new ArrayList<String>();
lore.add("&7Click to edit the display item for");
lore.add("&7this action.");
lore.add("");
lore.add("&7Present: " + (kitAction.getDisplayItem() != null ? "&aYES" : "&cNO"));
new InventoryItem(inv, 16, headMaterial)
.setSkull("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMWNkZTUxNGFmYTE5NGQ1Y2JkMDQ3N2MwNWI3Y2IxODVmZjFkZmZkMGMyZmFkZmFlMWE1YmI4MDY0ODU2Yzg5MiJ9fX0=")
.name("&eSet &6&lDisplay Item").lore(lore).ready();
inventoryPlayer.getPlayer().openInventory(inv);
inventoryEditActionsManager.getInventoryEditManager().getPlayers().add(inventoryPlayer);
}
public void clickInventory(InventoryPlayer inventoryPlayer, ItemStack item, int slot, ClickType clickType){
if(slot == 18){
inventoryEditActionsManager.openInventory(inventoryPlayer,getType(inventoryPlayer));
}else if(slot == 10){
clickEditAction(inventoryPlayer);
}else if(slot == 12){
alternateExecutionBeforeGivingItems(inventoryPlayer);
}else if(slot == 14){
alternateCountAsItem(inventoryPlayer);
}else if(slot == 16) {
String type = getType(inventoryPlayer);
int actionSlot = getActionSlot(inventoryPlayer);
inventoryEditActionsManager.getInventoryEditManager().getInventoryEditDisplayManager()
.openInventory(inventoryPlayer,"action_"+type+"_"+actionSlot);
}
}
public void alternateExecutionBeforeGivingItems(InventoryPlayer inventoryPlayer){
Kit kit = plugin.getKitsManager().getKitByName(inventoryPlayer.getKitName());
String type = getType(inventoryPlayer);
int slot = getActionSlot(inventoryPlayer);
KitAction kitAction = inventoryEditActionsManager.getKitActionsFromType(kit, type).get(slot);
kitAction.setExecuteBeforeItems(!kitAction.isExecuteBeforeItems());
openInventory(inventoryPlayer,type,slot);
plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit);
}
public void alternateCountAsItem(InventoryPlayer inventoryPlayer){
Kit kit = plugin.getKitsManager().getKitByName(inventoryPlayer.getKitName());
String type = getType(inventoryPlayer);
int slot = getActionSlot(inventoryPlayer);
KitAction kitAction = inventoryEditActionsManager.getKitActionsFromType(kit, type).get(slot);
kitAction.setCountAsItem(!kitAction.isCountAsItem());
openInventory(inventoryPlayer,type,slot);
plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit);
}
public void clickEditAction(InventoryPlayer inventoryPlayer){
Player player = inventoryPlayer.getPlayer();
player.sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&7Write the new action to set."));
player.sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&fCheck all actions on the wiki: &bhttps://ajneb97.gitbook.io/playerkits-2/actions"));
player.closeInventory();
inventoryPlayer.setInventoryName("edit_chat_action_slot_" + getType(inventoryPlayer) + "_" + getActionSlot(inventoryPlayer));
inventoryEditActionsManager.getInventoryEditManager().getPlayers().add(inventoryPlayer);
}
public void editAction(InventoryPlayer inventoryPlayer,String message){
Kit kit = plugin.getKitsManager().getKitByName(inventoryPlayer.getKitName());
String[] sep = inventoryPlayer.getInventoryName().replace("edit_chat_action_slot_","").split("_");
String type = sep[0];
int slot = Integer.parseInt(sep[1]);
KitAction kitAction = inventoryEditActionsManager.getKitActionsFromType(kit, type).get(slot);
kitAction.setAction(message);
inventoryEditActionsManager.getInventoryEditManager().removeInventoryPlayer(inventoryPlayer.getPlayer());
openInventory(inventoryPlayer,type,slot);
plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit);
}
public String getType(InventoryPlayer inventoryPlayer){
return inventoryPlayer.getInventoryName().replace("edit_action_slot_","").split("_")[0];
}
public int getActionSlot(InventoryPlayer inventoryPlayer){
return Integer.parseInt(inventoryPlayer.getInventoryName().replace("edit_action_slot_","").split("_")[1]);
}
}

View file

@ -22,9 +22,11 @@ public class InventoryEditActionsManager {
private PlayerKits2 plugin; private PlayerKits2 plugin;
private InventoryEditManager inventoryEditManager; private InventoryEditManager inventoryEditManager;
private InventoryEditActionsEditManager inventoryEditActionsEditManager;
public InventoryEditActionsManager(PlayerKits2 plugin, InventoryEditManager inventoryEditManager){ public InventoryEditActionsManager(PlayerKits2 plugin, InventoryEditManager inventoryEditManager){
this.plugin = plugin; this.plugin = plugin;
this.inventoryEditManager = inventoryEditManager; this.inventoryEditManager = inventoryEditManager;
this.inventoryEditActionsEditManager = new InventoryEditActionsEditManager(plugin,this);
} }
public void openInventory(InventoryPlayer inventoryPlayer,String type) { public void openInventory(InventoryPlayer inventoryPlayer,String type) {
@ -62,24 +64,23 @@ public class InventoryEditActionsManager {
ArrayList<KitAction> actions = getKitActionsFromType(kit,type); ArrayList<KitAction> actions = getKitActionsFromType(kit,type);
int slot = 0; int slot = 0;
for(KitAction kitAction : actions){ for(KitAction kitAction : actions){
String executeBeforeItems = "&cNO"; String executeBeforeItems = kitAction.isExecuteBeforeItems() ? "&aYES" : "&cNO";
if (kitAction.isExecuteBeforeItems()) { String countAsItem = kitAction.isCountAsItem() ? "&aYES" : "&cNO";
executeBeforeItems = "&aYES"; String displayItem = kitAction.getDisplayItem() != null ? "&aYES" : "&cNO";
}
lore = new ArrayList<>(); lore = new ArrayList<>();
lore.add(MessagesManager.getColoredMessage("&f")+kitAction.getAction()); lore.add(MessagesManager.getColoredMessage("&f")+kitAction.getAction());
lore.add(""); lore.add("");
lore.add(MessagesManager.getColoredMessage("&7Execute before giving kit items? "+executeBeforeItems)); lore.add(MessagesManager.getColoredMessage("&7Execute before giving kit items? "+executeBeforeItems));
lore.add(MessagesManager.getColoredMessage("&7Count as item? "+countAsItem));
lore.add(MessagesManager.getColoredMessage("&7Has display item? "+displayItem));
lore.add(""); lore.add("");
lore.add(MessagesManager.getColoredMessage("&a&lLEFT CLICK &ato edit")); lore.add(MessagesManager.getColoredMessage("&a&lLEFT CLICK &ato edit"));
lore.add(MessagesManager.getColoredMessage("&e&lSHIFT+LEFT CLICK &eto alternate execution"));
lore.add(MessagesManager.getColoredMessage(" &ebefore giving kit items"));
lore.add(MessagesManager.getColoredMessage("&c&lRIGHT CLICK &cto remove")); lore.add(MessagesManager.getColoredMessage("&c&lRIGHT CLICK &cto remove"));
ItemStack item = new ItemStack(Material.PAPER); ItemStack item = new ItemStack(Material.PAPER);
ItemMeta meta = item.getItemMeta(); ItemMeta meta = item.getItemMeta();
meta.setDisplayName(MessagesManager.getColoredMessage("&7Command &e#"+(slot+1))); meta.setDisplayName(MessagesManager.getColoredMessage("&7Action &e#"+(slot+1)));
meta.setLore(lore); meta.setLore(lore);
item.setItemMeta(meta); item.setItemMeta(meta);
inv.setItem(slot,item); inv.setItem(slot,item);
@ -105,22 +106,11 @@ public class InventoryEditActionsManager {
plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit); plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit);
} }
public void alternateExecutionBeforeItems(InventoryPlayer inventoryPlayer,int slot){
Kit kit = plugin.getKitsManager().getKitByName(inventoryPlayer.getKitName());
String type = inventoryPlayer.getInventoryName().replace("edit_actions_","");
ArrayList<KitAction> actions = getKitActionsFromType(kit,type);
KitAction kitAction = actions.get(slot);
kitAction.setExecuteBeforeItems(!kitAction.isExecuteBeforeItems());
openInventory(inventoryPlayer,type);
plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit);
}
public void clickAddAction(InventoryPlayer inventoryPlayer){ public void clickAddAction(InventoryPlayer inventoryPlayer){
Player player = inventoryPlayer.getPlayer(); Player player = inventoryPlayer.getPlayer();
player.sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&7Write the new action to add.")); player.sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&7Write the new action to add."));
player.sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&fCheck all actions on the wiki: &bhttps://ajneb97.gitbook.io/playerkits-2/")); player.sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&fCheck all actions on the wiki: &bhttps://ajneb97.gitbook.io/playerkits-2/actions"));
player.closeInventory(); player.closeInventory();
String type = inventoryPlayer.getInventoryName().replace("edit_actions_",""); String type = inventoryPlayer.getInventoryName().replace("edit_actions_","");
@ -139,40 +129,14 @@ public class InventoryEditActionsManager {
plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit); plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit);
} }
public void clickEditAction(InventoryPlayer inventoryPlayer,int slot){
Player player = inventoryPlayer.getPlayer();
player.sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&7Write the new action to add."));
player.sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&fCheck all actions on the wiki: &bhttps://ajneb97.gitbook.io/playerkits-2/"));
player.closeInventory();
String type = inventoryPlayer.getInventoryName().replace("edit_actions_","");
inventoryPlayer.setInventoryName("edit_chat_edit_action_"+type+":"+slot);
inventoryEditManager.getPlayers().add(inventoryPlayer);
}
public void editAction(InventoryPlayer inventoryPlayer,String message){
Kit kit = plugin.getKitsManager().getKitByName(inventoryPlayer.getKitName());
String[] sep = inventoryPlayer.getInventoryName().replace("edit_chat_edit_action_","").split(":");
String type = sep[0];
int slot = Integer.parseInt(sep[1]);
ArrayList<KitAction> actions = getKitActionsFromType(kit,type);
actions.get(slot).setAction(message);
inventoryEditManager.removeInventoryPlayer(inventoryPlayer.getPlayer());
openInventory(inventoryPlayer,type);
plugin.getConfigsManager().getKitsConfigManager().saveConfig(kit);
}
public void clickInventory(InventoryPlayer inventoryPlayer, ItemStack item, int slot, ClickType clickType){ public void clickInventory(InventoryPlayer inventoryPlayer, ItemStack item, int slot, ClickType clickType){
if(slot == 45){ if(slot == 45){
inventoryEditManager.openInventory(inventoryPlayer); inventoryEditManager.openInventory(inventoryPlayer);
}else if(slot >= 0 && slot <= 44 && item != null && !item.getType().equals(Material.AIR)){ }else if(slot >= 0 && slot <= 44 && item != null && !item.getType().equals(Material.AIR)){
if(clickType.isLeftClick()){ if(clickType.isLeftClick()){
if(clickType.isShiftClick()){ String type = inventoryPlayer.getInventoryName().replace("edit_actions_","");
alternateExecutionBeforeItems(inventoryPlayer,slot); inventoryEditActionsEditManager.openInventory(inventoryPlayer,type,slot);
}else{
clickEditAction(inventoryPlayer,slot);
}
}else if(clickType.isRightClick()){ }else if(clickType.isRightClick()){
removeAction(inventoryPlayer,slot); removeAction(inventoryPlayer,slot);
} }
@ -190,4 +154,12 @@ public class InventoryEditActionsManager {
} }
return actions; return actions;
} }
public InventoryEditManager getInventoryEditManager() {
return inventoryEditManager;
}
public InventoryEditActionsEditManager getInventoryEditActionsEditManager() {
return inventoryEditActionsEditManager;
}
} }

View file

@ -9,6 +9,7 @@ import org.bukkit.inventory.ItemStack;
import pk.ajneb97.PlayerKits2; import pk.ajneb97.PlayerKits2;
import pk.ajneb97.managers.MessagesManager; import pk.ajneb97.managers.MessagesManager;
import pk.ajneb97.model.Kit; import pk.ajneb97.model.Kit;
import pk.ajneb97.model.KitAction;
import pk.ajneb97.model.inventory.InventoryPlayer; import pk.ajneb97.model.inventory.InventoryPlayer;
import pk.ajneb97.model.item.KitItem; import pk.ajneb97.model.item.KitItem;
import pk.ajneb97.utils.InventoryItem; import pk.ajneb97.utils.InventoryItem;
@ -77,7 +78,12 @@ public class InventoryEditDisplayManager {
lore.add("&eSet &6&lCooldown Display Item"); lore.add("&eSet &6&lCooldown Display Item");
}else if(type.equals("requirements")){ }else if(type.equals("requirements")){
lore.add("&6&lOne Time Requirements Display Item"); lore.add("&6&lOne Time Requirements Display Item");
}else{ }else if(type.startsWith("action")){
String actionType = type.split("_")[1];
int actionSlot = Integer.parseInt(type.split("_")[2]);
lore.add("&6&l"+actionType.toUpperCase()+" Action "+actionSlot+" Display Item");
}
else{
lore.add("&6&lDefault Display Item"); lore.add("&6&lDefault Display Item");
} }
new InventoryItem(inv, 0, Material.COMPASS).name("&6&lInfo").lore(lore).ready(); new InventoryItem(inv, 0, Material.COMPASS).name("&6&lInfo").lore(lore).ready();
@ -117,6 +123,11 @@ public class InventoryEditDisplayManager {
kit.setDisplayItemCooldown(kitItem); kit.setDisplayItemCooldown(kitItem);
}else if(type.equals("requirements")){ }else if(type.equals("requirements")){
kit.setDisplayItemOneTimeRequirements(kitItem); kit.setDisplayItemOneTimeRequirements(kitItem);
}else if(type.startsWith("action")){
String actionType = type.split("_")[1];
int actionSlot = Integer.parseInt(type.split("_")[2]);
KitAction kitAction = getKitActionsFromType(kit,actionType).get(actionSlot);
kitAction.setDisplayItem(kitItem);
}else{ }else{
kit.setDisplayItemDefault(kitItem); kit.setDisplayItemDefault(kitItem);
} }
@ -134,7 +145,15 @@ public class InventoryEditDisplayManager {
if(slot != 13){ if(slot != 13){
event.setCancelled(true); event.setCancelled(true);
if(slot == 18){ if(slot == 18){
if(inventoryPlayer.getInventoryName().startsWith("edit_display_action")){
String type = inventoryPlayer.getInventoryName().replace("edit_display_action_","");
String actionType = type.split("_")[0];
int actionSlot = Integer.parseInt(type.split("_")[1]);
inventoryEditManager.getInventoryEditActionsManager().getInventoryEditActionsEditManager()
.openInventory(inventoryPlayer,actionType,actionSlot);
}else{
inventoryEditManager.openInventory(inventoryPlayer); inventoryEditManager.openInventory(inventoryPlayer);
}
}else if(slot == 26){ }else if(slot == 26){
saveKitItem(inventoryPlayer); saveKitItem(inventoryPlayer);
inventoryPlayer.getPlayer().sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&aDisplay item saved.")); inventoryPlayer.getPlayer().sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&aDisplay item saved."));
@ -144,6 +163,12 @@ public class InventoryEditDisplayManager {
} }
public KitItem getKitDisplayItemFromType(Kit kit, String type){ public KitItem getKitDisplayItemFromType(Kit kit, String type){
if(type.startsWith("action")){
String actionType = type.split("_")[1];
int actionSlot = Integer.parseInt(type.split("_")[2]);
KitAction kitAction = getKitActionsFromType(kit,actionType).get(actionSlot);
return kitAction.getDisplayItem();
}else{
KitItem kitItem = kit.getDisplayItemDefault(); KitItem kitItem = kit.getDisplayItemDefault();
switch(type){ switch(type){
case "permission": case "permission":
@ -157,4 +182,15 @@ public class InventoryEditDisplayManager {
} }
return kitItem; return kitItem;
} }
}
public ArrayList<KitAction> getKitActionsFromType(Kit kit,String type){
ArrayList<KitAction> actions = null;
if(type.equals("claim")){
actions = kit.getClaimActions();
}else{
actions = kit.getErrorActions();
}
return actions;
}
} }

View file

@ -387,6 +387,8 @@ public class InventoryEditManager {
} }
}else if(inventory.startsWith("edit_actions_")){ }else if(inventory.startsWith("edit_actions_")){
inventoryEditActionsManager.clickInventory(inventoryPlayer,item,slot,clickType); inventoryEditActionsManager.clickInventory(inventoryPlayer,item,slot,clickType);
}else if(inventory.startsWith("edit_action_slot_")){
inventoryEditActionsManager.getInventoryEditActionsEditManager().clickInventory(inventoryPlayer,item,slot,clickType);
}else if(inventory.equals("edit_requirements")){ }else if(inventory.equals("edit_requirements")){
inventoryEditRequirementsManager.clickInventory(inventoryPlayer,item,slot,clickType); inventoryEditRequirementsManager.clickInventory(inventoryPlayer,item,slot,clickType);
} }
@ -398,8 +400,8 @@ public class InventoryEditManager {
setCooldown(inventoryPlayer,message); setCooldown(inventoryPlayer,message);
}else if(inventory.startsWith("edit_chat_add_action_")){ }else if(inventory.startsWith("edit_chat_add_action_")){
inventoryEditActionsManager.addAction(inventoryPlayer,message); inventoryEditActionsManager.addAction(inventoryPlayer,message);
}else if(inventory.startsWith("edit_chat_edit_action_")){ }else if(inventory.startsWith("edit_chat_action_slot_")){
inventoryEditActionsManager.editAction(inventoryPlayer,message); inventoryEditActionsManager.getInventoryEditActionsEditManager().editAction(inventoryPlayer,message);
}else if(inventory.equals("edit_chat_price")){ }else if(inventory.equals("edit_chat_price")){
inventoryEditRequirementsManager.setPrice(inventoryPlayer,message); inventoryEditRequirementsManager.setPrice(inventoryPlayer,message);
} }

View file

@ -0,0 +1,30 @@
package pk.ajneb97.model.verify;
import org.bukkit.entity.Player;
import pk.ajneb97.utils.JSONMessage;
import java.util.ArrayList;
import java.util.List;
public class PKInvalidItem extends PKBaseError{
private String material;
public PKInvalidItem(String file, String errorText, boolean critical, String material) {
super(file, errorText, critical);
this.material = material;
}
@Override
public void sendMessage(Player player) {
List<String> hover = new ArrayList<String>();
JSONMessage jsonMessage = new JSONMessage(player,prefix+"&7Item material &c"+material+" &7on file &c"+file+" &7is not valid.");
hover.add("&eTHIS IS AN ERROR!");
hover.add("&fThe material &c"+material+" &fdefined on");
hover.add("&ffile &c"+file+" &fdoesn't exists for your");
hover.add("&fminecraft version.");
jsonMessage.hover(hover).send();
}
}

View file

@ -193,6 +193,9 @@ public class NMSManager {
&& !t.equals("StoredEnchantments") && !t.equals("CustomPotionColor") && !t.equals("CustomPotionEffects") && !t.equals("Fireworks") && !t.equals("StoredEnchantments") && !t.equals("CustomPotionColor") && !t.equals("CustomPotionEffects") && !t.equals("Fireworks")
&& !t.equals("Explosion")&& !t.equals("pages") && !t.equals("title") && !t.equals("author") && !t.equals("resolved") && !t.equals("Explosion")&& !t.equals("pages") && !t.equals("title") && !t.equals("author") && !t.equals("resolved")
&& !t.equals("generation") && !t.equals("Trim")) { && !t.equals("generation") && !t.equals("Trim")) {
if(t.equals("BlockEntityTag") && !item.getType().name().contains("SHULKER")){
continue;
}
if((boolean)version.getMethodRef("hasKeyOfType").invoke(compound,t,1)) { if((boolean)version.getMethodRef("hasKeyOfType").invoke(compound,t,1)) {
//boolean //boolean
nbtList.add(t+"|"+version.getMethodRef("getBoolean").invoke(compound,t)+"|boolean"); nbtList.add(t+"|"+version.getMethodRef("getBoolean").invoke(compound,t)+"|boolean");

View file

@ -22,7 +22,7 @@ actions:
1: 1:
action: "console_command: bc &6%player% &ejust claimed a &aDIAMOND KIT&e!" action: "console_command: bc &6%player% &ejust claimed a &aDIAMOND KIT&e!"
display_item: display_item:
id: "BOOK" id: BOOK
name: "&4Announcement" name: "&4Announcement"
lore: lore:
- "&7Claiming this kit will send an announcement" - "&7Claiming this kit will send an announcement"

View file

@ -1,5 +1,5 @@
main: pk.ajneb97.PlayerKits2 main: pk.ajneb97.PlayerKits2
version: 1.5.1 version: 1.6.1
name: PlayerKits2 name: PlayerKits2
api-version: 1.13 api-version: 1.13
softdepend: [Vault,PlaceholderAPI] softdepend: [Vault,PlaceholderAPI]