aboutsummaryrefslogtreecommitdiff
path: root/default-plugin/src/main/java/me/shedaniel/rei/plugin/common
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2023-03-04 22:00:07 +0800
committershedaniel <daniel@shedaniel.me>2023-03-04 22:00:07 +0800
commitd405e2c9489890f9f28113af3cf07259484b9827 (patch)
tree74b022a06e9d8b9a8e7a8b73d626fc57f7cb4c2b /default-plugin/src/main/java/me/shedaniel/rei/plugin/common
parent70924ee791821c254f8f4c5b4e79503b0bc10c94 (diff)
downloadRoughlyEnoughItems-d405e2c9489890f9f28113af3cf07259484b9827.tar.gz
RoughlyEnoughItems-d405e2c9489890f9f28113af3cf07259484b9827.tar.bz2
RoughlyEnoughItems-d405e2c9489890f9f28113af3cf07259484b9827.zip
Initial Port to 1.19.4-pre3
Diffstat (limited to 'default-plugin/src/main/java/me/shedaniel/rei/plugin/common')
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java2
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultSmithingDisplay.java47
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultStoneCuttingDisplay.java2
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultCookingDisplay.java2
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java4
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapedDisplay.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapelessDisplay.java3
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/tag/TagNodes.java6
8 files changed, 52 insertions, 17 deletions
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java
index fe8c605d3..3119c8f85 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultCampfireDisplay.java
@@ -40,7 +40,7 @@ public class DefaultCampfireDisplay extends BasicDisplay {
private double cookTime;
public DefaultCampfireDisplay(CampfireCookingRecipe recipe) {
- this(EntryIngredients.ofIngredients(recipe.getIngredients()), Collections.singletonList(EntryIngredients.of(recipe.getResultItem())),
+ this(EntryIngredients.ofIngredients(recipe.getIngredients()), Collections.singletonList(EntryIngredients.of(recipe.getResultItem(BasicDisplay.registryAccess()))),
Optional.ofNullable(recipe).map(CampfireCookingRecipe::getId), recipe.getCookingTime());
}
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultSmithingDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultSmithingDisplay.java
index db3e7c46b..f999a4a27 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultSmithingDisplay.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultSmithingDisplay.java
@@ -29,21 +29,54 @@ import me.shedaniel.rei.api.common.entry.EntryIngredient;
import me.shedaniel.rei.api.common.util.EntryIngredients;
import me.shedaniel.rei.plugin.common.BuiltinPlugin;
import net.minecraft.resources.ResourceLocation;
-import net.minecraft.world.item.crafting.UpgradeRecipe;
+import net.minecraft.world.item.crafting.LegacyUpgradeRecipe;
+import net.minecraft.world.item.crafting.SmithingRecipe;
+import net.minecraft.world.item.crafting.SmithingTransformRecipe;
+import net.minecraft.world.item.crafting.SmithingTrimRecipe;
+import org.jetbrains.annotations.ApiStatus;
-import java.util.Arrays;
-import java.util.Collections;
import java.util.List;
import java.util.Optional;
public class DefaultSmithingDisplay extends BasicDisplay {
- public DefaultSmithingDisplay(UpgradeRecipe recipe) {
+ public DefaultSmithingDisplay(LegacyUpgradeRecipe recipe) {
this(
- Arrays.asList(
+ recipe,
+ List.of(
EntryIngredients.ofIngredient(recipe.base),
EntryIngredients.ofIngredient(recipe.addition)
- ),
- Collections.singletonList(EntryIngredients.of(recipe.getResultItem())),
+ )
+ );
+ }
+
+ @ApiStatus.Experimental
+ public DefaultSmithingDisplay(SmithingTransformRecipe recipe) {
+ this(
+ recipe,
+ List.of(
+ EntryIngredients.ofIngredient(recipe.template),
+ EntryIngredients.ofIngredient(recipe.base),
+ EntryIngredients.ofIngredient(recipe.addition)
+ )
+ );
+ }
+
+ @ApiStatus.Experimental
+ public DefaultSmithingDisplay(SmithingTrimRecipe recipe) {
+ this(
+ recipe,
+ List.of(
+ EntryIngredients.ofIngredient(recipe.template),
+ EntryIngredients.ofIngredient(recipe.base),
+ EntryIngredients.ofIngredient(recipe.addition)
+ )
+ );
+ }
+
+ public DefaultSmithingDisplay(SmithingRecipe recipe, List<EntryIngredient> inputs) {
+ this(
+ inputs,
+ List.of(EntryIngredients.of(recipe.getResultItem(BasicDisplay.registryAccess()))),
Optional.ofNullable(recipe.getId())
);
}
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultStoneCuttingDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultStoneCuttingDisplay.java
index 64fe2b3e7..9359d6d0e 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultStoneCuttingDisplay.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/DefaultStoneCuttingDisplay.java
@@ -37,7 +37,7 @@ import java.util.Optional;
public class DefaultStoneCuttingDisplay extends BasicDisplay {
public DefaultStoneCuttingDisplay(StonecutterRecipe recipe) {
- this(EntryIngredients.ofIngredients(recipe.getIngredients()), Collections.singletonList(EntryIngredients.of(recipe.getResultItem())),
+ this(EntryIngredients.ofIngredients(recipe.getIngredients()), Collections.singletonList(EntryIngredients.of(recipe.getResultItem(BasicDisplay.registryAccess()))),
Optional.ofNullable(recipe.getId()));
}
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultCookingDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultCookingDisplay.java
index 7ce5a2f02..a69f49a61 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultCookingDisplay.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/cooking/DefaultCookingDisplay.java
@@ -43,7 +43,7 @@ public abstract class DefaultCookingDisplay extends BasicDisplay implements Simp
private double cookTime;
public DefaultCookingDisplay(AbstractCookingRecipe recipe) {
- this(EntryIngredients.ofIngredients(recipe.getIngredients()), Collections.singletonList(EntryIngredients.of(recipe.getResultItem())),
+ this(EntryIngredients.ofIngredients(recipe.getIngredients()), Collections.singletonList(EntryIngredients.of(recipe.getResultItem(BasicDisplay.registryAccess()))),
recipe, recipe.getExperience(), recipe.getCookingTime());
}
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java
index 4ac5263ea..03243114a 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultCraftingDisplay.java
@@ -101,13 +101,13 @@ public abstract class DefaultCraftingDisplay<C extends Recipe<?>> extends BasicD
if (size != null) {
return new DefaultCustomShapedDisplay(recipe, EntryIngredients.ofIngredients(recipe.getIngredients()),
- Collections.singletonList(EntryIngredients.of(recipe.getResultItem())),
+ Collections.singletonList(EntryIngredients.of(recipe.getResultItem(BasicDisplay.registryAccess()))),
size.getWidth(), size.getHeight());
}
}
return new DefaultCustomDisplay(recipe, EntryIngredients.ofIngredients(recipe.getIngredients()),
- Collections.singletonList(EntryIngredients.of(recipe.getResultItem())));
+ Collections.singletonList(EntryIngredients.of(recipe.getResultItem(BasicDisplay.registryAccess()))));
}
return null;
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapedDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapedDisplay.java
index d81500c29..fcfa5db47 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapedDisplay.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapedDisplay.java
@@ -23,6 +23,7 @@
package me.shedaniel.rei.plugin.common.displays.crafting;
+import me.shedaniel.rei.api.common.display.basic.BasicDisplay;
import me.shedaniel.rei.api.common.util.EntryIngredients;
import net.minecraft.world.item.crafting.ShapedRecipe;
@@ -33,7 +34,7 @@ public class DefaultShapedDisplay extends DefaultCraftingDisplay<ShapedRecipe> {
public DefaultShapedDisplay(ShapedRecipe recipe) {
super(
EntryIngredients.ofIngredients(recipe.getIngredients()),
- Collections.singletonList(EntryIngredients.of(recipe.getResultItem())),
+ Collections.singletonList(EntryIngredients.of(recipe.getResultItem(BasicDisplay.registryAccess()))),
Optional.of(recipe)
);
}
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapelessDisplay.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapelessDisplay.java
index a8550bce2..e03356b03 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapelessDisplay.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/DefaultShapelessDisplay.java
@@ -23,6 +23,7 @@
package me.shedaniel.rei.plugin.common.displays.crafting;
+import me.shedaniel.rei.api.common.display.basic.BasicDisplay;
import me.shedaniel.rei.api.common.util.EntryIngredients;
import net.minecraft.world.item.crafting.ShapelessRecipe;
@@ -33,7 +34,7 @@ public class DefaultShapelessDisplay extends DefaultCraftingDisplay<ShapelessRec
public DefaultShapelessDisplay(ShapelessRecipe recipe) {
super(
EntryIngredients.ofIngredients(recipe.getIngredients()),
- Collections.singletonList(EntryIngredients.of(recipe.getResultItem())),
+ Collections.singletonList(EntryIngredients.of(recipe.getResultItem(BasicDisplay.registryAccess()))),
Optional.of(recipe)
);
}
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/tag/TagNodes.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/tag/TagNodes.java
index f2a0747fd..9e4fafadd 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/tag/TagNodes.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/common/displays/tag/TagNodes.java
@@ -141,7 +141,7 @@ public class TagNodes {
if (Minecraft.getInstance().getSingleplayerServer() != null) {
callback.accept(DataResult.success(TAG_DATA_MAP.get(resourceKey)));
} else if (!NetworkManager.canServerReceive(REQUEST_TAGS_PACKET_C2S)) {
- callback.accept(DataResult.error("Cannot request tags from server"));
+ callback.accept(DataResult.error(() -> "Cannot request tags from server"));
} else if (requestedTags.containsKey(resourceKey)) {
requestedTags.get(resourceKey).accept(callback);
callback.accept(DataResult.success(TAG_DATA_MAP.getOrDefault(resourceKey, Collections.emptyMap())));
@@ -197,7 +197,7 @@ public class TagNodes {
public static <T> void create(TagKey<T> tagKey, Consumer<DataResult<TagNode<T>>> callback) {
Registry<T> registry = ((Registry<Registry<T>>) BuiltInRegistries.REGISTRY).get((ResourceKey<Registry<T>>) tagKey.registry());
requestTagData(tagKey.registry(), result -> {
- callback.accept(result.flatMap(dataMap -> dataMap != null ? resolveTag(tagKey, registry, dataMap).orElse(DataResult.error("No tag data")) : DataResult.error("No tag data")));
+ callback.accept(result.flatMap(dataMap -> dataMap != null ? resolveTag(tagKey, registry, dataMap).orElse(DataResult.error(() -> "No tag data")) : DataResult.error(() -> "No tag data")));
});
}
@@ -222,7 +222,7 @@ public class TagNodes {
Optional<DataResult<TagNode<T>>> resultOptional = resolveTag(childTagKey, registry, tagDataMap);
if (resultOptional.isPresent()) {
DataResult<TagNode<T>> result = resultOptional.get();
- if (result.error().isPresent()) return Optional.of(DataResult.error(result.error().get().message()));
+ if (result.error().isPresent()) return Optional.of(DataResult.error(() -> result.error().get().message()));
self.addChild(result.result().get());
}
}