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

Помогите Item stack

Discussion in 'Разработка плагинов для новичков' started by CraftCoder, Jan 27, 2014.

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

    CraftCoder Старожил Пользователь

    Trophy Points:
    108
    Имя в Minecraft:
    CraftCoderr
    Помогите мне, есть hashmap: public HashMap<String, ItemStack[]> invsave = new HashMap<String, ItemStack[]>(); Как узнать что invsave.get(nickname)(ItemStack) равен нулю.

    P.S. invsave.get(nickname) == null не работает.
     
  2. Хостинг MineCraft
    <
  3. EndEclipse

    EndEclipse Активный участник

    Trophy Points:
    63
    Имя в Minecraft:
    EndEclipse
    invsave.get(nickname).length == 0;
     
  4. ptnk

    ptnk Старожил Пользователь

    Trophy Points:
    173
    Данная конструкция работает, вторая конструкция - глупость.
     
    CraftCoder and Den_Abr like this.
  5. Автор темы
    CraftCoder

    CraftCoder Старожил Пользователь

    Trophy Points:
    108
    Имя в Minecraft:
    CraftCoderr
    Ну ладно, буду разбираться.[DOUBLEPOST=1390899893,1390847624][/DOUBLEPOST]Видимо нужно не == null, но как узнать что этот инвентарь пустой.
     
  6. BeYkeR

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

    Trophy Points:
    173
    PHP:
    //Если есть...
    if(invsave.contains(PlayerName)){
    //бла бла
    }else if(!invsave.contains(PlayerName)){
    //Если нет...
    }
     
  7. Автор темы
    CraftCoder

    CraftCoder Старожил Пользователь

    Trophy Points:
    108
    Имя в Minecraft:
    CraftCoderr
    чего-то не работает (я сделал containsValue), потому что если contains то выдает ошибку!
     
  8. VaNnOrus

    VaNnOrus Старожил Пользователь

    Trophy Points:
    123
    Как это не работает? Ошибки какие-то может?[DOUBLEPOST=1390908093,1390907592][/DOUBLEPOST]
    Вы проверяете существует ли ключ, а ТС нужно проверить пустой ли ItemStack с определенным ключем.
     
  9. Автор темы
    CraftCoder

    CraftCoder Старожил Пользователь

    Trophy Points:
    108
    Имя в Minecraft:
    CraftCoderr
    при пустом insave.get(nickname), invsave.get(nickname) == null почему-то false.
     
  10. VaNnOrus

    VaNnOrus Старожил Пользователь

    Trophy Points:
    123
    Выведите в чат/консоль содержимое, посмотрите что там.
     
  11. Ission

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

    Trophy Points:
    173
    Skype:
    lokivava
    Если инвентарь пустой, то он не равен null, если он не существует, то равен null. В данном случае либо invsave.get(nickname).length==0;, либо перебором всех элементов т.к. на сколько я помню, все элементы равны null или ItemStack.getType()==Material.AIR;(я не знаю, что в текущей версси ведра используют).
     
    EndEclipse likes this.

Share This Page