Solved Conflicting Commands

Discussion in 'Plugin Development' started by beastman3226, Aug 21, 2015.

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

    beastman3226

    Currently developing a high efficiency, flat file banning plugin. Problem is, none of the commands function. I've tried everything I can think of but none of it works. When I check to see that the plugin is enabled, the name is in red instead of green, no error messages in console. Console says the command got issued but none of the other things take place.
     
  2. Offline

    finalblade1234

    Any errors? could you show your code?
     
  3. Offline

    beastman3226

    Like I said, no error messages.
    Code:
    //in onEnable
    BanHandler bh = new BanHandler();
    getCommand("ban").setExecutor(bh);
    getCommand("bans").setExecutor(bh);
    getCommand("tempban").setExecutor(bh);
    getCommand("unban").setExecutor(bh);
    
    //onCommand
    if (cs.hasPermission(cmnd.getPermission())) {
                if (cmnd.getName().equalsIgnoreCase("ban") & strings.length > 0) {
                    Player target = Bukkit.getPlayer(strings[0]);
                    if (target == null) {
                        cs.sendMessage(ChatColor.translateAlternateColorCodes('&', "&4[&cuBan&4]&7:&rPlayer: " + strings[0] + " does not exist. Check spelling."));
                        return false;
                    } else {
                        String reason = "";
                        for (String arg : strings) {
                            if (arg.equals(strings[0])) {
                                continue;
                            } else {
                                reason = reason + arg;
                            }
                        }
                        ArrayList<String> banned = (ArrayList<String>) uBan.FileHander.getLogs().getList("bans");
                        banned.add(target.getName());
                        uBan.FileHander.getLogs().set("bans", banned);
                        uBan.FileHander.getLogs().set(target.getName() + ".reason", reason);
                        uBan.FileHander.getLogs().set(target.getName() + ".banner", cs.getName());
                        DateFormat df = new SimpleDateFormat("dd/MM/yy HH:mm:ss");
                        Date date = new Date();
                        uBan.FileHander.getLogs().set(target.getName() + ".time", df.format(date));
                        uBan.FileHander.getLogs().set(target.getName() + ".UUID", target.getUniqueId());
                        uBan.FileHander.saveLogs();
                        if (target.isOnline()) target.kickPlayer(reason);
                        for(Player player : uBan.plugin.getServer().getOnlinePlayers()) {
                            if(player.isOp() & player.isOnline()) {
                                player.sendMessage(ChatColor.GRAY + "[" + ChatColor.RED + "uBan" + ChatColor.GRAY + "]: " +ChatColor.DARK_PURPLE + cs.getName() + " has banned " + target.getName() + " for " + reason);
                            } else {
                                continue;
                            }
                        }
                    }
                } else if (cmnd.getName().equalsIgnoreCase("tempban") & strings.length > 1) {
                    Player target = Bukkit.getPlayer(strings[0]);
                    if (target == null) {
                        cs.sendMessage(ChatColor.translateAlternateColorCodes('&', "&4[&cuBan&4]&7:&rPlayer: " + strings[0] + " does not exist. Check spelling."));
                        return false;
                    } else {
                        String reason = "";
                        String time = strings[1] + " " + strings[2];
                        for (String arg : strings) {
                            if (arg.equals(strings[0]) || arg.equals(strings[1]) || arg.equals(strings[2])) {
                            } else {
                                reason = reason + arg;
                            }
                        }
                        ArrayList<String> banned = (ArrayList<String>) uBan.FileHander.getLogs().getList("bans");
                        banned.add(target.getName());
                        uBan.FileHander.getLogs().set("bans", banned);
                        uBan.FileHander.getLogs().set(target.getName() + ".reason", reason);
                        uBan.FileHander.getLogs().set(target.getName() + ".banner", cs.getName());
                        DateFormat df = new SimpleDateFormat("dd/MM/yy HH:mm:ss");
                        Date date = new Date();
                        uBan.FileHander.getLogs().set(target.getName() + ".time", df.format(date));
                        uBan.FileHander.getLogs().set(target.getName() + ".length", time);
                        uBan.FileHander.getLogs().set(target.getName() + ".enddate", TimeUtilities.addTime(time, date));
                        uBan.FileHander.getLogs().set(target.getName() + ".UUID", target.getUniqueId());
                        uBan.FileHander.saveLogs();
                        if (target.isOnline()) target.kickPlayer(reason);
                        for(Player player : uBan.plugin.getServer().getOnlinePlayers()) {
                            if(player.isOp() & player.isOnline()) {
                                player.sendMessage(ChatColor.GRAY + "[" + ChatColor.RED + "uBan" + ChatColor.GRAY + "]: " +ChatColor.DARK_PURPLE + cs.getName() + " has banned " + target.getName() + " for " + reason);
                            } else {
                                continue;
                            }
                        }
                    }
                } else if (cmnd.getName().equalsIgnoreCase("unban")) {
                    Player target = Bukkit.getPlayer(strings[0]);
                    if (target == null) {
                        cs.sendMessage(ChatColor.translateAlternateColorCodes('&', "&4[&cuBan&4]&7:&rPlayer: " + strings[0] + " does not exist. Check spelling."));
                        return false;
                    } else {
                        ArrayList<String> banned = (ArrayList<String>) uBan.FileHander.getLogs().getList("bans");
                        banned.remove(target.getName());
                        uBan.FileHander.getLogs().set("bans", banned);
                        uBan.FileHander.getLogs().set(target.getName(), null);
                    }
                } else if (cmnd.getName().equalsIgnoreCase("bans") & strings.length == 0) {
                    cs.sendMessage(uBan.FileHander.getLogs().getList("bans").toArray(strings));
                } else if (cmnd.getName().equalsIgnoreCase("bans") & strings.length > 0) {
                    if (uBan.FileHander.getLogs().getList("bans").contains(strings[0])) {
                        cs.sendMessage(ChatColor.DARK_RED + "/=============Ban Details=============\\");
                        cs.sendMessage(ChatColor.RED + "Reason: " + uBan.FileHander.getLogs().get(strings[0] + ".reason"));
                        cs.sendMessage(ChatColor.RED + "Moderator: " + uBan.FileHander.getLogs().get(strings[0] + ".banner"));
                        cs.sendMessage(ChatColor.RED + "Time: " + uBan.FileHander.getLogs().get(strings[0] + ".time"));
                        cs.sendMessage(ChatColor.RED + "UUID: " + uBan.FileHander.getLogs().get(strings[0] + ".UUID"));
                        if (uBan.FileHander.getLogs().getString(strings[0] + ".length") != null) {
                            cs.sendMessage(ChatColor.RED + "Length: " + uBan.FileHander.getLogs().get(strings[0] + ".length"));
                            cs.sendMessage(ChatColor.RED + "End Date: " + uBan.FileHander.getLogs().get(strings[0] + ".enddate"));
                        }
                    }
                } else {
                    cs.sendMessage("Try /help uBan.");
                }
            } else {
                cs.sendMessage(cmnd.getPermissionMessage());
            }
            return true;
     
  4. Offline

    teej107

    Uh, I think that means your plugin is disabled. Idk if it shows up red if it didn't load right. Are you sure there are no errors? Check again.
     
  5. Offline

    beastman3226

    So I checked the logs again:
    Code:
    [20:49:24] [Server thread/INFO]: [uBan] Enabling uBan v1.0.0-Alpha
    [20:49:24] [Server thread/ERROR]: [uBan] Problem initializing the file
    [20:49:24] [Server thread/ERROR]: [uBan] Unable to log, stopping uBan...
    [20:49:24] [Server thread/ERROR]: [uBan] Problem saving the file
    [20:49:24] [Server thread/ERROR]: Error occurred while enabling uBan v1.0.0-Alpha (Is it up to date?)
    org.bukkit.plugin.IllegalPluginAccessException: Plugin attempted to register me.beastman3226.uban.listeners.PlayerListener@19083e71 while not enabled
        at org.bukkit.plugin.SimplePluginManager.registerEvents(SimplePluginManager.java:523) ~[craftbukkit.jar:git-Bukkit-53fac9f]
        at me.beastman3226.uban.uBan.onEnable(uBan.java:39) ~[?:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321) ~[craftbukkit.jar:git-Bukkit-53fac9f]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:332) [craftbukkit.jar:git-Bukkit-53fac9f]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:404) [craftbukkit.jar:git-Bukkit-53fac9f]
        at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugin(CraftServer.java:342) [craftbukkit.jar:git-Bukkit-53fac9f]
        at org.bukkit.craftbukkit.v1_8_R3.CraftServer.enablePlugins(CraftServer.java:314) [craftbukkit.jar:git-Bukkit-53fac9f]
        at net.minecraft.server.v1_8_R3.MinecraftServer.s(MinecraftServer.java:406) [craftbukkit.jar:git-Bukkit-53fac9f]
        at net.minecraft.server.v1_8_R3.MinecraftServer.k(MinecraftServer.java:370) [craftbukkit.jar:git-Bukkit-53fac9f]
        at net.minecraft.server.v1_8_R3.MinecraftServer.a(MinecraftServer.java:325) [craftbukkit.jar:git-Bukkit-53fac9f]
        at net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:235) [craftbukkit.jar:git-Bukkit-53fac9f]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:503) [craftbukkit.jar:git-Bukkit-53fac9f]
    
    So the file that I am saving to fails to get initialized and therefore I disable the plugin in onEnable. So I am going to mess around with that.
     
  6. Show your onEnable
     
  7. Offline

    beastman3226

Thread Status:
Not open for further replies.

Share This Page