Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
public List<ItemStack> getStacksByName(Inventory inventory, String name) {
List<ItemStack> result = new ArrayList<>();
for(ItemStack stack : inventory) {
if(stack==null) continue;
if(name.equals(stack.getItemMeta().getDisplayName())) result.add(stack);
}
return result;
}
ПоправилPHP:public List<ItemStack> getStacksByName(Inventory inventory, String name) { List<ItemStack> result = new ArrayList<>(); for(ItemStack stack : inventory) { if(stack.getItemMeta().hasDisplayName() && stack.getItemMeta().getDisplayName().equals(name)) result.add(stack); } return result; // тут* }
У меня код другой немного
И зачем ты при смене руки добавляешь предмет в список?PHP:public List<ItemStack> getStacksByName(Inventory inventory, String name) { List<ItemStack> result = new ArrayList<>(); for(ItemStack stack : inventory) { if(name.equals(stack.getItemMeta().getDisplayName())) result.add(stack); } return result; }
ну я нашел его теперь хочу взаимодействать с нимУ меня код другой немного
И зачем ты при смене руки добавляешь предмет в список?
Тебе список возвращает всех предметов с таким именем. И я опять немного поправил код выше
удалить егоДля начала скажи - что ты хочешь сделать с найденным предметом?
удалить его
final ItemStack AIR = new ItemStack(Material.AIR);
for(int i = 0; i < inventory.getSize(); i++) {
ItemStack item = inventory.getItem(i);
if (item == null || !item.hasItemMeta()) continue;
ItemMeta meta = item.getItemMeta();
if (!meta.hasDisplayName() || !meta.getDisplayName().equals(name)) continue;
inventory.setItem(i, AIR);
}
В этом смысла меньше, ибо после получения еще раз проходить по массиву собранных ItemStack-ов для удаления.Или с моим методом
PHP:List<ItemStack> stacks = getStacksByName(inventory,"ИМЯ"); inventory.removeItem(list.toArray(new ItemStack[stacks.size()]));