Solved Permissions for my plugin.

Discussion in 'Plugin Development' started by mrcal17, Apr 14, 2014.

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

    mrcal17

    Hey guys, so I'm trying permissions for my plugin and it's not working...
    Plugin Code: http://pastebin.com/zvDkbz62
    Plugin.yml: http://pastebin.com/daQVmGcL
    Thanks and I hope you can help me find a fix! (It started saying an internal error has occured while trying to perform this command...when I tried to run it).
     
  2. Offline

    Iroh

    Moved to plugin dev.
     
  3. Offline

    amhokies

    If it says there's an internal error, that means there was a stack trace in the console. Can you please post that in its entirety?
     
  4. Offline

    mrcal17

    14.04 19:49:38 [Server] INFO at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:38 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:457) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:38 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:545) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:38 [Server] INFO at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:250) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:38 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:587) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:38 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:38 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:53) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:38 [Server] INFO at me.skipperguy12.AutoBroadcasterPlus.AutoBroadcasterPlus$1.run(AutoBroadcasterPlus.java:75) ~[?:?]
    14.04 19:49:38 [Server] INFO at me.skipperguy12.AutoBroadcasterPlus.AutoBroadcasterPlus.broadcastMessages(AutoBroadcasterPlus.java:114) ~[?:?]
    14.04 19:49:38 [Server] INFO java.lang.NullPointerException
    14.04 19:49:38 [Server] WARN Task #6751 for AutoBroadcaster v0.4 generated an exception
    14.04 19:49:14 [Server] INFO Admins: [:Owner:]~Cal[Dev]
    14.04 19:49:12 [Server] INFO ... 13 more
    14.04 19:49:12 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at me.mrcal17.shutalert.MainCommand.onCommand(MainCommand.java:24) ~[?:?]
    14.04 19:49:12 [Server] INFO Syntax error on token "else", delete this token
    14.04 19:49:12 [Server] INFO Syntax error, insert ") Statement" to complete IfStatement
    14.04 19:49:12 [Server] INFO Caused by: java.lang.Error: Unresolved compilation problems:
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:457) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:545) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:250) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:655) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:146) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.PacketPlayInChat.handle(PacketPlayInChat.java:47) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.PacketPlayInChat.a(PacketPlayInChat.java:28) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java:814) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at net.minecraft.server.v1_7_R1.PlayerConnection.handleCommand(PlayerConnection.java:952) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.CraftServer.dispatchCommand(CraftServer.java:683) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:175) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:49:12 [Server] INFO org.bukkit.command.CommandException: Unhandled exception executing command 'shutalert' in plugin ShutAlert v1.0
    14.04 19:49:12 [Server] ERROR null
    14.04 19:49:05 [Multicraft] mrcal17 ran command Message of the Day
    14.04 19:49:05 [Connect] User mrcal17, IP 173.245.65.47
    14.04 19:49:05 [Server] INFO UUID of player mrcal17 is ece55ea65ae14a80b22060bce6d220e1
    14.04 19:42:39 [Server] INFO World saved.
    14.04 19:42:39 [Server] INFO CONSOLE: Forcing save..
    14.04 19:42:39 [Server] INFO CONSOLE: Enabled level saving..
    14.04 19:42:39 [Multicraft] Auto-saving world...
    14.04 19:32:31 [Server] INFO World saved.
    14.04 19:32:31 [Server] INFO CONSOLE: Forcing save..
    14.04 19:32:31 [Server] INFO CONSOLE: Enabled level saving..
    14.04 19:32:31 [Multicraft] Auto-saving world...
    14.04 19:29:00 [Server] INFO hi
    14.04 19:26:08 [Server] INFO The updater did not find an update, and nothing was downloaded.
    14.04 19:22:23 [Server] INFO World saved.
    14.04 19:22:23 [Server] INFO CONSOLE: Forcing save..
    14.04 19:22:23 [Server] INFO CONSOLE: Enabled level saving..
    14.04 19:22:23 [Multicraft] Auto-saving world...
    14.04 19:12:15 [Server] INFO World saved.
    14.04 19:12:15 [Server] INFO CONSOLE: Forcing save..
    14.04 19:12:15 [Server] INFO CONSOLE: Enabled level saving..
    14.04 19:12:15 [Multicraft] Auto-saving world...
    14.04 19:02:07 [Server] INFO World saved.
    14.04 19:02:07 [Server] INFO CONSOLE: Forcing save..
    14.04 19:02:07 [Server] INFO CONSOLE: Enabled level saving..
    14.04 19:02:07 [Multicraft] Auto-saving world...
    14.04 19:02:03 [Server] INFO mrcal17 left the game.
    14.04 19:02:03 [Disconnect] User mrcal17 has disconnected, reason: Disconnected
    14.04 19:01:38 [Server] INFO at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:38 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:457) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:38 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:545) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:38 [Server] INFO at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:250) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:38 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:587) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:38 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:38 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:53) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:38 [Server] INFO at me.skipperguy12.AutoBroadcasterPlus.AutoBroadcasterPlus$1.run(AutoBroadcasterPlus.java:75) ~[?:?]
    14.04 19:01:38 [Server] INFO at me.skipperguy12.AutoBroadcasterPlus.AutoBroadcasterPlus.broadcastMessages(AutoBroadcasterPlus.java:114) ~[?:?]
    14.04 19:01:38 [Server] INFO java.lang.NullPointerException
    14.04 19:01:38 [Server] WARN Task #6751 for AutoBroadcaster v0.4 generated an exception
    14.04 19:01:38 [Server] INFO Admins: [:Owner:]~Cal[Dev]
    14.04 19:01:14 [Server] INFO ... 13 more
    14.04 19:01:14 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at me.mrcal17.shutalert.MainCommand.onCommand(MainCommand.java:24) ~[?:?]
    14.04 19:01:14 [Server] INFO Syntax error on token "else", delete this token
    14.04 19:01:14 [Server] INFO Syntax error, insert ") Statement" to complete IfStatement
    14.04 19:01:14 [Server] INFO Caused by: java.lang.Error: Unresolved compilation problems:
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:457) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:545) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:250) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:655) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:146) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.PacketPlayInChat.handle(PacketPlayInChat.java:47) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.PacketPlayInChat.a(PacketPlayInChat.java:28) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java:814) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at net.minecraft.server.v1_7_R1.PlayerConnection.handleCommand(PlayerConnection.java:952) [craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.CraftServer.dispatchCommand(CraftServer.java:683) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:175) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[craftbukkit-1.7.2-3020.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14.04 19:01:14 [Server] INFO org.bukkit.command.CommandException: Unhandled exception executing command 'shutalert' in plugin ShutAlert v1.0
    14.04 19:01:14 [Server] ERROR null
     
  5. Offline

    Jaaakee224

    mrcal17 I think this should work. (I fixed the code up a bit so it is easier to read. :) )

    Why did you get the error? Well, you didn't have the if statement before the permission. I'm guessing because you didn't paste your stacktrace. Test this out and if it doesn't work please send me the ENTIRE stacktrace.
    Code:java
    1. package me.mrcal17.shutalert;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.ChatColor;
    5. import org.bukkit.Server;
    6. import org.bukkit.command.Command;
    7. import org.bukkit.command.CommandSender;
    8. import org.bukkit.entity.Player;
    9. import org.bukkit.plugin.java.JavaPlugin;
    10.  
    11. public class MainCommand extends JavaPlugin {
    12.  
    13. @Override
    14. public void onEnable() {
    15. getLogger().info("ShutAlert made by mrcal17 has been enabled!");
    16. }
    17.  
    18. @Override
    19. public void onDisable() {
    20. getLogger().info("ShutAlert made by mrcal17 has been disabled!");
    21. }
    22. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
    23. Player p = (Player) sender;
    24. if (cmd.getName().equalsIgnoreCase("shutalert")) {
    25. if (p.hasPermission("shutalert.use")) {
    26. Bukkit.broadcastMessage(ChatColor.AQUA + "[" + ChatColor.RED + "ShutAlert" + ChatColor.AQUA + "]" + ChatColor.GOLD + "Pack your bags! It's time for a server restart!");
    27.  
    28. } else {
    29.  
    30. p.sendMessage(ChatColor.RED + "You do not have permission!");
    31. }
    32. return true;
    33. }
    34. }
    35. }


    Pastebin Version: http://pastebin.com/BnUbJRry
     
  6. Offline

    mrcal17

    Jaaakee224 thank you, it worked!
     
  7. Offline

    Jaaakee224

  8. Offline

    amhokies

    Jaaakee224 mrcal17 The code he originally posted and the "fixed" code are virtually identical. The problem was that he was missing the closing parenthesis on the if statement. Did your IDE not pick this up and tell you that there was an error?

    Code:java
    1. if(cmd.getName().equalsIgnoreCase("shutalert") && p.hasPermission("shutalert.use") {
    2.  
    3. }


    should be

    Code:java
    1. if(cmd.getName().equalsIgnoreCase("shutalert") && p.hasPermission("shutalert.use")) {
    2.  
    3. }


    EDIT: I guess the only reason you would do it with two if statements is for the "Permission denied" message. The way with one if statements and the && operator, it would tell you permission denied for every command that wasn't the "shutalert" command as well. Other than that...

    Code:java
    1. if (someCondition && someOtherCondition) {
    2.  
    3. }


    and

    Code:java
    1. if (someCondition) {
    2. if (someOtherCondition) {
    3.  
    4. }
    5. }

    are going to work the exact same.
     
  9. Offline

    Jaaakee224

    amhokies It works both ways, I just use the code below in all my plugins just because it's easier to read for me :p
    Code:java
    1. if (someCondition) {
    2. if (someOtherCondition) {
    3.  
    4. }
    5. }


    mrcal17
    Please set this thread to Solved.
     
Thread Status:
Not open for further replies.

Share This Page