How To Add Enchantments to Fire Charge

Discussion in 'Plugin Development' started by BladdonB, May 24, 2015.

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

    BladdonB

    Hello! I am making a KitPvp plugin and I am a beginner at coding. I want to enchant a fire charge for my KitPvp plugin I am making.

    When I do /pyro it wont work.
    Code:
            ItemStack pyrosword = new ItemStack(Material.FIREBALL);
                ItemMeta n = pyrosword .getItemMeta();
                n.setDisplayName("" + ChatColor.BLUE + ChatColor.BOLD + "Fire" + ChatColor.RESET + ChatColor.GRAY + "BALL");
                pyrosword.setItemMeta(n);
                pyrosword.addEnchantment(Enchantment.DAMAGE_ALL, 1);
    When I delete the enchantment it starts working again, so how do I add sharpness to it?

    Also can I do more than sharpness 1 like sharpness 10 or something?
     
  2. @BladdonB Try setting the item meta after you add the enchant
     
  3. Offline

    nverdier

    The enchantment is added to the ItemStack, not the ItemMeta, so it won't change anything.


    @BladdonB Try using the #addUnsafeEnchantment method instead of the #addEnchantment method.
     
    Shortninja66 likes this.
  4. Not sure, but maybe addEnchantment() checks if the enchantment is applicable to the item material, and of course naturally, Sharpness can't be added to a fireball. Use addUnsafeEnchantment instead. This allows you to add unnatural enchantments, along with unnatural enchantment levels, such as Sharpness 10 (which is beyond Sharpness 5 (max)).

    Edit: Yes, I checked the javadoc and it throws an Exception if the enchantment is not applicable:
    https://github.com/Bukkit/Bukkit-Ja...java/org/bukkit/inventory/ItemStack.java#L424
     
  5. Offline

    Regablith

    addUnsafeEnchantment
     
  6. Offline

    BladdonB

    Code:
    C:\Users\admin\Desktop\Learning Bukkit\Testing Server12341.7>java -Xmx2048M -jar
    bukkit.jar -o false
    Loading libraries, please wait...
    [22:02:03 INFO]: Starting minecraft server version 1.7.10
    [22:02:04 INFO]: Loading properties
    [22:02:04 INFO]: Default game type: SURVIVAL
    [22:02:04 INFO]: Generating keypair
    [22:02:04 INFO]: Starting Minecraft server on *:25566
    [22:02:04 INFO]: This server is running CraftBukkit version git-Bukkit-1.7.9-R0.
    2-24-g07d4558-b3116jnks (MC: 1.7.10) (Implementing API version 1.7.10-R0.1-SNAPS
    HOT)
    [22:02:04 ERROR]: Ambiguous plugin name `KitPvp' for files `plugins\KitPvpTest2.
    jar' and `plugins\KitPvp.jar' in `plugins'
    [22:02:04 INFO]: [iConomy] Loading iConomy v7.0
    [22:02:04 INFO]: [NoJoinMessage] Loading NoJoinMessage v1.6
    [22:02:04 INFO]: [boosCooldowns] Loading boosCooldowns v3.8.4
    [22:02:04 INFO]: [KitPvp] Loading KitPvp v1.0
    [22:02:04 WARN]: **** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!
    [22:02:04 WARN]: The server will make no attempt to authenticate usernames. Bewa
    re.
    [22:02:04 WARN]: While this makes the game possible to play without internet acc
    ess, it also opens up the ability for hackers to connect with any username they
    choose.
    [22:02:04 WARN]: To change this, set "online-mode" to "true" in the server.prope
    rties file.
    [22:02:04 INFO]: Preparing level "world"
    [22:02:05 INFO]: Preparing start region for level 0 (Seed: 5279123504374813719)
    [22:02:05 WARN]: Could not get information about this CraftBukkit version; perha
    ps you are running a custom one?: FileNotFoundException
    [22:02:05 WARN]: Could not get latest artifact information: FileNotFoundExceptio
    n
    [22:02:05 INFO]: Preparing start region for level 1 (Seed: 5279123504374813719)
    [22:02:06 INFO]: [iConomy] Enabling iConomy v7.0
    [22:02:06 INFO]: [iConomy - April Fools] Enabled (38 ms)
    [22:02:06 INFO]: [iConomy] Hello, I'm Nijikokun. Yes, this is an April Fools jok
    e, but '/money top' was fixed! Enjoy :) - Rare Version!
    [22:02:06 INFO]: [NoJoinMessage] Enabling NoJoinMessage v1.6
    [22:02:06 INFO]: NoJoinMessage Has Been Enabled. 1.6
    [22:02:06 INFO]: [boosCooldowns] Enabling boosCooldowns v3.8.4
    [22:02:06 INFO]: [iConomy - April Fools] Purged accounts with default balance.
    [22:02:06 INFO]: [boosCooldowns] version 3.8.4 by [LordBoos (ingame name boosik)
    ] is enabled!
    [22:02:06 INFO]: [boosCooldowns] [Vault] not found disabling economy support.
    [22:02:06 INFO]: [KitPvp] Enabling KitPvp v1.0
    [22:02:06 INFO]: [KitPvp] ITS ALIVEEEEEEEEEEEEEEEEEEEEEEEEEEE
    [22:02:06 INFO]: Server permissions file permissions.yml is empty, ignoring it
    [22:02:06 INFO]: Done (1.935s)! For help, type "help" or "?"
    [22:02:11 INFO]: BladDon has join the KIT PVP server
    [22:02:11 INFO]: BladDon[/127.0.0.1:49659] logged in with entity id 43 at ([worl
    d] 1253.53427049365, 62.0, -28.01816113594817)
    [22:02:18 INFO]: BladDon issued server command: /pyro
    >op Bladdon
    [22:02:27 INFO]: CONSOLE: Opped Bladdon
    [22:02:28 INFO]: BladDon issued server command: /pyro
    [22:02:28 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'pyro
    ' in plugin KitPvp v1.0
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[buk
    kit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:18
    0) ~[bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand(CraftServe
    r.java:740) ~[bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.PlayerConnection.handleCommand(PlayerCon
    nection.java:957) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java
    :818) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.PacketPlayInChat.a(PacketPlayInChat.java
    :28) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.PacketPlayInChat.handle(PacketPlayInChat
    .java:47) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:157
    ) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.ServerConnection.c(SourceFile:134) [bukk
    it.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:6
    67) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:2
    58) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:5
    58) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java
    :469) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:6
    28) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
    Caused by: java.lang.IllegalArgumentException: Specified enchantment cannot be a
    pplied to this itemstack
            at org.bukkit.inventory.ItemStack.addEnchantment(ItemStack.java:432) ~[b
    ukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at me.pvp.main.Main.onCommand(Main.java:128) ~[?:?]
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[buk
    kit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            ... 13 more
    [22:02:30 INFO]: BladDon issued server command: /pyro
    [22:02:30 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'pyro
    ' in plugin KitPvp v1.0
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[buk
    kit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:18
    0) ~[bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand(CraftServe
    r.java:740) ~[bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.PlayerConnection.handleCommand(PlayerCon
    nection.java:957) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java
    :818) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.PacketPlayInChat.a(PacketPlayInChat.java
    :28) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.PacketPlayInChat.handle(PacketPlayInChat
    .java:47) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:157
    ) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.ServerConnection.c(SourceFile:134) [bukk
    it.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:6
    67) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:2
    58) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:5
    58) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java
    :469) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:6
    28) [bukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
    Caused by: java.lang.IllegalArgumentException: Specified enchantment cannot be a
    pplied to this itemstack
            at org.bukkit.inventory.ItemStack.addEnchantment(ItemStack.java:432) ~[b
    ukkit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            at me.pvp.main.Main.onCommand(Main.java:128) ~[?:?]
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[buk
    kit.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks]
            ... 13 more
    >
    SOOOOOOOOOOOOOOOOOO YEAH, I tried to make it unsafe but... it still say internal server error ;/
     
  7. Offline

    mrCookieSlime

    Locked. Offline Mode is not supported.
     
Thread Status:
Not open for further replies.

Share This Page