From 071129fe168e888792085fef9667a94596804fb8 Mon Sep 17 00:00:00 2001 From: HarvelsX <90945793+HarvelsX@users.noreply.github.com> Date: Thu, 11 May 2023 12:31:28 +0300 Subject: [PATCH] Fix IndexOutOfBoundsException: use Iterables utils for get or default; --- .../villagertradelimiter/listeners/VillagerListener.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/com/pretzel/dev/villagertradelimiter/listeners/VillagerListener.java b/src/com/pretzel/dev/villagertradelimiter/listeners/VillagerListener.java index 34d27cf..c511106 100644 --- a/src/com/pretzel/dev/villagertradelimiter/listeners/VillagerListener.java +++ b/src/com/pretzel/dev/villagertradelimiter/listeners/VillagerListener.java @@ -1,9 +1,11 @@ package com.pretzel.dev.villagertradelimiter.listeners; +import com.google.common.collect.Iterables; import com.pretzel.dev.villagertradelimiter.VillagerTradeLimiter; import com.pretzel.dev.villagertradelimiter.data.Cooldown; import com.pretzel.dev.villagertradelimiter.data.PlayerData; import com.pretzel.dev.villagertradelimiter.settings.Settings; +import org.bukkit.Material; import org.bukkit.entity.Villager; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; @@ -81,8 +83,8 @@ public class VillagerListener implements Listener { //Get the items involved in the restock final MerchantRecipe recipe = event.getRecipe(); final ItemStack result = recipe.getResult(); - ItemStack ingredient1 = recipe.getIngredients().get(0); - ItemStack ingredient2 = recipe.getIngredients().get(1); + ItemStack ingredient1 = Iterables.get(recipe.getIngredients(), 0, new ItemStack(Material.AIR)); + ItemStack ingredient2 = Iterables.get(recipe.getIngredients(), 1, new ItemStack(Material.AIR)); final String type = settings.getType(result, ingredient1, ingredient2); //Get the villager's data container