zToodi Postado Setembro 22, 2018 Denunciar Compartilhar Postado Setembro 22, 2018 Estou criando um plugin de quando quebrar um bloco ir pro inventario, e um sistema de verificar se o inventario do jogador está cheio porém a verificação que fiz está bugando '-' se tiver outro metodo me ensinem por favor Metodo Utilizado: Link para o comentário Compartilhar em outros sites More sharing options...
String Postado Setembro 22, 2018 Denunciar Compartilhar Postado Setembro 22, 2018 Pesquise um pouco sobre p.getInventory().firstEmpty(); Ele é o método mais funcional neste caso, aí você está fazendo uma declaração muito, mais muito errada. Link para o comentário Compartilhar em outros sites More sharing options...
zToodi Postado Setembro 22, 2018 Autor Denunciar Compartilhar Postado Setembro 22, 2018 31 minutos atrás, String disse: Pesquise um pouco sobre p.getInventory().firstEmpty(); Ele é o método mais funcional neste caso, aí você está fazendo uma declaração muito, mais muito errada. Cara estou quase 1 hora pesquisando sobre firstEmpty e não consegui ainda utilizar o metodo ? Link para o comentário Compartilhar em outros sites More sharing options...
SlayerFear Postado Setembro 22, 2018 Denunciar Compartilhar Postado Setembro 22, 2018 (editado) @EventHandler public void BlockBreak(BlockBreakEvent e) { if((e.getPlayer().getInventory().firstEmpty() != -1)){ for(ItemStack item : e.getBlock().getDrops()){ e.getPlayer().getInventory().addItem(item); } }else{ e.getPlayer().sendMessage(RED + "Seu Inventario esta cheio!"); } e.setCancelled(true); e.getBlock().setType(Material.AIR); } } Editado Setembro 22, 2018 por MaxThon1365DEV Esqueci de colocar algo '-' Link para o comentário Compartilhar em outros sites More sharing options...
zToodi Postado Setembro 22, 2018 Autor Denunciar Compartilhar Postado Setembro 22, 2018 4 horas atrás, MaxThon1365DEV disse: @EventHandler public void BlockBreak(BlockBreakEvent e) { if((e.getPlayer().getInventory().firstEmpty() != -1)){ for(ItemStack item : e.getBlock().getDrops()){ e.getPlayer().getInventory().addItem(item); } }else{ e.getPlayer().sendMessage(RED + "Seu Inventario esta cheio!"); } e.setCancelled(true); e.getBlock().setType(Material.AIR); } } Acho que esse metodo para mim não irá funcionar, pois eu queria verificar se o bloco quebrado é tal bloco (sómente para os minérios) Link para o comentário Compartilhar em outros sites More sharing options...
RUSHyoutuber Postado Setembro 22, 2018 Denunciar Compartilhar Postado Setembro 22, 2018 1 hora atrás, レオナルド disse: Acho que esse metodo para mim não irá funcionar, pois eu queria verificar se o bloco quebrado é tal bloco (sómente para os minérios) ????????????????????????????????????????? ta viajando na batatinha cara Existem 2 método pra verificar se o inv ta cheio, o primeiro deles é verificando pelo firstEmpty, no caso, o firstEmpty retorna o número do primeiro slot vazio do inventario do player, caso o player não possua nenhum slot vazio então o número retornado sera -1, ou seja, pra verificar basta fazer isso if (p.getInventory().firstEmpty() == -1) // inv cheio A outra maneira seria criar um método que faça um loop através de todos os slots do inv do player e retorne uma boolean dizendo se o inv ta cheio ou não... Link para o comentário Compartilhar em outros sites More sharing options...
InVinicius Postado Dezembro 22, 2018 Denunciar Compartilhar Postado Dezembro 22, 2018 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