Solved Some bugs I need to fix.

Discussion in 'Plugin Development' started by VinexAx789, Nov 22, 2015.

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

    VinexAx789

    PHP:
    22.11 17:47:50 [ServerINFO at me.vinex.snd$32.run(Main.java:7081) [RektSnD-2.0.jar:?]
    22.11 17:47:50 [ServerINFO at org.bukkit.craftbukkit.v1_8_R3.CraftServer.reload(CraftServer.java:741) [spigot45.jar:git-Spigot-5f38d38-12698ea]
    22.11 17:47:50 [ServerINFO at org.bukkit.craftbukkit.v1_8_R3.CraftServer.enablePlugins(CraftServer.java:317) [spigot45.jar:git-Spigot-5f38d38-12698ea]
    22.11 17:47:50 [ServerINFO at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugin(CraftServer.java:357) [spigot45.jar:git-Spigot-5f38d38-12698ea]
    22.11 17:47:50 [ServerINFO at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot45.jar:git-Spigot-5f38d38-12698ea]
    22.11 17:47:50 [ServerINFO at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:340) [spigot45.jar:git-Spigot-5f38d38-12698ea]
    22.11 17:47:50 [ServerINFO at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321) ~[spigot45.jar:git-Spigot-5f38d38-12698ea]
    22.11 17:47:50 [ServerINFO at 
    Line 7081 = Bukkit.getServer().reload();

    FULL METHOD:
    Code:
    @EventHandler
        public void quit(PlayerQuitEvent event) {
            event.setQuitMessage(null);
            if (Bukkit.getOnlinePlayers().size() == 1) {
                Bukkit.getScheduler().cancelAllTasks();
                getServer().getScheduler().scheduleSyncDelayedTask(this,
                        new Runnable() {
                            public void run() {
    
                                Bukkit.getServer().unloadWorld(redbomb.getWorld(),
                                        false);
                            }
                        }, 10L);
                try {
                    getServer().getScheduler().scheduleSyncDelayedTask(this,
                            new Runnable() {
                                public void run() {
                                    Bukkit.getServer().reload();
                                }
                            }, 20L);
                } catch (NullPointerException ignore) {
                }
            } else {
                if (!(ended)) {
                    Player p = event.getPlayer();
                    if (players.contains(p)) {
                        if (!(started)) {
                            players.remove(p);
                            if (redplayers.contains(p)) {
                                redplayers.remove(p);
                                addred.removePlayer(p);
                                selectred.setAmount(redplayers.size());
                                teaminventory.setItem(2, selectred);
                            }
                            if (blueplayers.contains(p)) {
                                blueplayers.remove(p);
                                addblue.removePlayer(p);
                                selectblue.setAmount(blueplayers.size());
                                teaminventory.setItem(6, selectblue);
                            }
                            Bukkit.broadcastMessage("§f" + p.getName()
                                    + " §7left the game " + players.size() + "/"
                                    + maxplayers);
                        } else {
                            players.remove(p);
                            updatescoreonQuit(p);
                            if (redplayers.contains(p)) {
                                redplayers.remove(p);
                                addred.removePlayer(p);
                                Bukkit.broadcastMessage("§4" + p.getName()
                                        + " §7left the game " + players.size()
                                        + "/" + maxplayers);
                            }
                            if (blueplayers.contains(p)) {
                                blueplayers.remove(p);
                                addblue.removePlayer(p);
                                Bukkit.broadcastMessage(ChatColor.BLUE
                                        + p.getName() + " §7left the game "
                                        + players.size() + "/" + maxplayers);
                            }
                        }
                    }
    
                }
            }
        }
     
  2. Offline

    Scimiguy

    If you're building that entire plugin in one class, you really need to learn about segmentation

    Also, we don't even know what the error is, or what line in your code it is
     
  3. Offline

    Zombie_Striker

    There is no reason to have a class with at most 1000 lines.

    Okay, so we know which line is at fault, but why? What does it say the cause of the error is?
     
  4. Offline

    mythbusterma

    @VinexAx789

    You haven't said what the error is, and it's pretty clear you've got more than a "bug" to fix.

    There's no reason that a class should be anywhere near that long, nor contain 32 anonymous inner classes. That's absolutely outrageous. Also, you should never catch a runtime exception, as runtime exceptions indicate failures in your programming, rather than other errors. Especially you should never catch null pointer, as that just means you're being lazy.
     
    teej107 and Zombie_Striker like this.
  5. Offline

    VinexAx789

Thread Status:
Not open for further replies.

Share This Page