Solved Addlore help

Discussion in 'Plugin Development' started by Jumb_1907, Apr 1, 2017.

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

    Jumb_1907

    Hey,

    I'm adding custom enchantmens to my plugin and It gives me and error.

    My code :
    Code:
                    if (arg3[0].equals("haste")) {
                        p.sendMessage(Variables.prefix + "Haste added");
                        ItemMeta item = p.getItemInHand().getItemMeta();
                        ArrayList<String> s = new ArrayList<String>(item.getLore());
                        s.add(ChatColor.BOLD + "HASTE");
                        item.setLore(s);
                        p.getItemInHand().setItemMeta(item);
                        return true;
                    }
    Error:
    Code:
    [11:30:58 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'epicprison' in plugin EpicPrison v0.0.4
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at org.bukkit.craftbukkit.v1_8_R3.CraftServer.dispatchCommand(CraftServer.java:642) ~[spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.PlayerConnection.handleCommand(PlayerConnection.java:1135) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:970) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:45) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:1) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_112]
            at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_112]
            at net.minecraft.server.v1_8_R3.SystemUtils.a(SystemUtils.java:19) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:718) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:367) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:657) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:560) [spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            at java.lang.Thread.run(Thread.java:745) [?:1.8.0_112]
    Caused by: java.lang.NullPointerException
            at java.util.ArrayList.<init>(ArrayList.java:177) ~[?:1.8.0_112]
            at me.jumbo1907.epicprison.commands.EpicPrisonCommand.onCommand(EpicPrisonCommand.java:74) ~[?:?]
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot-1.8.7.jar:git-Spigot-3ccbe77-a6a57a9]
            ... 15 more
     
  2. item.getItemMeta() can be null

    • only execute the following code if item.hasItemMeta()

    and meta.getLore() can be null

    1. create an empty arraylist
    2. check if meta.hasLore()
    3. list.addAll(lore)
     
    Jumb_1907 likes this.
  3. Offline

    Jumb_1907

Thread Status:
Not open for further replies.

Share This Page