Ir para conteúdo
  • 0

[1.11] chest com item


evertonschuster

Pergunta

Boa noite amigos, como minhas aulas estao acabando, resolvi voltar a mexer com pl uhueuehue

bom, estou tentando spawnar 1 bau, com itens dentro, porem, quando o bau e criado, da 1 erro no console, e cria o bau,

mas invesivel, na segunda vez q dou o comando, ocorre td bem,

 

cod

 

 

 

        Location loc = new Location( Bukkit.getWorld("world"), 0,64,135);
        loc.getBlock().setType(Material.CHEST);

        Chest sh = (Chest) loc.getBlock().getState();
        ItemStack items = new ItemStack(Material.ICE);
        sh.getInventory().addItem(items);
          

 

 

 

 

erro

 

 

 

[22:42:18 ERROR]: Could not pass event ChatMessageEvent to NS_onChatMassager v1.0
org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at br.com.devpaulo.legendchat.channels.utils.ChannelUtils.realMessage(ChannelUtils.java:222) [LegendChat.jar:?]
        at br.com.devpaulo.legendchat.channels.types.PermanentChannel.sendMessage(PermanentChannel.java:180) [LegendChat.jar:?]
        at br.com.devpaulo.legendchat.listeners.Listeners.onChat2(Listeners.java:108) [LegendChat.jar:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_144]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:484) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at net.minecraft.server.v1_11_R1.PlayerConnection.chat(PlayerConnection.java:1276) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at net.minecraft.server.v1_11_R1.PlayerConnection.a(PlayerConnection.java:1214) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at net.minecraft.server.v1_11_R1.PacketPlayInChat$1.run(PacketPlayInChat.java:39) [craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_144]
        at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_144]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_144]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_144]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_144]
Caused by: java.lang.IllegalStateException: Asynchronous block remove!
        at org.spigotmc.AsyncCatcher.catchOp(AsyncCatcher.java:14) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at net.minecraft.server.v1_11_R1.Block.remove(Block.java:314) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at net.minecraft.server.v1_11_R1.Chunk.a(Chunk.java:473) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at net.minecraft.server.v1_11_R1.World.setTypeAndData(World.java:374) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.craftbukkit.v1_11_R1.block.CraftBlock.setTypeIdAndData(CraftBlock.java:145) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.craftbukkit.v1_11_R1.block.CraftBlock.setTypeId(CraftBlock.java:132) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.craftbukkit.v1_11_R1.block.CraftBlock.setType(CraftBlock.java:123) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at org.bukkit.craftbukkit.v1_11_R1.block.CraftBlock.setType(CraftBlock.java:118) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        at com.everton.chatManager.EventMarcar.onChat(EventMarcar.java:29) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_144]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[craftbukkit.jar:git-Spigot-3fb9445-6e3cec8]
        ... 22 more

 

 

 

Editado por evertonschuster
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

O Bukkit/Spigot não permite que você altere alguns dados do jogo de forma "asynchronous", que não é sincronizado com a thread principal.

Este evento ChatMessageEvent, é async, ou seja, você não pode fazer praticamente nenhuma alteração do jogo aí e modificar o mundo é uma delas.

 

Recomendo criar uma espécie de ''ouvinte'' para executar essas funções, por exemplo: o evento ocorre, você faz suas operações e verifica se é para criar o bloco, se for, você envia esses dados para uma Lista por exemplo, o ouvinte vai, obviamente, ouvir e executar a função na thread principal.

Outra é usar o evento PlayerChatEvent, mas é um método depreciado, em alguns dias, ele pode deixar de existir.

Link para o comentário
Compartilhar em outros sites

O Bukkit/Spigot não permite que você altere alguns dados do jogo de forma "asynchronous", que não é sincronizado com a thread principal.

Este evento ChatMessageEvent, é async, ou seja, você não pode fazer praticamente nenhuma alteração do jogo aí e modificar o mundo é uma delas.

 

Recomendo criar uma espécie de ''ouvinte'' para executar essas funções, por exemplo: o evento ocorre, você faz suas operações e verifica se é para criar o bloco, se for, você envia esses dados para uma Lista por exemplo, o ouvinte vai, obviamente, ouvir e executar a função na thread principal.

Outra é usar o evento PlayerChatEvent, mas é um método depreciado, em alguns dias, ele pode deixar de existir.

nao era exatamente isso, mas foi quase, mas clw

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...