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

p.getInventory().getHelmet().getType()

Тема в разделе "Разработка плагинов для новичков", создана пользователем dnebik, 30 дек 2015.

Статус темы:
Закрыта.
  1. Автор темы
    dnebik

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

    Баллы:
    66
    Имя в Minecraft:
    dnebik
    Не работает если пусто (Air) и выдает ошибку
    кусок от программы:
    Код:
            if (cmd.getName().equalsIgnoreCase("pic")) {
              FileConfiguration config = getConfig();
              Player p = (Player)sender;
              Location target = p.getTargetBlock((HashSet<Byte>) null, 200).getLocation();
              p.sendMessage(ChatColor.YELLOW + "X:" + ChatColor.WHITE + target.getBlockX() + ChatColor.YELLOW + " Y:" + ChatColor.WHITE + target.getBlockY() + ChatColor.YELLOW + " Z:" + ChatColor.WHITE + target.getBlockZ() + ChatColor.YELLOW + " Block:" + ChatColor.WHITE + target.getBlock().getType());
              if (((target.getBlock().getType() == Material.STONE_BUTTON) || (target.getBlock().getType() == Material.WOOD_BUTTON)) && (args.length == 1))
              {
                  p.sendMessage(ChatColor.GREEN + "Кнопка \"" + ChatColor.WHITE + args[0] + ChatColor.GREEN + "\" создана!!");
                  config.set("Buttons." + args[0] + ".coords.x", target.getBlockX());
                  config.set("Buttons." + args[0] + ".coords.y", target.getBlockY());
                  config.set("Buttons." + args[0] + ".coords.z", target.getBlockZ());
                  saveConfig();
                  p.sendMessage("HI: " + p.getInventory().getHelmet().getType());
                    config.set("Buttons." + args[0] + ".Armor.Helmet", p.getInventory().getHelmet().getType());
                 
                  saveConfig();
                  p.sendMessage("HI1: " + p.getInventory().getChestplate().getType());
                    config.set("Buttons." + args[0] + ".Armor.Chestplate", p.getInventory().getChestplate().getType());
                  p.sendMessage("HI2: " + p.getInventory().getLeggings().getType());
                  saveConfig();
                    config.set("Buttons." + args[0] + ".Armor.Leggings", p.getInventory().getLeggings().getType());
                  p.sendMessage("HI3: " + p.getInventory().getBoots().getType());
                  saveConfig();
                    config.set("Buttons." + args[0] + ".Armor.Boots", p.getInventory().getBoots().getType());
                  saveConfig();
              }
              if (((target.getBlock().getType() != Material.STONE_BUTTON) && (target.getBlock().getType() != Material.WOOD_BUTTON)) && (args.length == 1))
              {
                  p.sendMessage(ChatColor.RED + "В этом месте нет кнопки!!!");
              }
              return true;
            }
    даже если я что либо надену то в конфиг напишет что то типо:
    Код:
        Armor:
          Helmet: !!org.bukkit.Material 'CHAINMAIL_HELMET'
          Chestplate: !!org.bukkit.Material 'CHAINMAIL_CHESTPLATE'
    а вот в чат присылает как надо:
    [​IMG] [​IMG]
    что нужно исправить чтобы все работало как надо?
     
  2. Хостинг MineCraft
    <
  3. Автор темы
    dnebik

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

    Баллы:
    66
    Имя в Minecraft:
    dnebik
  4. serega6531

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

    Баллы:
    173
    Skype:
    shkurovs
    getType().toString()
     
  5. Автор темы
    dnebik

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

    Баллы:
    66
    Имя в Minecraft:
    dnebik
    не помогло
     
  6. serega6531

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

    Баллы:
    173
    Skype:
    shkurovs
    Что записывает?
     
  7. Автор темы
    dnebik

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

    Баллы:
    66
    Имя в Minecraft:
    dnebik
    точно тоже самое[DOUBLEPOST=1451488481,1451488277][/DOUBLEPOST]
    вру пишет нормально но ошибка осталась
     
  8. serega6531

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

    Баллы:
    173
    Skype:
    shkurovs
    Ну так смотрите логи.
     
  9. Автор темы
    dnebik

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

    Баллы:
    66
    Имя в Minecraft:
    dnebik
    я же говорю что когда ни чего не надето то есть Material.Air он крашает[DOUBLEPOST=1451489283,1451489162][/DOUBLEPOST]а как исправить я не пойму
     
  10. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Игнорировать событие, если вещь null
     
  11. Автор темы
    dnebik

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

    Баллы:
    66
    Имя в Minecraft:
    dnebik
    Код:
                  if (p.getInventory().getHelmet() != null)
    так работает, спасибо
    я пытался вытащить тип и сравнить его с Air
     
Статус темы:
Закрыта.

Поделиться этой страницей