aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/compatibility
diff options
context:
space:
mode:
authorKevin <92656833+kevinthegreat1@users.noreply.github.com>2023-10-14 17:03:49 -0400
committerGitHub <noreply@github.com>2023-10-14 17:03:49 -0400
commita41b069db0216c571bce269a0ea9866c1d701b87 (patch)
tree390fa5d88f79b9f126c46ce5b803aa310f7be0f5 /src/main/java/de/hysky/skyblocker/compatibility
parentab3f55fc2e81f5594009ecea708a931468ec7ccf (diff)
parent4fbcf1b2a4790f3033e97c55cab344abdfaea8d2 (diff)
downloadSkyblocker-a41b069db0216c571bce269a0ea9866c1d701b87.tar.gz
Skyblocker-a41b069db0216c571bce269a0ea9866c1d701b87.tar.bz2
Skyblocker-a41b069db0216c571bce269a0ea9866c1d701b87.zip
Merge pull request #350 from kevinthegreat1/nbt-utils
Refactor NBT Parsing
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/compatibility')
-rw-r--r--src/main/java/de/hysky/skyblocker/compatibility/emi/SkyblockEmiRecipe.java4
-rw-r--r--src/main/java/de/hysky/skyblocker/compatibility/rei/SkyblockCraftingDisplayGenerator.java13
2 files changed, 12 insertions, 5 deletions
diff --git a/src/main/java/de/hysky/skyblocker/compatibility/emi/SkyblockEmiRecipe.java b/src/main/java/de/hysky/skyblocker/compatibility/emi/SkyblockEmiRecipe.java
index 5875327d..191da283 100644
--- a/src/main/java/de/hysky/skyblocker/compatibility/emi/SkyblockEmiRecipe.java
+++ b/src/main/java/de/hysky/skyblocker/compatibility/emi/SkyblockEmiRecipe.java
@@ -1,7 +1,7 @@
package de.hysky.skyblocker.compatibility.emi;
-import de.hysky.skyblocker.skyblock.itemlist.ItemRegistry;
import de.hysky.skyblocker.skyblock.itemlist.SkyblockCraftingRecipe;
+import de.hysky.skyblocker.utils.ItemUtils;
import dev.emi.emi.api.recipe.EmiCraftingRecipe;
import dev.emi.emi.api.recipe.EmiRecipeCategory;
import dev.emi.emi.api.stack.Comparison;
@@ -16,7 +16,7 @@ public class SkyblockEmiRecipe extends EmiCraftingRecipe {
private final String craftText;
public SkyblockEmiRecipe(SkyblockCraftingRecipe recipe) {
- super(recipe.getGrid().stream().map(EmiStack::of).map(EmiIngredient.class::cast).toList(), EmiStack.of(recipe.getResult()).comparison(Comparison.compareNbt()), Identifier.of("skyblock", ItemRegistry.getInternalName(recipe.getResult()).toLowerCase().replace(';', '_')));
+ super(recipe.getGrid().stream().map(EmiStack::of).map(EmiIngredient.class::cast).toList(), EmiStack.of(recipe.getResult()).comparison(Comparison.compareNbt()), Identifier.of("skyblock", ItemUtils.getItemId(recipe.getResult()).toLowerCase().replace(';', '_')));
this.craftText = recipe.getCraftText();
}
diff --git a/src/main/java/de/hysky/skyblocker/compatibility/rei/SkyblockCraftingDisplayGenerator.java b/src/main/java/de/hysky/skyblocker/compatibility/rei/SkyblockCraftingDisplayGenerator.java
index 8db617dc..60e39b79 100644
--- a/src/main/java/de/hysky/skyblocker/compatibility/rei/SkyblockCraftingDisplayGenerator.java
+++ b/src/main/java/de/hysky/skyblocker/compatibility/rei/SkyblockCraftingDisplayGenerator.java
@@ -2,6 +2,7 @@ package de.hysky.skyblocker.compatibility.rei;
import de.hysky.skyblocker.skyblock.itemlist.ItemRegistry;
import de.hysky.skyblocker.skyblock.itemlist.SkyblockCraftingRecipe;
+import de.hysky.skyblocker.utils.ItemUtils;
import me.shedaniel.rei.api.client.registry.display.DynamicDisplayGenerator;
import me.shedaniel.rei.api.common.entry.EntryIngredient;
import me.shedaniel.rei.api.common.entry.EntryStack;
@@ -19,7 +20,11 @@ public class SkyblockCraftingDisplayGenerator implements DynamicDisplayGenerator
if (!(entry.getValue() instanceof ItemStack)) return Optional.empty();
EntryStack<ItemStack> inputItem = EntryStacks.of((ItemStack) entry.getValue());
List<SkyblockCraftingRecipe> filteredRecipes = ItemRegistry.getRecipesStream()
- .filter(recipe -> ItemRegistry.getInternalName(recipe.getResult()).equals(ItemRegistry.getInternalName(inputItem.getValue())))
+ .filter(recipe -> {
+ ItemStack itemStack = inputItem.getValue();
+ ItemStack itemStack1 = recipe.getResult();
+ return ItemUtils.getItemId(itemStack1).equals(ItemUtils.getItemId(itemStack));
+ })
.toList();
return Optional.of(generateDisplays(filteredRecipes));
@@ -32,8 +37,10 @@ public class SkyblockCraftingDisplayGenerator implements DynamicDisplayGenerator
List<SkyblockCraftingRecipe> filteredRecipes = ItemRegistry.getRecipesStream()
.filter(recipe -> {
for (ItemStack item : recipe.getGrid()) {
- if(!ItemRegistry.getInternalName(item).isEmpty() && ItemRegistry.getInternalName(item).equals(ItemRegistry.getInternalName(inputItem.getValue())))
- return true;
+ if(!ItemUtils.getItemId(item).isEmpty()) {
+ ItemStack itemStack = inputItem.getValue();
+ if (ItemUtils.getItemId(item).equals(ItemUtils.getItemId(itemStack))) return true;
+ }
}
return false;
})