Ir para conteúdo

Aviso:

Estamos fazendo atualizações constantes no fórum para deixá-lo o melhor possível para vocês, portanto pedimos a todos que relatem para nós (através do botão contato no rodapé do fórum) qualquer erros e problemas encontrados.

 

Informações:

Os formulários para ingressar na equipe do fórum estão temporariamente indisponíveis.

Kawaii

Desenvolvedores
  • Total de itens

    141
  • Registrado em

  • Última visita

  • Tempo on-line

    13d 14h 5m 34s

Sobre Kawaii

  • Rank
    Veterano

Informações pessoais

  • Sexo
    Feminino
  • Localização
    Júpiter
  1. Tens a source, faça o que desejar rs
  2. Já fiz os debugs e os debugs retornam de boas, só não está enviando pra list E o código dentro da Runnable é pra ficar em Async, não dar na mesma thread da main, não lagar (algo assim, não sei mt bem) Vou tentar
  3. Kawaii

    resolvido [Dúvida] List empty

    Olá, estou utilizando o código abaixo para pegar todos os reports do banco de dados, porém, a List está vindo VAZIA. public List<Getter> getGetters() { List<Getter> getters = new ArrayList<>(); new BukkitRunnable() { @Override public void run() { try { PreparedStatement ps = FancyReportar.getFancyReportar().getMysql().getConnection() .prepareStatement("SELECT * FROM reportados"); ResultSet rs = ps.executeQuery(); while (rs.next()) { Getter getter = new Getter(); getter.setName(rs.getString("name")); getter.setBy(rs.getString("by")); getter.setReason(rs.getString("reason")); getter.setServer(rs.getString("server")); getter.setDate(rs.getString("date")); getters.add(getter); } ps.close(); rs.close(); } catch (Exception e) { e.printStackTrace(); } } }.runTaskAsynchronously(FancyReportar.getFancyReportar()); return getters; } O que pode ser? OBS: Se eu adicionar uma "getter" manualmente na List, ela não fica empty OBS²: Não, o banco de dados não está vazio.
  4. Vlw Já está quase saindo a atualização com o baú do clã, essa parada de "Relações" talvez eu não faça. Próxima atualização tentarei colocar.
  5. Vlw man's Não tinha, era apenas de enfeite, o único que irei continuar em breve é o Baú do Clã. ATUALIZADO - Adicionado source do projeto ao GitHub - Agora a tag funciona no LegendChat usando {heroclans} Deixem sugestões para eu adicionar, sei que ainda falta muita coisa.
  6. Não desvalorizando seu trabalho s2 mais está muito caro pra algo simples. Boa sorte na venda @edit Não tinha visto que era customizado com os bonecos, e como não sei fazer essa parada, não sei se está caro, bjs
  7. Tenta package me.leo.api; import java.util.HashMap; import java.util.UUID; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.BlockBreakEvent; public class RewardOnMine implements Listener { public HashMap<UUID, Integer> blocks = new HashMap<>(); @EventHandler public void blockBreak(BlockBreakEvent e) { Player p = e.getPlayer(); Block block = e.getBlock(); if(block.getType().equals(Material.LAPIS_ORE)) { if (blocks.containsKey(e.getPlayer().getUniqueId())) { e.getPlayer().sendMessage("Ok, já tinhamos você."); int atual = blocks.get(e.getPlayer().getUniqueId()); blocks.remove(e.getPlayer().getUniqueId()); blocks.put(e.getPlayer().getUniqueId(), (atual + 1)); } else { blocks.put(e.getPlayer().getUniqueId(), 1); e.getPlayer().sendMessage("Ok, não tinhamos você."); } e.getPlayer().sendMessage("Você está com... " + blocks.get(e.getPlayer().getUniqueId())); if (blocks.get(e.getPlayer().getUniqueId()) >= 15) { e.getPlayer().sendMessage("Executou @%$#~&I?"); Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "givecaixa Norm 1 " + p.getPlayer().getName()); Bukkit.broadcastMessage("§a§lTESTE DE BLOCOS!"); } } } }
  8. Coloquei uns debug. package me.leo.api; import java.util.HashMap; import java.util.UUID; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.BlockBreakEvent; public class RewardOnMine implements Listener { public HashMap<UUID, Integer> blocks = new HashMap<>(); @EventHandler public void blockBreak(BlockBreakEvent e) { Player p = e.getPlayer(); Block block = e.getBlock(); if(block.getType().equals(Material.LAPIS_ORE)) { if (blocks.containsKey(e.getPlayer().getUniqueId())) { e.getPlayer().sendMessage("Ok, já tinhamos você."); int atual = blocks.get(e.getPlayer().getUniqueId()); blocks.remove(e.getPlayer().getUniqueId()); blocks.put(e.getPlayer().getUniqueId(), atual++); } else { blocks.put(e.getPlayer().getUniqueId(), 1); e.getPlayer().sendMessage("Ok, não tinhamos você."); } e.getPlayer().sendMessage("Você está com... " + blocks.get(e.getPlayer().getUniqueId())); if (blocks.get(e.getPlayer().getUniqueId()) >= 15) { e.getPlayer().sendMessage("Executou @%&#036;#~&amp;I?"); Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "givecaixa Norm 1 " + p.getPlayer().getName()); Bukkit.broadcastMessage("§a§lTESTE DE BLOCOS!"); } } } }
  9. Simplificando o que o @JoaoY disse acima public HashMap<UUID, Integer> blocks = new HashMap<>(); public void blockBreak(BlockBreakEvent e) { if (blocks.containsKey(e.getPlayer().getUniqueId())) { int atual = blocks.get(e.getPlayer().getUniqueId()); blocks.remove(e.getPlayer().getUniqueId()); blocks.put(e.getPlayer().getUniqueId(), atual++); } else { blocks.put(e.getPlayer().getUniqueId(), 1); } if (blocks.get(e.getPlayer().getUniqueId()) >= 1000) { Bukkit.dispatchCommand(e.getPlayer(), "player command"); Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "console command"); } }
  10. Kawaii

    resolvido Stackar

    Utilizaremos uma hashmap para armazenar os blocos estacados. public HashMap<Location, Integer> blocosEstacados = new HashMap<>(); logo após, você precisará fazer um for para pegar o radius de onde o jogador está colocando o bloco @EventHandler public void _Gambiarra(BlockBreakEvent e) { Player p = (Player) e.getPlayer(); Block currentBlock = null; Location location = null; for (int xOff = -1; xOff <= 1; ++xOff) { for (int yOff = -2; yOff <= 0; ++yOff) { // NOTE this goes from -2 to 0, not -1 to +1 for (int zOff = -1; zOff <= 1; ++zOff) { currentBlock = e.getBlock().getRelative(xOff, yOff, zOff); if (currentBlock != null && blocosEstacados.containsKey(currentBlock.getLocation())) { location = currentBlock.getLocation(); break; } continue; } } } if (location != null) { e.setCancelled(true); if (p.getItemInHand().getAmount() > 1) { p.getItemInHand().setAmount(p.getItemInHand().getAmount() - 1); } else { p.setItemInHand(null); } int atual = blocosEstacados.get(location); blocosEstacados.remove(location); blocosEstacados.put(location, (atual + 1)); } else { blocosEstacados.put(e.getBlock().getLocation(), 1); } } Não repare na gambiarra, é só um modelo. E então, logo após fazer tudo isso, é só fazer um for na hashmap com os valores dos blocos estacados e salvar na config.
  11. Erros citados corrigidos. Não, em breve. Corrigido, só baixar novamente. Corrigido, só baixar novamente.
  12. Adicionado compatibilidade com legend chat, coloque {heroclans} para mostrar a tag do clan. 1. Não existe /clan ajuda 2. Corrigido 3. Corrigido 4. Não encontrei este "bug", aqui funcionou perfeitamente. 5. Corrigido 6. Removidos, serão adicionados em breve, sinto muito. HeroClans, Plugin de economia e vault. A vontade, agora que foi atualizado, da pra mostrar melhor o sistema. Foi adicionado, use /. <mensagem> para enviar mensagem aos membros online do clan. Só baixar novamente que terá "novas" funções. BAIXEM NOVAMENTE CLICANDO AQUI NOVOS RECURSOS ADICIONADO.
  13. Parabéns pelo primeiro plugin, podia liberar a source e/ou deixar as mensagens configuráveis.
  14. Sua dúvida foi marcada como [Resolvido] e movido à área de dúvidas resolvidas. Atenciosamente, Gamer's Board
×