Ducky Postado Dezembro 21, 2017 Denunciar Compartilhar Postado Dezembro 21, 2017 Fala rapiazada, estou com uma dúvida.. Quero pegar o metadata do bloco que eu coloquei de distância, achou dficiil?! Vou desenhar! Tentei esses métodos: if (!e.getBlock().getRelative(BlockFace.NORTH).getMetadata("nome").equals(p.getName())) { Porém nao foi Link para o comentário Compartilhar em outros sites More sharing options...
zMathi Postado Dezembro 21, 2017 Denunciar Compartilhar Postado Dezembro 21, 2017 Cara... equals numa classe, vai retornar uma classe igual, nesse caso retorna uma List. É questão de lógica e observação. Uso correto: if (!e.getBlock().getRelative(BlockFace.NORTH).getMetadata("nome").get(0).asString().equals(p.getName())){ Obs: use get(0) caso tenha apenas UMA metadata no bloco. Pois é uma lista de metadata. Link para o comentário Compartilhar em outros sites More sharing options...
Ducky Postado Dezembro 21, 2017 Autor Denunciar Compartilhar Postado Dezembro 21, 2017 Cara... equals numa classe, vai retornar uma classe igual, nesse caso retorna uma List. É questão de lógica e observação. Uso correto: if (!e.getBlock().getRelative(BlockFace.NORTH).getMetadata("nome").get(0).asString().equals(p.getName())){ Obs: use get(0) caso tenha apenas UMA metadata no bloco. Pois é uma lista de metadata. Erro meu, esqueci de avisar: List<MetadataValue> lapis = e.getBlock().getRelative(BlockFace.UP).getMetadata("nome"); !lapis.get(0).value().equals(p.getName())) { Também não funcionou Link para o comentário Compartilhar em outros sites More sharing options...
Jaoow Postado Dezembro 21, 2017 Denunciar Compartilhar Postado Dezembro 21, 2017 Cara, pelo oque eu sei a BlockFace são as faces do Bloco(cubo) como o exemplo: Não o bloco dos lados do bloco basePara pegar o bloco do lado utilize: Location esquerda = new Location((mundo do bloco), (loc x do bloco), (loc y do bloco), (loc z do bloco + 1)); Block b_esquerda = esquerda.getBlock(); if(b_esquerda..getMetadata("nome").get(0).asString().equals(p.getName())) { // se tive meta faz algo } else { // se não tive meta faz algo } Codigo feito a mão pode conter erros! Link para o comentário Compartilhar em outros sites More sharing options...
Ducky Postado Dezembro 21, 2017 Autor Denunciar Compartilhar Postado Dezembro 21, 2017 Cara, pelo oque eu sei a BlockFace são as faces do Bloco(cubo) como o exemplo: Não o bloco dos lados do bloco base Para pegar o bloco do lado utilize: Location esquerda = new Location((mundo do bloco), (loc x do bloco), (loc y do bloco), (loc z do bloco + 1)); Block b_esquerda = esquerda.getBlock(); if(b_esquerda..getMetadata("nome").get(0).asString().equals(p.getName())) { // se tive meta faz algo } else { // se não tive meta faz algo } Codigo feito a mão pode conter erros! Isso eu sei meu desenho está falando isso k Porém não estou usando location nos blocos e muito menos world, por isso no evento tem que ser por relative Link para o comentário Compartilhar em outros sites More sharing options...
AlexHackers Postado Dezembro 21, 2017 Denunciar Compartilhar Postado Dezembro 21, 2017 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
Ducky
Fala rapiazada, estou com uma dúvida.. Quero pegar o metadata do bloco que eu coloquei de distância, achou dficiil?! Vou desenhar!
Tentei esses métodos:
Porém nao foi
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados