Chat Listener help!

Discussion in 'Plugin Development' started by dan14941, Mar 23, 2014.

Thread Status:
Not open for further replies.
  1. Offline

    dan14941

    Ok so im trying to make a chat listener that broadcast a message when someone types something.
    this is my main class onEnable()
    Code:java
    1. @Override
    2. public void onEnable()
    3. {
    4. pluginLogger.info("Chat Bot Util is starting!");
    5. pluginLogger.warning("[CBU] is not a complete plugin yet :)");
    6. manager = new MyConfigManager(this);
    7. chatMessageConfig = manager.getNewConfig("Messages.yml", new String[] {"Chat Bot Util", "Chat messages and answers here!"});
    8. Bukkit.getPluginManager().registerEvents(new ChatListener(), this);
    9. }

    and on my ChatListener.java this is what I have.
    Code:java
    1. import org.bukkit.Bukkit;
    2. import org.bukkit.ChatColor;
    3. import org.bukkit.event.EventHandler;
    4. import org.bukkit.event.Listener;
    5. import org.bukkit.event.player.PlayerChatEvent;
    6.  
    7. @SuppressWarnings("deprecation")
    8. public class ChatListener extends MainCBU implements Listener
    9. {
    10. @EventHandler
    11. public void onPlayerChat(PlayerChatEvent event)
    12. {
    13. if(event.getMessage().equalsIgnoreCase(chatMessageConfig.getString("Messages." + "Question1")))
    14. Bukkit.broadcastMessage("[" + ChatColor.valueOf(chatMessageConfig.getString("Config." + "Name." + "Color")) + chatMessageConfig.getString("Config." + "Name." + "Name"));
    15. }
    16. }
    17.  

    What did i do wrong? I think its from the main file (from the error message)
     
  2. Offline

    Henzz

    dan14941
    If you're not using a custom config, use saveDefaultConfig() to create the file. Otherwise create your config, as I don't see anywhere that the config is being created.
     
  3. Offline

    dan14941

    Henzz I am using a custom plugin and it's not the config that's the problem it's the chatListener. Would you like me to post an error log?
     
  4. Offline

    Henzz

  5. Offline

    MooshViolet

    I believe I had this problem. I do not know if this will fix it but.... Try the AsyncChatEvent
     
  6. Offline

    dan14941

    MooshViolet Henzz I changed my code a bit so now my ChatListener class is like this:
    Code:java
    1. import org.bukkit.Bukkit;
    2. import org.bukkit.event.EventHandler;
    3. import org.bukkit.event.Listener;
    4. import org.bukkit.event.player.AsyncPlayerChatEvent;
    5.  
    6. public class ChatListener implements Listener
    7. {
    8. MyConfig chatMessageConfig;
    9.  
    10. @EventHandler
    11. public void onPlayerChat(AsyncPlayerChatEvent event)
    12. {
    13. String Qu1 = (String) chatMessageConfig.get("Messages.Questions.Qu1");
    14. String An1 = (String) chatMessageConfig.get("Messages.Answers.An1");
    15. String message = event.getMessage();
    16.  
    17. if(message.contains(Qu1))
    18. {
    19. Bukkit.getServer().broadcastMessage(An1);
    20. }
    21. }
    22. }
    23.  

    And in my Messages config i have:
    HTML:
    Questions:
      Qu1: Test
    Answers:
      An1: Test complete!
    When i type "Test" it give me the error:
    Code:
    [18:25:11] [Netty IO #1/ERROR]: Could not pass event AsyncPlayerChatEvent to CBU v0.0.1
    org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:320) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:486) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:468) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.PlayerConnection.chat(PlayerConnection.java:878) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java:828) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.PacketPlayInChat.a(PacketPlayInChat.java:28) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.PacketPlayInChat.handle(PacketPlayInChat.java:47) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:72) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.NetworkManager.channelRead0(NetworkManager.java:192) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:98) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.handler.timeout.ReadTimeoutHandler.channelRead(ReadTimeoutHandler.java:149) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:100) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:480) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:447) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:341) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.util.io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at java.lang.Thread.run(Unknown Source) [?:1.7.0_51]
    Caused by: java.lang.NullPointerException
    at io.github.dan14941.ChatBotUtil.ChatListener.onPlayerChat(ChatListener.java:15) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_51]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_51]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_51]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_51]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:318) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    ... 28 more
    [18:25:11] [Netty IO #1/INFO]: <dan14941> test
    
    Any idea?
     
  7. Offline

    dan14941

Thread Status:
Not open for further replies.

Share This Page