-
Total de itens
221 -
Registro em
-
Última visita
Respostas na Comunidade
-
zDubsCrazy Banido's postagem in [Resolvido] [PHP] Como pegar o valor was marked as the answer
<?php $nome = addslashes(trim($_POST['nome'])); array_push($nomes, $nome); ?> Envia os dados que o usuário digitou no formulário por POST.
-
zDubsCrazy Banido's postagem in [Resolvido] [Dúvida] Está setando nulo pq? was marked as the answer
'arenas' é um HashMap<String, Arena> e nao uma lista pra tu usar "arenas.get(0)". Use "arenas.get(key)"
-
zDubsCrazy Banido's postagem in [Entregue] [Pedido] Spawnar Mobs e Animals apenas em MobSpawner was marked as the answer
Ta aqui: http://www91.zippyshare.com/v/oXQ3P3dy/file.html
Plugin mais fácil que andar pra frente, olha o tamanho do código:
public class OnlySpawner extends JavaPlugin implements Listener { @Override public void onEnable() { Bukkit.getPluginManager().registerEvents(this, this); } @EventHandler(priority = EventPriority.HIGHEST) public void onMobSpawn(CreatureSpawnEvent e) { if (e.getSpawnReason() != SpawnReason.SPAWNER) e.setCancelled(true); } } PS: Não testei, e provavelmente você não conseguirá spawnar mobs nem com ovos.
-
zDubsCrazy Banido's postagem in [Resolvido] Como eu pego o Health de um mob ? was marked as the answer
private Wither wither; // ao spawnar o Wither: wither = witherSpawnado; // pegando a vida wither.getHealth(); -
zDubsCrazy Banido's postagem in [Resolvido] Código Não Funciona! was marked as the answer
Salva em .html e nao .txt :headbang:
-
zDubsCrazy Banido's postagem in [Resolvido] "Formatar" float was marked as the answer
float x = 123.456F; BigDecimal bd = new BigDecimal(x).setScale(1, BigDecimal.ROUND_HALF_UP); Tenta isso
-
zDubsCrazy Banido's postagem in [Resolvido] Como atualizo texto de uma placa? was marked as the answer
Block b = mundo.getBlockAt(x, y, z);
if (!(b.getState() instanceof Sign)) {
System.out.println("O local informado não possui uma placa.");
return;
}
Sign s = (Sign) b.getState();
s.setLine(1, "" + Bukkit.getOnlinePlayers().size()); // Isso vai depender da versao, também pode ser 'length' em vez de 'size()'
s.update();
// Voce pode botar isso em um metodo e chama-lo no PlayerJoinEvent e PlayerQuitEvent
-
zDubsCrazy Banido's postagem in [Resolvido] GUI por paginas. was marked as the answer
HashMap<Integer, Inventory> pages = new HashMap<>(); int pg = 1; Inventory page = Bukkit.createInventory(null, 54, "Pagina " + pg); pages.put(1, page); for (ItemStack item : itensParaAdicionar) { if ((page.firstEmpty() + 1) == 54) { page.setItem(53, new ItemStack(Material.WOOL)); pg++; page = Bukkit.createInventory(null, 54, "Pagina " + pg); page.addItem(item); pages.put(pg, page); } else page.addItem(item); } // Dai pra pegar o inv tu usa: Inventory page = pages.get(numeroDaPagina); @EDIT:
A lã branca é o item que vai pra outra pagina, dai tu faz um listener e usa o titulo do inventário para definir qual a próxima, etc.
-
zDubsCrazy Banido's postagem in [Resolvido] [Dúvida] Loop was marked as the answer
for (String preso : getConfig().getConfigurationSection("Presos").getKeys(false)) {
String motivo = getConfig().getString("Presos." + preso + ".Motivo");
player.sendMessage(preso + " Motivo: " + motivo);
}
-
zDubsCrazy Banido's postagem in [Resolvido] [Ajudaa] ArithmeticException was marked as the answer
A comparação deve ser feita antes da divisão e não no momento da criação dos Scores. Exemplo:
int kills = Kd.getKills(p); int deaths = Kd.getDeaths(p); int kdr = 0; if ((kills > 0) && (deaths > 0)) kdr = kills / deaths; -
zDubsCrazy Banido's postagem in [Resolvido] Dúvida, Como criar um sistema de delay, minutos, horas, segundos... was marked as the answer
private HashMap<String, Long> cooldown = new HashMap<>(); private void setDelay(Player p) { // Adicionando delay de 3 horas. cooldown.put(p.getName(), System.currentTimeMillis() + TimeUnit.HOURS.toMillis(3)); } private boolean hasDelay(Player p) { return cooldown.containsKey(p.getName()) && (cooldown.get(p.getName()) > System.currentTimeMillis()); } private String getDelayString(Player p) { long time = cooldown.get(p.getName()) - System.currentTimeMillis(); return format(time); } private String format(long time) { String format = ""; long hours = TimeUnit.MILLISECONDS.toHours(time); long hoursInMillis = TimeUnit.HOURS.toMillis(hours); long minutes = TimeUnit.MILLISECONDS.toMinutes(time - hoursInMillis); long minutesInMillis = TimeUnit.MINUTES.toMillis(minutes); long seconds = TimeUnit.MILLISECONDS.toSeconds(time - (hoursInMillis + minutesInMillis)); if (hours > 0) format = hours + (hours > 1 ? " horas" : " hora"); if (minutes > 0) { if ((seconds > 0) && (hours > 0)) format += ", "; else if (hours > 0) format += " e "; format += minutes + (minutes > 1 ? " minutos" : " minuto"); } if (seconds > 0) { if ((hours > 0) || (minutes > 0)) format += " e "; format += seconds + (seconds > 1 ? " segundos" : " segundo"); } if (format.equals("")) { long rest = time / 100; if (rest == 0) rest = 1; format = "0." + rest + " segundo"; } return format; } private void save() { File f = new File(getDataFolder(), "cooldown.dat"); if (!(f.exists())) try { f.createNewFile(); } catch (IOException e) { e.printStackTrace(); } try { ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(f)); oos.writeObject(cooldown); oos.close(); } catch (Exception e) { e.printStackTrace(); } } private void load() { File f = new File(getDataFolder(), "cooldown.dat"); if (f.exists()) { try { ObjectInputStream ois = new ObjectInputStream(new FileInputStream(f)); cooldown = (HashMap<String, Long>) ois.readObject(); ois.close(); for (Entry<String, Long> entry : cooldown.entrySet()) { if (entry.getValue() <= System.currentTimeMillis()) cooldown.remove(entry.getKey()); } } catch (Exception e) { e.printStackTrace(); } } } O metodo save() tu chama no onDisable() e pra nao perder muito caso o server caia repentinamente, cria uma tarefa que chama ele a cada 1min por exemplo....
O metodo load() tu chama no onEnable()
Os metodos já dizem tudo, dai tu aplica ao comando, evento.
-
zDubsCrazy Banido's postagem in [Resolvido] [Ajudinha] HandlerList was marked as the answer
Da instancia.
Mas acho que isso não seria uma boa opção, porque simplesmente nao usa valores booleanos e retorna caso verdadeiro/falso?
-
zDubsCrazy Banido's postagem in [Resolvido] [Ajuda] GUI was marked as the answer
public class GUI{
private static Inventory inv = Bukkit.createInventory(null, 9, "Loja ...");
public static void abriloja(Player p) {
p.openInventory(inv);
}
}
// Na outra classe:
GUI.abrirLoja(p);
// Dica: cuidado com o encapsulamento de suas classes
-
zDubsCrazy Banido's postagem in [Resolvido] [Dúvida] Bukkit world was marked as the answer
World w = Bukkit.getWorld("algum-mundo-qualquer");
for (Player p : w.getPlayers())
p.sendMessage("Você está no mundo que eu quero.");
-
zDubsCrazy Banido's postagem in [Resolvido] [GUI] Como verificar se o item Clicado é uma Poção was marked as the answer
ItemStack item = e.getCurrentItem();
if (item == null) return;
if ((item.geType() == Material.POTION) && (item.getDurability() == 8233)) {
// clicou na poção de força
}
-
zDubsCrazy Banido's postagem in [Resolvido] [Duvida] Gui was marked as the answer
Só implementa o Listener, extende a JavaPlugin apenas na classe principal.
-
zDubsCrazy Banido's postagem in [Resolvido] args.length não funciona was marked as the answer
if (cmd.getName().equalsIgnoreCase("nome")) { if (args.length == 0) { return false; } else if (args.length > 16) { jogador.sendMessage(ChatColor.translateAlternateColorCodes('&', "&cNome muito longo! (16 é o máximo)")); return true; } jogador.setPlayerListName(args[0]); jogador.sendMessage(ChatColor.translateAlternateColorCodes('&', "&aSeu nome agora é: &c" + args[0])); } Na verdade, isso ta errado maluco, tu não pode usar args.length, tem que montar uma String com todos os argumentos.
@CÓDIGO ARRUMADO:
if (cmd.getName().equalsIgnoreCase("nome")) { if (args.length == 0) { return true; } StringBuilder sb = new StringBuilder(); for (String arg : args) sb.append(arg); if (sb.toString().length() > 16) { // mandar a mensagem que é muito grande o nome return true; } jogador.setPlayerListName(sb.toString()); jogador.sendMessage(ChatColor.translateAlternateColorCodes('&', "&aSeu nome agora é: &c" + args[0])); } -
zDubsCrazy Banido's postagem in [Resolvido] Traduzir enchants? was marked as the answer
Bom, tu pode fazer algo assim:
public Enchantment parseEnchant(String enchant) { enchant = enchant.toLowerCase(); Enchantment en = null; switch(enchant) { case "afiada": en = Enchantment.DAMAGE_ALL; break; case "protecao": en = Enchantment.PROTECTION_ENVIRONMENTAL; break; case "aspecto-flamejante": en = Enchantment.FIRE_ASPECT; break; } return en; } Aí tu adiciona todos os enchants, e usa por exemplo:
Enchantment enchant = parseEnchant("afiada"); -
zDubsCrazy Banido's postagem in [Resolvido] Permissao do uso de kits em areas do spawn[~WorldGuardNaBuildPath~] was marked as the answer
public static boolean areaPvP(Player p) { ApplicableRegionSet region = getWorldGuard().getRegionManager(p.getWorld()).getApplicableRegions(p.getLocation()); return region.allows(DefaultFlag.PVP); } public static WorldGuardPlugin getWorldGuard() { Plugin plugin = Bukkit.getPluginManager().getPlugin("WorldGuard"); if (plugin == null || !(plugin instanceof WorldGuardPlugin)) { return null; } return (WorldGuardPlugin) plugin; } Fiz sem estar na IDE, então pode ter erros...
@EDIT
Aí tu faz a verificação normalmente:
if(areaPvP(player)) { // está em uma area com pvp } else { // não está, então nao deixar usar o kit } -
zDubsCrazy Banido's postagem in [Resolvido] Ajuda Com meu código was marked as the answer
Legal kk Marca como melhor resposta por favor.
-
zDubsCrazy Banido's postagem in [Resolvido] Problema com o scoreboard que nao atualiza. was marked as the answer
Resetar pra como ele era antes? O código do Foxx funciona:
Coloca dentro do onEnable():
Bukkit.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() { @Override public void run() { for(Player p : Bukkit.getOnlinePlayers()) { createScoreBoard(p); } } }, 0L, 40); -
zDubsCrazy Banido's postagem in [Resolvido] DisplayName was marked as the answer
Mas o display name que você deu pro cara é o nome dele com cor '--'
Usa ChatColor.stripColors(p.getDisplayName())
no lugar de p.getName()
-
zDubsCrazy Banido's postagem in [Resolvido] ScoreBoard was marked as the answer
Antes de: "&9", coloca: texto.substring(0, c). Deve ajeitar.
-
zDubsCrazy Banido's postagem in [Resolvido] Alguem me ajuda ;-; [To entendendo mais nada] was marked as the answer
Melhor que isso?
1. Olha o nome do arquivo, ta sallesteste.java e você declarou a classe com o nome de Main. Se o nome do arquivo é sallesteste, no código tem que ser sallesteste também. Altere de Main para sallesteste
2. 'IF' é uma condição, ou seja, você tem que comparar ou verificar alguma coisa ali, não pode estar vazio.
-
zDubsCrazy Banido's postagem in [Resolvido] { Sistema de horas } was marked as the answer
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); String hora = sdf.format(new Date()); // Issso vai retornar as Horas:Minutos, tipo 19:30, se nao quiser minutos, tira ':mm' @EDIT: Lembrando que retorna a hora do computador.