SrD3ad Postado Junho 7, 2020 Denunciar Compartilhar Postado Junho 7, 2020 (editado) O plugin aparentemente possui suporte a caixa all, basta digitar /caixagive all <caixa> <quantidade> Caso queira executar via console, basta remover " if (sender instanceof Player) {", ficaria assim: package timepvp.caixasmisteriosas.comandos; import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import timepvp.caixasmisteriosas.CaixasAPI; public class Give implements CommandExecutor { @Override public boolean onCommand(CommandSender sender, Command cmd, String lbl, String[] args) { if (cmd.getName().equalsIgnoreCase("caixagive") && sender.hasPermission("caixasmisteriosas.admin")) { if (args.length > 3 || args.length == 0 || args.length != 3) { sender.sendMessage("§b[Caixas] §7Digite /caixagive <jogador> <caixa> <quantidade>."); return true; } else { if (args[0].equalsIgnoreCase("all")) { String caixa = args[1]; int quantidade; if (CaixasAPI.getCaixaPeloNome(caixa) != null) { try { quantidade = Integer.parseInt(args[2]); } catch (NumberFormatException e) { sender.sendMessage("§b[Caixas] §cO valor inspecionado é inválido."); return true; } for (Player players : Bukkit.getOnlinePlayers()) { CaixasAPI.giveCaixa(CaixasAPI.getCaixaPeloNome(caixa), players, quantidade); } Bukkit.broadcastMessage("§b[Caixas] §7O staffer §f" + sender.getName() + " §7enviou §f" + quantidade + " §7caixas §f" + CaixasAPI.getCaixaPeloNome(caixa).getDisplayName() + "§7 para todos."); sender.sendMessage("§b[Caixas] §7Você enviou §f" + quantidade + " §7caixas §f" + CaixasAPI.getCaixaPeloNome(caixa).getDisplayName() + " §7para todos os jogadores."); return true; } else { sender.sendMessage("§b[Caixas] §cA caixa digitada é inexistente."); return true; } } else { String caixa = args[1]; Player player = Bukkit.getPlayer(args[0]); if (player == null) { sender.sendMessage("§b[Caixas] §cEste jogador está offline."); return true; } int quantidade; if (CaixasAPI.getCaixaPeloNome(caixa) != null) { try { quantidade = Integer.parseInt(args[2]); } catch (NumberFormatException e) { sender.sendMessage("§b[Caixas] §cO valor inspecionado é inválido."); return true; } sender.sendMessage("§b[Caixas] §7Você enviou §f" + quantidade + " §7caixas " + CaixasAPI.getCaixaPeloNome(caixa).getDisplayName() + "para o jogador §f" + player.getName() + "§7."); player.sendMessage("§b[Caixas] §7Você recebeu §f" + quantidade + " §7caixas §f" + CaixasAPI.getCaixaPeloNome(caixa).getDisplayName() + "§7."); CaixasAPI.giveCaixa(CaixasAPI.getCaixaPeloNome(caixa), player, quantidade); return true; } else { sender.sendMessage("§b[Caixas] §cA caixa digitada é inexistente."); return true; } } } } return false; } } Editado Junho 7, 2020 por SrD3ad Link para o comentário Compartilhar em outros sites More sharing options...
Xipsahoy Postado Junho 7, 2020 Autor Denunciar Compartilhar Postado Junho 7, 2020 Obrigado ❤️, funcionou! Link para o comentário Compartilhar em outros sites More sharing options...
Xipsahoy Postado Junho 7, 2020 Autor Denunciar Compartilhar Postado Junho 7, 2020 @SrD3ad Já que tu me está ajudando, sabe como eu faço para o plugin quando troca esta variável <caixa> pelo nome da Caixa, mudar com as cores? Pois por default fica branco! Estes são os únicos sítios onde <caixa> é referido! CaixasApi.java Spoiler package timepvp.caixasmisteriosas; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Random; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.Sound; import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.Player; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.InventoryHolder; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitTask; import timepvp.caixasmisteriosas.objetos.Caixa; import timepvp.caixasmisteriosas.objetos.CaixaAbrirEvent; import timepvp.caixasmisteriosas.objetos.Item; import timepvp.caixasmisteriosas.objetos.Raridade; public class CaixasAPI { public static Caixa getCaixaPeloNome(String caixa) { Iterator var2 = getCaixas().iterator(); while(var2.hasNext()) { Caixa c = (Caixa)var2.next(); if (c.getNome().equalsIgnoreCase(caixa)) { return c; } } return null; } public static List<Caixa> getCaixas() { return Main.getInstance().caixas; } public static void giveCaixa(final Caixa c, final Player k, final int q) { final ItemStack is = new ItemStack(Material.getMaterial(c.getID()), q); final ItemMeta meta = is.getItemMeta(); meta.setDisplayName(c.getDisplayName()); final ArrayList<String> lore = new ArrayList<String>(); lore.add("§bCaixa " + c.getNome()); meta.setLore((List)lore); is.setItemMeta(meta); k.getInventory().addItem(new ItemStack[] { is }); } public static Enchantment traduzirEncantamento(String e) { if (e.equalsIgnoreCase("PROTECTION")) { return Enchantment.PROTECTION_ENVIRONMENTAL; } else if (e.equalsIgnoreCase("FIREPROTECTION")) { return Enchantment.PROTECTION_FIRE; } else if (e.equalsIgnoreCase("FEATHERFALLING")) { return Enchantment.PROTECTION_FALL; } else if (e.equalsIgnoreCase("BLASTPROTECTION")) { return Enchantment.PROTECTION_EXPLOSIONS; } else if (e.equalsIgnoreCase("PROJECTILEPROTECTION")) { return Enchantment.PROTECTION_ENVIRONMENTAL; } else if (e.equalsIgnoreCase("SHARPNESS")) { return Enchantment.DAMAGE_ALL; } else if (e.equalsIgnoreCase("KNOCKBACK")) { return Enchantment.KNOCKBACK; } else if (e.equalsIgnoreCase("FIREASPECT")) { return Enchantment.FIRE_ASPECT; } else if (e.equalsIgnoreCase("LOOTING")) { return Enchantment.LOOT_BONUS_MOBS; } else if (e.equalsIgnoreCase("EFFICIENCY")) { return Enchantment.DIG_SPEED; } else if (e.equalsIgnoreCase("SILKTOUCH")) { return Enchantment.SILK_TOUCH; } else if (e.equalsIgnoreCase("POWER")) { return Enchantment.ARROW_DAMAGE; } else if (e.equalsIgnoreCase("FLAME")) { return Enchantment.ARROW_FIRE; } else if (e.equalsIgnoreCase("UNBREAKING")) { return Enchantment.DURABILITY; } else { return e.equalsIgnoreCase("FORTUNE") ? Enchantment.LOOT_BONUS_BLOCKS : null; } } public static List<Integer> getPosicoesVidro() { List<Integer> lista = new ArrayList(); Collections.addAll(lista, new Integer[]{0, 1, 2, 3, 5, 6, 7, 8, 9, 17, 18, 19, 20, 21, 23, 24, 25, 26}); return lista; } public static List<Raridade> getRaridades() { return Main.getInstance().raridade; } public static void abrirCaixa(final Caixa c, final Player p) { final HashMap<Integer, Item> slot = new HashMap(); final ArrayList<Integer> delay = new ArrayList(); final ArrayList<BukkitTask> runnables = new ArrayList(); final Inventory inv = Bukkit.createInventory((InventoryHolder)null, 27, "§7Abrindo caixa: " + c.getDisplayName()); Iterator var7 = getPosicoesVidro().iterator(); while(var7.hasNext()) { int i = (Integer)var7.next(); inv.setItem(i, randomizarVidro()); } slot.put(1, randomizarItem(c)); slot.put(2, randomizarItem(c)); slot.put(3, randomizarItem(c)); slot.put(4, randomizarItem(c)); slot.put(5, randomizarItem(c)); slot.put(6, randomizarItem(c)); slot.put(7, randomizarItem(c)); inv.setItem(10, ((Item)slot.get(1)).getItemStack()); inv.setItem(11, ((Item)slot.get(2)).getItemStack()); inv.setItem(12, ((Item)slot.get(3)).getItemStack()); inv.setItem(13, ((Item)slot.get(4)).getItemStack()); inv.setItem(14, ((Item)slot.get(5)).getItemStack()); inv.setItem(15, ((Item)slot.get(6)).getItemStack()); inv.setItem(16, ((Item)slot.get(7)).getItemStack()); inv.setItem(4, new ItemStack(Material.STAINED_GLASS_PANE, 1, (short)15)); inv.setItem(22, new ItemStack(Material.STAINED_GLASS_PANE, 1, (short)15)); p.openInventory(inv); BukkitTask bt = (new BukkitRunnable() { public void run() { if (delay.contains(20)) { (new BukkitRunnable() { public void run() { Item ItemGanho = (Item)slot.get(4); if (ItemGanho.getComando() != "") { Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), ItemGanho.getComando().replace("<jogador>", p.getName())); } if (ItemGanho.getAddItem()) { p.getInventory().addItem(new ItemStack[]{ItemGanho.getItemStack()}); } p.playSound(p.getLocation(), Sound.LEVEL_UP, 5.0F, 1.0F); if (p.getOpenInventory().getTitle().contains("§7Abrindo caixa: ")) { p.closeInventory(); } Bukkit.getPluginManager().callEvent(new CaixaAbrirEvent(p, c, ItemGanho)); } }).runTaskLater(Main.getInstance(), 60L); delay.clear(); Iterator var5 = runnables.iterator(); while(var5.hasNext()) { BukkitTask bta = (BukkitTask)var5.next(); bta.cancel(); } } else { Item novoitem = CaixasAPI.randomizarItem(c); inv.setItem(10, ((Item)slot.get(2)).getItemStack()); inv.setItem(11, ((Item)slot.get(3)).getItemStack()); inv.setItem(12, ((Item)slot.get(4)).getItemStack()); inv.setItem(13, ((Item)slot.get(5)).getItemStack()); inv.setItem(14, ((Item)slot.get(6)).getItemStack()); inv.setItem(15, ((Item)slot.get(7)).getItemStack()); inv.setItem(16, novoitem.getItemStack()); slot.put(1, (Item)slot.get(2)); slot.put(2, (Item)slot.get(3)); slot.put(3, (Item)slot.get(4)); slot.put(4, (Item)slot.get(5)); slot.put(5, (Item)slot.get(6)); slot.put(6, (Item)slot.get(7)); slot.put(7, novoitem); Iterator var3 = CaixasAPI.getPosicoesVidro().iterator(); while(var3.hasNext()) { int i = (Integer)var3.next(); inv.setItem(i, CaixasAPI.randomizarVidro()); } p.playSound(p.getLocation(), Sound.ITEM_PICKUP, 5.0F, 1.0F); delay.add(delay.size() + 1); } } }).runTaskTimerAsynchronously(Main.getInstance(), 5L, 5L); runnables.add(bt); } public static ItemStack randomizarVidro() { int random = (new Random()).nextInt(14) + 1; if (random == 1 || random == ? { ++random; } return new ItemStack(Material.STAINED_GLASS_PANE, 1, (short)random); } public static Item randomizarItem(Caixa c) { int random = (new Random()).nextInt(100) + 1; if (random == 100) { --random; } Iterator var3 = c.getDados().iterator(); Item i; do { if (!var3.hasNext()) { return null; } i = (Item)var3.next(); } while((double)random < i.getMinPercentagem() || (double)random >= i.getMaxPercentagem()); return i; } public static void inspecionarCaixa(Caixa c, Player p) { Inventory inv = Bukkit.createInventory((InventoryHolder)null, 45, "§7Itens da caixa: " + c.getDisplayName()); Iterator var4 = c.getDados().iterator(); while(var4.hasNext()) { Item i = (Item)var4.next(); List<String> loreantiga = new ArrayList(); if (i.getItemStack().getItemMeta().hasLore()) { Iterator var7 = i.getItemStack().getItemMeta().getLore().iterator(); while(var7.hasNext()) { String lores = (String)var7.next(); loreantiga.add(lores); } } ItemStack is = i.getItemStack(); ItemMeta meta = is.getItemMeta(); List<String> ilore = new ArrayList(); ilore.add(""); ilore.add(" §eChance: " + i.getPercentagem() + "%"); ilore.add(""); meta.setLore(ilore); is.setItemMeta(meta); inv.setItem(getSlot(inv), is); ItemStack itemstack = i.getItemStack(); ItemMeta imeta = itemstack.getItemMeta(); List<String> llore = new ArrayList(); Iterator var13 = loreantiga.iterator(); while(var13.hasNext()) { String k = (String)var13.next(); llore.add(k); } imeta.setLore(llore); itemstack.setItemMeta(imeta); } p.openInventory(inv); } public static int getSlot(Inventory inv) { if (inv.getItem(10) != null && inv.getItem(10).getType() != Material.AIR) { if (inv.getItem(11) != null && inv.getItem(11).getType() != Material.AIR) { if (inv.getItem(12) != null && inv.getItem(12).getType() != Material.AIR) { if (inv.getItem(13) != null && inv.getItem(13).getType() != Material.AIR) { if (inv.getItem(14) != null && inv.getItem(14).getType() != Material.AIR) { if (inv.getItem(15) != null && inv.getItem(15).getType() != Material.AIR) { if (inv.getItem(16) != null && inv.getItem(16).getType() != Material.AIR) { if (inv.getItem(19) != null && inv.getItem(19).getType() != Material.AIR) { if (inv.getItem(20) != null && inv.getItem(20).getType() != Material.AIR) { if (inv.getItem(21) != null && inv.getItem(21).getType() != Material.AIR) { if (inv.getItem(22) != null && inv.getItem(22).getType() != Material.AIR) { if (inv.getItem(23) != null && inv.getItem(23).getType() != Material.AIR) { if (inv.getItem(24) != null && inv.getItem(24).getType() != Material.AIR) { if (inv.getItem(25) != null && inv.getItem(25).getType() != Material.AIR) { if (inv.getItem(28) != null && inv.getItem(28).getType() != Material.AIR) { if (inv.getItem(29) != null && inv.getItem(29).getType() != Material.AIR) { if (inv.getItem(30) != null && inv.getItem(30).getType() != Material.AIR) { if (inv.getItem(31) != null && inv.getItem(31).getType() != Material.AIR) { if (inv.getItem(32) != null && inv.getItem(32).getType() != Material.AIR) { if (inv.getItem(33) != null && inv.getItem(33).getType() != Material.AIR) { if (inv.getItem(34) != null && inv.getItem(34).getType() != Material.AIR) { if (inv.getItem(35) != null && inv.getItem(35).getType() != Material.AIR) { if (inv.getItem(36) != null && inv.getItem(36).getType() != Material.AIR) { if (inv.getItem(37) != null && inv.getItem(37).getType() != Material.AIR) { if (inv.getItem(38) != null && inv.getItem(38).getType() != Material.AIR) { if (inv.getItem(39) != null && inv.getItem(39).getType() != Material.AIR) { if (inv.getItem(40) != null && inv.getItem(40).getType() != Material.AIR) { if (inv.getItem(41) != null && inv.getItem(41).getType() != Material.AIR) { if (inv.getItem(42) != null && inv.getItem(42).getType() != Material.AIR) { return inv.getItem(43) != null && inv.getItem(43).getType() != Material.AIR ? -1 : 43; } else { return 42; } } else { return 41; } } else { return 40; } } else { return 39; } } else { return 38; } } else { return 37; } } else { return 36; } } else { return 35; } } else { return 34; } } else { return 33; } } else { return 32; } } else { return 31; } } else { return 30; } } else { return 29; } } else { return 28; } } else { return 25; } } else { return 24; } } else { return 23; } } else { return 22; } } else { return 21; } } else { return 20; } } else { return 19; } } else { return 16; } } else { return 15; } } else { return 14; } } else { return 13; } } else { return 12; } } else { return 11; } } else { return 10; } } } Main.java Spoiler package timepvp.caixasmisteriosas; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.enchantments.Enchantment; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.plugin.java.JavaPlugin; import timepvp.caixasmisteriosas.comandos.Give; import timepvp.caixasmisteriosas.eventos.aoInspecionar; import timepvp.caixasmisteriosas.eventos.onClickCaixa; import timepvp.caixasmisteriosas.eventos.onItemSairEvent; import timepvp.caixasmisteriosas.objetos.Caixa; import timepvp.caixasmisteriosas.objetos.Item; import timepvp.caixasmisteriosas.objetos.Raridade; public class Main extends JavaPlugin { public ArrayList<Caixa> caixas = new ArrayList(); public ArrayList<Raridade> raridade = new ArrayList(); public static Main instance; public static Main getInstance() { return instance; } public void onEnable() { instance = this; this.saveDefaultConfig(); this.registrarComandos(); this.registrarEventos(); this.lerCaixas(); } public void registrarComandos() { this.getCommand("caixagive").setExecutor(new Give()); } public void registrarEventos() { Bukkit.getPluginManager().registerEvents(new onClickCaixa(), this); Bukkit.getPluginManager().registerEvents(new aoInspecionar(), this); Bukkit.getPluginManager().registerEvents(new onItemSairEvent(), this); } public static void mensagem(String mensagem) { Bukkit.getConsoleSender().sendMessage("§eyCaixasMisteriosas » " + mensagem); } public static void erro(String mensagem) { Bukkit.getConsoleSender().sendMessage("§cyCaixasMisteriosas » " + mensagem); } public void lerCaixas() { Iterator var2 = this.getConfig().getConfigurationSection("Raridades").getKeys(false).iterator(); String caixa; double maxminpercentagem; while(var2.hasNext()) { caixa = (String)var2.next(); String customname = this.getConfig().getString("Raridades." + caixa + ".CustomName"); double maxpercentagem = this.getConfig().getDouble("Raridades." + caixa + ".MaxPercentagem"); maxminpercentagem = this.getConfig().getDouble("Raridades." + caixa + ".MinPercentagem"); boolean raio = this.getConfig().getBoolean("Raridades." + caixa + ".Raio"); Raridade r = new Raridade(caixa); r.setCustomName(customname.replace("&", "§")); r.setMaxPercentagem(maxpercentagem); r.setMinPercentagem(maxminpercentagem); r.setRaio(raio); this.raridade.add(r); } this.caixas.clear(); var2 = this.getConfig().getConfigurationSection("Caixas").getKeys(false).iterator(); while(var2.hasNext()) { caixa = (String)var2.next(); int id = this.getConfig().getInt("Caixas." + caixa + ".ID"); String displayname = this.getConfig().getString("Caixas." + caixa + ".DisplayName").replace("&", "§"); List<Item> dados = new ArrayList(); maxminpercentagem = 0.0D; Iterator var37 = this.getConfig().getStringList("Caixas." + caixa + ".Itens").iterator(); while(var37.hasNext()) { String item = (String)var37.next(); try { String itemid = item.split(";")[0].replace("&", "§"); String nome = item.split(";")[1].replace("&", "§"); String encantamentos = item.split(";")[2].replace("&", "§"); String quantidade = item.split(";")[3].replace("&", "§"); String percentagem = item.split(";")[4].replace("&", "§"); String lore = item.split(";")[5].replace("&", "§"); String comando = item.split(";")[6].replace("&", "§"); boolean adicionaritem = Boolean.valueOf(item.split(";")[7]); boolean contemnome = !nome.equalsIgnoreCase("null"); boolean contemencantamentos = !encantamentos.equalsIgnoreCase("null"); boolean contemcomando = !comando.equalsIgnoreCase("null"); boolean contemlore = !lore.equalsIgnoreCase("null"); int data = 0; if (itemid.contains(":")) { data = Integer.parseInt(itemid.split(":")[1]); itemid = itemid.split(":")[0]; } ItemStack is = new ItemStack(Material.getMaterial(Integer.parseInt(itemid)), Integer.parseInt(quantidade), (short)data); ItemMeta im = is.getItemMeta(); if (contemnome) { im.setDisplayName(nome); } int var27; if (contemencantamentos) { String en; int level; if (encantamentos.contains("-")) { String[] var28; var27 = (var28 = encantamentos.split("-")).length; for(level = 0; level < var27; ++level) { en = var28[level]; String n = en.split(":")[0]; int level1 = Integer.parseInt(en.split(":")[1]); Enchantment enc = CaixasAPI.traduzirEncantamento(n); if (enc != null) { im.addEnchant(enc, level1, true); } } } else { en = encantamentos.split(":")[0]; level = Integer.parseInt(encantamentos.split(":")[1]); Enchantment enc = CaixasAPI.traduzirEncantamento(en); if (enc != null) { im.addEnchant(enc, level, true); } } } if (contemlore) { ArrayList<String> itemlore = new ArrayList(); String[] var45; int var43 = (var45 = lore.split(":")).length; for(var27 = 0; var27 < var43; ++var27) { String lores = var45[var27]; itemlore.add(lores); } im.setLore(itemlore); } is.setItemMeta(im); Item i = new Item(); if (contemcomando) { i.setComando(comando); } i.setPercentagem(Double.parseDouble(percentagem)); i.setItemStack(is); i.setMinPercentagem(maxminpercentagem); maxminpercentagem += i.getPercentagem(); i.setMaxPercentagem(maxminpercentagem); i.setAddItem(adicionaritem); Iterator var44 = CaixasAPI.getRaridades().iterator(); while(var44.hasNext()) { Raridade raridade = (Raridade)var44.next(); if (i.getPercentagem() <= raridade.getMinPercentagem() && i.getPercentagem() > raridade.getMaxPercentagem()) { i.setRaridade(raridade); } } dados.add(i); } catch (Exception var32) { erro("Ocorreu um erro na linha: " + item); Bukkit.getPluginManager().disablePlugin(instance); return; } } if (maxminpercentagem != 100.0D) { erro("A soma de todas as percentagens tem que ser 100%."); Bukkit.getPluginManager().disablePlugin(instance); return; } Caixa c = new Caixa(caixa, id, displayname, dados); this.caixas.add(c); mensagem("Carregada caixa : '" + c.getNome() + "'"); } } } onItemSairEvent.java Spoiler package timepvp.caixasmisteriosas.eventos; import java.util.Iterator; import org.bukkit.Bukkit; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import timepvp.caixasmisteriosas.CaixasAPI; import timepvp.caixasmisteriosas.Main; import timepvp.caixasmisteriosas.objetos.Caixa; import timepvp.caixasmisteriosas.objetos.CaixaAbrirEvent; import timepvp.caixasmisteriosas.objetos.Item; import timepvp.caixasmisteriosas.objetos.Raridade; public class onItemSairEvent implements Listener { @EventHandler public void onItemSair(CaixaAbrirEvent e) { Player p = e.getPlayer(); Item i = e.getItem(); Caixa c = e.getCaixa(); if (Main.getInstance().getConfig().getBoolean("MensagemBroadcast")) { Iterator var6 = CaixasAPI.getRaridades().iterator(); while(true) { Raridade r; do { if (!var6.hasNext()) { return; } r = (Raridade)var6.next(); } while(i.getRaridade() != r); if (r.getRaio()) { p.getWorld().strikeLightningEffect(p.getLocation()); } Iterator var8 = Bukkit.getOnlinePlayers().iterator(); while(var8.hasNext()) { Player s = (Player)var8.next(); s.sendMessage(Main.getInstance().getConfig().getString("Mensagem").replace("&", "§").replace("<jogador>", p.getName()).replace("<caixa>", c.getNome()).replace("<raridade>", r.getCustomName())); } } } } } Obrigado ! ? Já agora se tu não entendeu, eu estou pedindo para o plugin conseguir trocar o <caixa> pelo DisplayName mas com cores para não ser branco. Link para o comentário Compartilhar em outros sites More sharing options...
SrD3ad Postado Junho 8, 2020 Denunciar Compartilhar Postado Junho 8, 2020 (editado) Aparentemente na classe onItemSairEvent você resetar as cores assim vai ficar a cor que você colocar na config, ficaria assim: package timepvp.caixasmisteriosas.eventos; import java.util.Iterator; import org.bukkit.Bukkit; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import timepvp.caixasmisteriosas.CaixasAPI; import timepvp.caixasmisteriosas.Main; import timepvp.caixasmisteriosas.objetos.Caixa; import timepvp.caixasmisteriosas.objetos.CaixaAbrirEvent; import timepvp.caixasmisteriosas.objetos.Item; import timepvp.caixasmisteriosas.objetos.Raridade; public class onItemSairEvent implements Listener { @EventHandler public void onItemSair(CaixaAbrirEvent e) { Player p = e.getPlayer(); Item i = e.getItem(); Caixa c = e.getCaixa(); if (Main.getInstance().getConfig().getBoolean("MensagemBroadcast")) { Iterator var6 = CaixasAPI.getRaridades().iterator(); while(true) { Raridade r; do { if (!var6.hasNext()) { return; } r = (Raridade)var6.next(); } while(i.getRaridade() != r); if (r.getRaio()) { p.getWorld().strikeLightningEffect(p.getLocation()); } Iterator var8 = Bukkit.getOnlinePlayers().iterator(); while(var8.hasNext()) { Player s = (Player)var8.next(); s.sendMessage(Main.getInstance().getConfig().getString("Mensagem").replace("&", "§").replace("<jogador>", p.getName()).replace("<caixa>", ChatColor.stripColor(c.getNome())).replace("<raridade>", ChatColor.stripColor(r.getCustomName()))); } } } } } Editado Junho 8, 2020 por SrD3ad Link para o comentário Compartilhar em outros sites More sharing options...
Xipsahoy Postado Junho 8, 2020 Autor Denunciar Compartilhar Postado Junho 8, 2020 Como resolvo? Link para o comentário Compartilhar em outros sites More sharing options...
SrD3ad Postado Junho 8, 2020 Denunciar Compartilhar Postado Junho 8, 2020 (editado) Passa o mouse por cima e clica em "import 'ChatColor' (org.bukkit)" Recomendo você dar uma estuda em Java antes de tentar modificar plugins. Editado Junho 8, 2020 por SrD3ad Link para o comentário Compartilhar em outros sites More sharing options...
Xipsahoy Postado Junho 8, 2020 Autor Denunciar Compartilhar Postado Junho 8, 2020 Ok, então, funcionou, mas não funciona como eu queria pois o plugin está copiando o nome do título da caixa, mas devia pegar do DisplayName. Na class Give.jar tem este método CaixasAPI.getCaixaPeloNome(caixa).getDisplayName() , eu só não sei como adicioná-lo no código da mensagem quando abre a caixa. Link para o comentário Compartilhar em outros sites More sharing options...
Xipsahoy Postado Junho 8, 2020 Autor Denunciar Compartilhar Postado Junho 8, 2020 Ok, consegui resolver, último problema que estou tendo é, quando eu escrevo o comando na consola não aparece nada, nem unknow command. aparece uma lina sem nada! E os comandos do plugin não funcionam na consola! Link para o comentário Compartilhar em outros sites More sharing options...
SrD3ad Postado Junho 8, 2020 Denunciar Compartilhar Postado Junho 8, 2020 1 minuto atrás, Xipsahoy disse: Ok, consegui resolver, último problema que estou tendo é, quando eu escrevo o comando na consola não aparece nada, nem unknow command. aparece uma lina sem nada! E os comandos do plugin não funcionam na consola! Deve estar acontecendo isso por causa que o plugin checa se o comando foi executado por um player "if (sender instanceof Player) {", ou seja, caso for executado pelo console ele não faz nada, você pode tentar tirar isso, porém caso o desenvolvedor tenha criado a variável do player irar gerar um erro que você deve achar uma solução, não é uma coisa dificil, então caso isso aconteça recomendo você estudar um pouco de Java pois é coisa bem básica. Link para o comentário Compartilhar em outros sites More sharing options...
Xipsahoy Postado Junho 8, 2020 Autor Denunciar Compartilhar Postado Junho 8, 2020 Se é bem básico porque não me pode ajudar ? ? Link para o comentário Compartilhar em outros sites More sharing options...
SrD3ad Postado Junho 8, 2020 Denunciar Compartilhar Postado Junho 8, 2020 1 minuto atrás, Xipsahoy disse: Se é bem básico porque não me pode ajudar ? ? Me passa seu discord que te ajudo la Link para o comentário Compartilhar em outros sites More sharing options...
Xipsahoy Postado Junho 8, 2020 Autor Denunciar Compartilhar Postado Junho 8, 2020 XipsAhoy#7281 Link para o comentário Compartilhar em outros sites More sharing options...
Xipsahoy Postado Junho 8, 2020 Autor Denunciar Compartilhar Postado Junho 8, 2020 Podem fechar... Link para o comentário Compartilhar em outros sites More sharing options...
Álison👌 Postado Junho 8, 2020 Denunciar Compartilhar Postado Junho 8, 2020 Sua dúvida foi marcada como resolvida pela nossa equipe. Caso sua dúvida não tenha sido sanada, crie outro tópico. OBS: Essa mensagem é automática. Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados