Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Dismiss Notice

Помогите NPE на пустом месте.

Discussion in 'Разработка плагинов для новичков' started by CristalixCoder, Jul 4, 2017.

  1. Автор темы
    CristalixCoder

    CristalixCoder Ньюби

    Trophy Points:
    1
    Имя в Minecraft:
    TheZefirrkka
    Code:
    public static void updatePlayerTeam(Player p)
      {
         ScoreboardManager manager = Bukkit.getScoreboardManager();
         Scoreboard sb = manager.getNewScoreboard();
        sb1.add(sb);
        Team jedi = sb.registerNewTeam("Jedi");
        jedi.setPrefix(ChatColor.DARK_AQUA + "");
        Team sith = sb.registerNewTeam("Sith");
        sith.setPrefix(ChatColor.DARK_RED + "");
        Team ali = sb.registerNewTeam("Ali");
        ali.setPrefix(ChatColor.GRAY + "");
        p.setScoreboard(sb);
        for (Scoreboard board : sb1) {
          if (Levels.getFaction(p).equalsIgnoreCase("Jedi"))
            board.getTeam("Jedi").addEntry(p.getName()); //npe
          else if (Levels.getFaction(p).equalsIgnoreCase("Sith"))
            board.getTeam("Sith").addEntry(p.getName()); //npe
          else if (Levels.getFaction(p) == null) {
            board.getTeam("Ali").addEntry(p.getName()); //npe
          }
        }
        for (Player player : Bukkit.getOnlinePlayers()) {
          if (Levels.getFaction(player).equalsIgnoreCase("Jedi"))
            jedi.addEntry(player.getName());
          else if (Levels.getFaction(player).equalsIgnoreCase("Sith"))
            sith.addEntry(player.getName());
          else if (Levels.getFaction(player).equals("")) {
            ali.addEntry(player.getName());
          }
        }
      }
     
  2. Хостинг MineCraft
    <
  3. Автор темы
    CristalixCoder

    CristalixCoder Ньюби

    Trophy Points:
    1
    Имя в Minecraft:
    TheZefirrkka
    1.7.10 версия
     
  4. DonDays

    DonDays Активный участник Пользователь

    Trophy Points:
    96
    Имя в Minecraft:
    DonDays
    В каком именно месте?
     
  5. Автор темы
    CristalixCoder

    CristalixCoder Ньюби

    Trophy Points:
    1
    Имя в Minecraft:
    TheZefirrkka
    указал же...
     
  6. Enay

    Enay Новичок Пользователь

    Trophy Points:
    11
    Имя в Minecraft:
    EnayNooby
    на пустом. ты че, не читал ?
     
  7. Ission

    Ission Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    lokivava
    А в sb1 точно находятся только те Scoreboard, которые вы создали? Вы не могли случайно туда сунуть другие scoreboard'ы?
     
  8. Автор темы
    CristalixCoder

    CristalixCoder Ньюби

    Trophy Points:
    1
    Имя в Minecraft:
    TheZefirrkka
    -, только те, что создал.
     
  9. DonDays

    DonDays Активный участник Пользователь

    Trophy Points:
    96
    Имя в Minecraft:
    DonDays
    А, не заметил. Попробуй перед первым NPE:
    Code:
    Preconditions.checkNonNull(p.getName(), "Player name null");
    Preconditions.checkNonNull(board.getTeam("Jedi"), "Player name null");
    Куда на лечение?
     

Share This Page