Scoreboard prefixes not displaying.

Discussion in 'Plugin Development' started by ThePandaPlayer, Aug 26, 2017.

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

    ThePandaPlayer

    I am having an issue with the prefixes of a scoreboard team not displaying. This is in the 1.7.10 protocol. Here is the code:
    Code:
    package com.mcduels.prefix;
    
    import org.bukkit.Bukkit;
    import org.bukkit.ChatColor;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.player.PlayerJoinEvent;
    import org.bukkit.permissions.Permission;
    import org.bukkit.plugin.java.JavaPlugin;
    import org.bukkit.scoreboard.Scoreboard;
    import org.bukkit.scoreboard.Team;
    
    public class Main extends JavaPlugin implements Listener {
       
        public Permission command = new Permission("mcduels.prefix.command");
        public Permission owner = new Permission("mcduels.prefix.owner");
        public Permission admin = new Permission("mcduels.perefix.admin");
        public Permission dev = new Permission("mcduels.prefix.dev");
        public Permission srmod = new Permission("mcduels.prefix.srmod");
        public Permission mod = new Permission("mcduels.prefix.mod");
        public Permission yt = new Permission("mcduels.prefix.yt");
        public Permission premium = new Permission("mcduels.prefix.premium");
        public Permission deluxe = new Permission("mcduels.prefix.deluxe");
       
       
       
        private Scoreboard rank;
       
        private Team ownerrank;
        private Team premiumrank;
        private Team adminrank;
        private Team devrank;
        private Team srmodrank;
        private Team modrank;
        private Team deluxerank;
        private Team op;
        private Team ytrank;
       
       
       
       
       
        @Override
        public void onEnable() {
           
            getLogger().info("Creating scoreboard...");
            rank = Bukkit.getScoreboardManager().getNewScoreboard();
            getLogger().info("Registering Ranks...");
           
    
           
            ownerrank = rank.registerNewTeam("owner");
            premiumrank = rank.registerNewTeam("premium");
            adminrank = rank.registerNewTeam("admin");
            devrank = rank.registerNewTeam("dev");
            srmodrank = rank.registerNewTeam("srmod");
            modrank = rank.registerNewTeam("mod");
            deluxerank = rank.registerNewTeam("deluxe");
            op = rank.registerNewTeam("op");
            ytrank = rank.registerNewTeam("yt");
           
           
           
            getLogger().info("Registering events...");
            this.getServer().getPluginManager().registerEvents(this,this);
           
            getLogger().info("Setting Prefixes...");
           
            String ownerprefix = ChatColor.RED+"Owner"+ChatColor.WHITE;
           
            String opprefix= ChatColor.DARK_RED+"Op"+ChatColor.WHITE;
            String adminprefix =ChatColor.RED+"Admin"+ChatColor.WHITE;
            String devprefix=ChatColor.YELLOW+"Dev"+ChatColor.WHITE;
            String srmodprefix=ChatColor.DARK_PURPLE+"Sr.Mod"+ChatColor.WHITE;
            String modprefix=ChatColor.DARK_PURPLE+"Mod"+ChatColor.WHITE;
            String deluxeprefix=ChatColor.GOLD+"✪"+ChatColor.YELLOW;
            String ytprefix=ChatColor.RED+"You"+ChatColor.DARK_RED+"Tube";
            String premiumprefix=ChatColor.BLUE+"✯"+ChatColor.DARK_AQUA;   
            ownerrank.setPrefix(ownerprefix);
           
            op.setPrefix(opprefix);
           
           
           
            adminrank.setPrefix(adminprefix);
           
            devrank.setPrefix(devprefix);
           
            srmodrank.setPrefix(srmodprefix);
           
            modrank.setPrefix(modprefix);
           
            deluxerank.setPrefix(deluxeprefix);
           
            ytrank.setPrefix(ytprefix);
           
            premiumrank.setPrefix(premiumprefix);
           
           
            getLogger().info("Updating ranks...");
            this.updateRanks();
           
            getLogger().info("Successful initalization!");
           
        }
       
        public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
            if(cmd.getName().equalsIgnoreCase("rankreload")) {
                if(!sender.hasPermission("")) {
                    sender.sendMessage(ChatColor.WHITE+"You do not have permission to do this!");
                    return true;
               
                }
               
                else {
                    this.updateRanks();
                    sender.sendMessage(ChatColor.WHITE+"Ranks have been reloaded.");
                    return true;
                }
            }
           
            return false;
           
        }
       
       
        @SuppressWarnings("deprecation")
        private void updateRanks() {
            for(Player p : Bukkit.getServer().getOnlinePlayers()) {
                if(p.isOp()) {
                    op.addPlayer(p);
                    return;
                }
               
                else if(p.hasPermission(owner)) {
                   
                   
                    ownerrank.addPlayer(p);
                    return;
                }
                else if(p.hasPermission(admin)) {
                    adminrank.addPlayer(p);
                    return;
                }
                else if(p.hasPermission(dev)) {
                    devrank.addPlayer(p);
                }
                else if(p.hasPermission(srmod)) {
                    srmodrank.addPlayer(p);
                    return;
                }
                else if(p.hasPermission(mod)) {
                    modrank.addPlayer(p);
                    return;
                }
           
                else if(p.hasPermission(yt)) {
                    ytrank.addPlayer(p);
                    return;
                }
                else if(p.hasPermission(premium)) {
                    premiumrank.addPlayer(p);
                    return;
                }
                else if(p.hasPermission(deluxe)) {
                    deluxerank.addPlayer(p);
                    return;
                }
                else {
                    return;
                   
                   
                }
                p.setScoreboard(rank);
               
               
               
            }
           
        }
       
       
       
    
       
        @EventHandler
        public void onPlayerJoin(PlayerJoinEvent e)  {
            Player p = e.getPlayer();
            p.setScoreboard(rank);
            this.updateRanks();
           
        }
       
       
    
    }
    

    NOTE: The ranks are hard-coded for a reason.
     
Thread Status:
Not open for further replies.

Share This Page