Помогите Как проверить предмет с ItemMeta в инвентаре игрока?

  • Автор темы Автор темы Kloper
  • Дата начала Дата начала

Kloper

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
f3azzy
Привет, хочу сделать прокачку предметов по типу бартера, типо нужно отдать другие предметы, чтобы получить прокачанный предмет. Столкнулся с такой проблемой что не знаю как проверить предмет в инвентаре игрока.
 
Привет, хочу сделать прокачку предметов по типу бартера, типо нужно отдать другие предметы, чтобы получить прокачанный предмет. Столкнулся с такой проблемой что не знаю как проверить предмет в инвентаре игрока.
Получи инвентарь игрока, получи коллекцию этих предметов, делай итерацию и ищи там нужный предмет с нужной метой, потом забирай его.
 
public static void getpredmet(Player p) {
ItemStack[] arr = p.getInventory().getContents();
ArrayList<ItemStack> im = new ArrayList<ItemStack>();
for(int x = 0; x < arr.length;x++) {
im.add(arr[x]);
}
for (int i = 0; i < im.size(); i++) {
if(im.get(i) != null) {
Bukkit.broadcastMessage("§3#" + String.valueOf(im.get(i).getType()));
}
}
}
upload_2019-8-26_2-43-26.png
upload_2019-8-26_2-44-12.png
 

Вложения

  • upload_2019-8-26_2-44-5.png
    upload_2019-8-26_2-44-5.png
    4,6 КБ · Просмотры: 4
public static void getpredmet(Player p) {
ItemStack[] arr = p.getInventory().getContents();
ArrayList<ItemStack> im = new ArrayList<ItemStack>();
for(int x = 0; x < arr.length;x++) {
im.add(arr[x]);
}
for (int i = 0; i < im.size(); i++) {
if(im.get(i) != null) {
Bukkit.broadcastMessage("§3#" + String.valueOf(im.get(i).getType()));
}
}
}
Посмотреть вложение 54735
Посмотреть вложение 54737
А зачем создавать коллекцию листа да и еще добавлять в него объекты массива, если можно тупо сделать forEach по массиву?
 
Назад
Верх