Frogguer Postado Dezembro 24, 2016 Denunciar Compartilhar Postado Dezembro 24, 2016 public ArrayList<ItemStack> GetDroppedItems() { ArrayList<ItemStack> toreturn = new ArrayList<ItemStack>(); Set<String> droppeditems = configGetter.getConfig().getConfigurationSection("DroppedItems.").getKeys(false); for (String item : droppeditems) { String material = configGetter.getConfig().getString("DroppedItems." + item + ".MATERIAL"); for (int amount = configGetter.getConfig().getInt("DroppedItems." + item + ".AMOUNT"), i = 0; i <= amount; ++i) { ItemStack itemstack = new ItemStack(Material.valueOf(material), 1); for(String s : configGetter.getConfig().getStringList("DroppedItems." + item + ".ENCHANT")) { String enchant = s.split("-")[0]; String level= s.split("-")[1]; if(Enchantment.getByName(enchant) != null) { if (Enchantment.getByName(enchant).canEnchantItem(itemstack)) { itemstack.addUnsafeEnchantment(Enchantment.getByName(enchant), Integer.parseInt(level)); } } } toreturn.add(itemstack); } } return toreturn; } Quero por capiroto na config ? alguém poderia add no cod pra min ? Item1: MATERIAL: GOLDEN APPLE:1 AMOUNT: 35 Link para o comentário Compartilhar em outros sites More sharing options...
zDubsCrazy2 Postado Dezembro 24, 2016 Denunciar Compartilhar Postado Dezembro 24, 2016 String material = configGetter.getConfig().getString("DroppedItems." + item + ".MATERIAL"); short data = 0; if (material.matches("^\\w{1,}:\\d{1,5}$")) { String[] args = material.split(":"); material = args[0]; data = Short.valueOf(args[1]); } ItemStack item = new ItemStack(Material.valueOf(material), 1, data); // O certo também seria GOLDEN_APPLE:1, tem que ser igual ao enum Material do Bukkit 1 Link para o comentário Compartilhar em outros sites More sharing options...
zAth Postado Dezembro 24, 2016 Denunciar Compartilhar Postado Dezembro 24, 2016 (editado) String material = configGetter.getConfig().getString("DroppedItems." + item + ".MATERIAL"); int data = 0; if (material.contains(":")) { String[] args = material.split(":"); material = args[0]; data = Integer.parseInt(args[1]); } ItemStack item = new ItemStack(Material.valueOf(material), 1, (short)data); basicamente o mesmo do mas sem o regex, que pode ser confuso public ArrayList<ItemStack> GetDroppedItems() { ArrayList<ItemStack> toreturn = new ArrayList<ItemStack>(); Set<String> droppeditems = configGetter.getConfig().getConfigurationSection("DroppedItems.").getKeys(false); for (String item : droppeditems) { String material = configGetter.getConfig().getString("DroppedItems." + item + ".MATERIAL"); int data = 0; if (material.contains(":")) { String[] args = material.split(":"); material = args[0]; data = Integer.parseInt(args[1]); } for (int amount = configGetter.getConfig().getInt("DroppedItems." + item + ".AMOUNT"), i = 0; i <= amount; ++i) { ItemStack itemstack = new ItemStack(Material.valueOf(material), 1, (short)data); for(String s : configGetter.getConfig().getStringList("DroppedItems." + item + ".ENCHANT")) { String enchant = s.split("-")[0]; String level= s.split("-")[1]; if(Enchantment.getByName(enchant) != null) { if (Enchantment.getByName(enchant).canEnchantItem(itemstack)) { itemstack.addUnsafeEnchantment(Enchantment.getByName(enchant), Integer.parseInt(level)); } } } toreturn.add(itemstack); } } return toreturn; } Editado Dezembro 24, 2016 por zAth 1 Link para o comentário Compartilhar em outros sites More sharing options...
Frogguer Postado Dezembro 24, 2016 Autor Denunciar Compartilhar Postado Dezembro 24, 2016 String material = configGetter.getConfig().getString("DroppedItems." + item + ".MATERIAL"); int data = 0; if (material.contains(":")) { String[] args = material.split(":"); material = args[0]; data = Integer.parseInt(args[1]); } ItemStack item = new ItemStack(Material.valueOf(material), 1, (short)data); basicamente o mesmo do mas sem o regex, que pode ser confuso public ArrayList<ItemStack> GetDroppedItems() { ArrayList<ItemStack> toreturn = new ArrayList<ItemStack>(); Set<String> droppeditems = configGetter.getConfig().getConfigurationSection("DroppedItems.").getKeys(false); for (String item : droppeditems) { String material = configGetter.getConfig().getString("DroppedItems." + item + ".MATERIAL"); int data = 0; if (material.contains(":")) { String[] args = material.split(":"); material = args[0]; data = Integer.parseInt(args[1]); } for (int amount = configGetter.getConfig().getInt("DroppedItems." + item + ".AMOUNT"), i = 0; i <= amount; ++i) { ItemStack itemstack = new ItemStack(Material.valueOf(material), 1, (short)data); for(String s : configGetter.getConfig().getStringList("DroppedItems." + item + ".ENCHANT")) { String enchant = s.split("-")[0]; String level= s.split("-")[1]; if(Enchantment.getByName(enchant) != null) { if (Enchantment.getByName(enchant).canEnchantItem(itemstack)) { itemstack.addUnsafeEnchantment(Enchantment.getByName(enchant), Integer.parseInt(level)); } } } toreturn.add(itemstack); } } return toreturn; } vlw deu certo 1 Link para o comentário Compartilhar em outros sites More sharing options...
Thelike Postado Dezembro 24, 2016 Denunciar Compartilhar Postado Dezembro 24, 2016 Sua dúvida foi marcada como [Resolvido] e movido à área de dúvidas resolvidas. Atenciosamente, Gamer's Board Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Frogguer
Quero por capiroto na config ? alguém poderia add no cod pra min ?
AMOUNT: 35
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados