Help with plugin permission nodes...

Discussion in 'Plugin Development' started by NDUGAR, Apr 6, 2014.

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

    NDUGAR

    Hello, I am creating a plugin which has a permission node for this to run... However I cannot seem to understand why this error comes up, any help; thanks:

    Error code in console:

    Code:
    [10:58:48 ERROR]: Permission node 'bang.*' in plugin description file for EnterWithABang v1.0 is invalid
    java.lang.IllegalArgumentException: Data cannot be null
        at org.apache.commons.lang.Validate.notNull(Validate.java:203) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.permissions.Permission.loadPermission(Permission.java:282) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.permissions.Permission.loadPermissions(Permission.java:232) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.plugin.PluginDescriptionFile.getPermissions(PluginDescriptionFile.java:742) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.craftbukkit.v1_7_R2.CraftServer.loadPlugin(CraftServer.java:443) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.craftbukkit.v1_7_R2.CraftServer.enablePlugins(CraftServer.java:375) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.craftbukkit.v1_7_R2.CraftServer.reload(CraftServer.java:786) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.Bukkit.reload(Bukkit.java:288) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:23) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:180) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.craftbukkit.v1_7_R2.CraftServer.dispatchCommand(CraftServer.java:696) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at org.bukkit.craftbukkit.v1_7_R2.CraftServer.dispatchServerCommand(CraftServer.java:683) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at net.minecraft.server.v1_7_R2.DedicatedServer.ax(DedicatedServer.java:286) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at net.minecraft.server.v1_7_R2.DedicatedServer.v(DedicatedServer.java:251) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at net.minecraft.server.v1_7_R2.MinecraftServer.u(MinecraftServer.java:548) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at net.minecraft.server.v1_7_R2.MinecraftServer.run(MinecraftServer.java:459) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
        at net.minecraft.server.v1_7_R2.ThreadServerApplication.run(SourceFile:618) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-10-gcf5a547-b3035jnks]
    
    Here is my java:

    Code:java
    1. package me.Schnel.EnterWithABang;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.Color;
    5. import org.bukkit.FireworkEffect;
    6. import org.bukkit.FireworkEffect.Type;
    7. import org.bukkit.entity.Firework;
    8. import org.bukkit.entity.Player;
    9. import org.bukkit.event.Listener;
    10. import org.bukkit.plugin.java.JavaPlugin;
    11. import org.bukkit.event.EventHandler;
    12. import org.bukkit.event.player.PlayerJoinEvent;
    13. import org.bukkit.inventory.meta.FireworkMeta;
    14.  
    15. public class Main extends JavaPlugin implements Listener {
    16.  
    17. public void onEnable(){
    18. Bukkit.getServer().getPluginManager().registerEvents(this, this);
    19. getLogger().info("Plugin Enabled");
    20. }
    21.  
    22. public void onDisable(){
    23. getLogger().info("Plugin Disabled");
    24. }
    25.  
    26. @EventHandler
    27. public void onPlayerJoin (final PlayerJoinEvent pje){
    28. Player player = pje.getPlayer();
    29. if(player.hasPermission("bang.*")){
    30. Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable(){
    31. public void run(){
    32.  
    33. Firework f = (Firework) pje.getPlayer().getWorld().spawn(pje.getPlayer().getLocation(), Firework.class);
    34.  
    35. FireworkMeta fm = f.getFireworkMeta();
    36. fm.addEffect(FireworkEffect.builder()
    37. .flicker(true)
    38. .trail(true)
    39. .with(Type.BALL)
    40. .with(Type.BALL_LARGE)
    41. .with(Type.STAR)
    42. .with(Type.BURST)
    43. .withColor(Color.OLIVE)
    44. .withColor(Color.FUCHSIA)
    45. .withFade(Color.LIME)
    46. .withFade(Color.ORANGE)
    47. .build());
    48. fm.setPower(1);
    49. f.setFireworkMeta(fm);
    50. }
    51. }, 10);
    52.  
    53. }
    54.  
    55. }
    56. }


    And finally here is my plugin.yml:

    Code:
    name: EnterWithABang
    author: Schnel Studios
    version: 1.0
    description: EnterWithABang allows players to have a firework launched at their feet at login
    main: me.Schnel.EnterWithABang.Main
     
    permissions:
      bang.*:

     
  2. Offline

    BillyGalbreath

    Your plugin.yml is incomplete. Looks like it chopped off the last few lines for that permission node which is causing your error.
     
  3. Offline

    Blackveil

    I don't quite understand why you are creating a scheduler for a firework inside of your event listener. Why don't you just get rid of the scheduler and have the PlayerJoinEvent handle the rest for you?
     
Thread Status:
Not open for further replies.

Share This Page