aboutsummaryrefslogtreecommitdiff
path: root/neoforge/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'neoforge/src/main/java')
-rw-r--r--neoforge/src/main/java/me/shedaniel/rei/forge/RoughlyEnoughItemsForge.java3
-rw-r--r--neoforge/src/main/java/me/shedaniel/rei/impl/client/forge/CreativeModeTabCollectorImpl.java9
-rw-r--r--neoforge/src/main/java/me/shedaniel/rei/plugin/client/forge/DefaultClientPluginImpl.java33
-rw-r--r--neoforge/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/forge/DefaultCraftingDisplayImpl.java2
4 files changed, 27 insertions, 20 deletions
diff --git a/neoforge/src/main/java/me/shedaniel/rei/forge/RoughlyEnoughItemsForge.java b/neoforge/src/main/java/me/shedaniel/rei/forge/RoughlyEnoughItemsForge.java
index ae7c88c96..409fc0a35 100644
--- a/neoforge/src/main/java/me/shedaniel/rei/forge/RoughlyEnoughItemsForge.java
+++ b/neoforge/src/main/java/me/shedaniel/rei/forge/RoughlyEnoughItemsForge.java
@@ -26,8 +26,6 @@ package me.shedaniel.rei.forge;
import me.shedaniel.rei.impl.init.RoughlyEnoughItemsInitializer;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.fml.DistExecutor;
-import net.neoforged.fml.IExtensionPoint;
-import net.neoforged.fml.ModLoadingContext;
import net.neoforged.fml.common.Mod;
import net.neoforged.neoforge.data.loading.DatagenModLoader;
import org.jetbrains.annotations.ApiStatus;
@@ -36,7 +34,6 @@ import org.jetbrains.annotations.ApiStatus;
@ApiStatus.Internal
public class RoughlyEnoughItemsForge {
public RoughlyEnoughItemsForge() {
- ModLoadingContext.get().registerExtensionPoint(IExtensionPoint.DisplayTest.class, () -> new IExtensionPoint.DisplayTest(() -> "", (a, b) -> true));
if (!DatagenModLoader.isRunningDataGen()) {
RoughlyEnoughItemsInitializer.onInitialize();
DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> RoughlyEnoughItemsInitializer::onInitializeClient);
diff --git a/neoforge/src/main/java/me/shedaniel/rei/impl/client/forge/CreativeModeTabCollectorImpl.java b/neoforge/src/main/java/me/shedaniel/rei/impl/client/forge/CreativeModeTabCollectorImpl.java
index 752631dcb..b6033245b 100644
--- a/neoforge/src/main/java/me/shedaniel/rei/impl/client/forge/CreativeModeTabCollectorImpl.java
+++ b/neoforge/src/main/java/me/shedaniel/rei/impl/client/forge/CreativeModeTabCollectorImpl.java
@@ -23,6 +23,8 @@
package me.shedaniel.rei.impl.client.forge;
+import com.google.common.base.MoreObjects;
+import me.shedaniel.rei.api.common.display.basic.BasicDisplay;
import me.shedaniel.rei.impl.common.InternalLogger;
import net.minecraft.core.RegistryAccess;
import net.minecraft.core.registries.BuiltInRegistries;
@@ -32,17 +34,18 @@ import net.minecraft.world.flag.FeatureFlags;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.CreativeModeTabs;
import net.minecraft.world.item.ItemStack;
-import net.neoforged.neoforge.client.ClientHooks;
+import net.neoforged.neoforge.event.EventHooks;
import java.util.Collection;
import java.util.LinkedHashMap;
import java.util.Map;
+import java.util.Objects;
public class CreativeModeTabCollectorImpl {
public static Map<CreativeModeTab, Collection<ItemStack>> collectTabs() {
Map<CreativeModeTab, Collection<ItemStack>> map = new LinkedHashMap<>();
FeatureFlagSet featureFlags = FeatureFlags.REGISTRY.allFlags();
- CreativeModeTab.ItemDisplayParameters parameters = new CreativeModeTab.ItemDisplayParameters(featureFlags, true, RegistryAccess.fromRegistryOfRegistries(BuiltInRegistries.REGISTRY));
+ CreativeModeTab.ItemDisplayParameters parameters = new CreativeModeTab.ItemDisplayParameters(featureFlags, true, Objects.requireNonNullElseGet(BasicDisplay.registryAccess(), () -> RegistryAccess.fromRegistryOfRegistries(BuiltInRegistries.REGISTRY)));
for (CreativeModeTab tab : CreativeModeTabs.allTabs()) {
if (tab.getType() != CreativeModeTab.Type.HOTBAR && tab.getType() != CreativeModeTab.Type.INVENTORY) {
@@ -51,7 +54,7 @@ public class CreativeModeTabCollectorImpl {
ResourceKey<CreativeModeTab> resourceKey = BuiltInRegistries.CREATIVE_MODE_TAB
.getResourceKey(tab)
.orElseThrow(() -> new IllegalStateException("Unregistered creative tab: " + tab));
- ClientHooks.onCreativeModeTabBuildContents(tab, resourceKey, tab.displayItemsGenerator, parameters, (stack, visibility) -> {
+ EventHooks.onCreativeModeTabBuildContents(tab, resourceKey, tab.displayItemsGenerator, parameters, (stack, visibility) -> {
if (visibility == CreativeModeTab.TabVisibility.SEARCH_TAB_ONLY) return;
builder.accept(stack, visibility);
});
diff --git a/neoforge/src/main/java/me/shedaniel/rei/plugin/client/forge/DefaultClientPluginImpl.java b/neoforge/src/main/java/me/shedaniel/rei/plugin/client/forge/DefaultClientPluginImpl.java
index fe3a2aa3d..e379ff5a8 100644
--- a/neoforge/src/main/java/me/shedaniel/rei/plugin/client/forge/DefaultClientPluginImpl.java
+++ b/neoforge/src/main/java/me/shedaniel/rei/plugin/client/forge/DefaultClientPluginImpl.java
@@ -23,15 +23,17 @@
package me.shedaniel.rei.plugin.client.forge;
-import com.google.common.collect.Sets;
+import com.google.gson.internal.LinkedTreeMap;
import me.shedaniel.rei.api.client.registry.display.DisplayRegistry;
import me.shedaniel.rei.plugin.client.BuiltinClientPlugin;
import me.shedaniel.rei.plugin.client.DefaultClientPlugin;
+import net.minecraft.core.Holder;
+import net.minecraft.core.component.DataComponents;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.alchemy.Potion;
import net.minecraft.world.item.alchemy.PotionBrewing;
-import net.minecraft.world.item.alchemy.PotionUtils;
+import net.minecraft.world.item.alchemy.PotionContents;
import net.minecraft.world.item.crafting.Ingredient;
import net.neoforged.neoforge.common.brewing.BrewingRecipe;
import net.neoforged.neoforge.common.brewing.BrewingRecipeRegistry;
@@ -39,6 +41,8 @@ import net.neoforged.neoforge.common.brewing.IBrewingRecipe;
import net.neoforged.neoforge.common.brewing.VanillaBrewingRecipe;
import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
import java.util.Set;
public class DefaultClientPluginImpl extends DefaultClientPlugin {
@@ -55,31 +59,34 @@ public class DefaultClientPluginImpl extends DefaultClientPlugin {
}
private static void registerVanillaPotions(DisplayRegistry registry, BuiltinClientPlugin clientPlugin) {
- Set<Potion> potions = Sets.newLinkedHashSet();
+ Set<Holder<Potion>> potions = Collections.newSetFromMap(new LinkedTreeMap<>(Comparator.comparing(Holder::getRegisteredName), false));
for (Ingredient container : PotionBrewing.ALLOWED_CONTAINERS) {
for (PotionBrewing.Mix<Potion> mix : PotionBrewing.POTION_MIXES) {
- Potion from = mix.from;
+ Holder<Potion> from = mix.from();
Ingredient ingredient = mix.ingredient;
- Potion to = mix.to;
+ Holder<Potion> to = mix.to();
Ingredient base = Ingredient.of(Arrays.stream(container.getItems())
.map(ItemStack::copy)
- .map(stack -> PotionUtils.setPotion(stack, from)));
+ .peek(stack -> stack.set(DataComponents.POTION_CONTENTS, new PotionContents(from))));
ItemStack output = Arrays.stream(container.getItems())
.map(ItemStack::copy)
- .map(stack -> PotionUtils.setPotion(stack, to))
+ .peek(stack -> stack.set(DataComponents.POTION_CONTENTS, new PotionContents(to)))
.findFirst().orElse(ItemStack.EMPTY);
clientPlugin.registerBrewingRecipe(base, ingredient, output);
potions.add(from);
potions.add(to);
}
}
- for (Potion potion : potions) {
+ for (Holder<Potion> potion : potions) {
for (PotionBrewing.Mix<Item> mix : PotionBrewing.CONTAINER_MIXES) {
- Item from = mix.from;
- Ingredient ingredient = mix.ingredient;
- Item to = mix.to;
- Ingredient base = Ingredient.of(PotionUtils.setPotion(new ItemStack(from), potion));
- ItemStack output = PotionUtils.setPotion(new ItemStack(to), potion);
+ Holder<Item> from = mix.from();
+ Ingredient ingredient = mix.ingredient();
+ Holder<Item> to = mix.to();
+ ItemStack baseStack = new ItemStack(from);
+ baseStack.set(DataComponents.POTION_CONTENTS, new PotionContents(potion));
+ Ingredient base = Ingredient.of(baseStack);
+ ItemStack output = new ItemStack(to);
+ output.set(DataComponents.POTION_CONTENTS, new PotionContents(potion));
clientPlugin.registerBrewingRecipe(base, ingredient, output);
}
}
diff --git a/neoforge/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/forge/DefaultCraftingDisplayImpl.java b/neoforge/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/forge/DefaultCraftingDisplayImpl.java
index 24605d30f..1c3f28a37 100644
--- a/neoforge/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/forge/DefaultCraftingDisplayImpl.java
+++ b/neoforge/src/main/java/me/shedaniel/rei/plugin/common/displays/crafting/forge/DefaultCraftingDisplayImpl.java
@@ -31,7 +31,7 @@ public class DefaultCraftingDisplayImpl {
public static void registerPlatformSizeProvider() {
DefaultCraftingDisplay.registerSizeProvider(recipe -> {
if (recipe instanceof IShapedRecipe<?>) {
- return new CraftingRecipeSizeProvider.Size(((IShapedRecipe<?>) recipe).getRecipeWidth(), ((IShapedRecipe<?>) recipe).getRecipeHeight());
+ return new CraftingRecipeSizeProvider.Size(((IShapedRecipe<?>) recipe).getWidth(), ((IShapedRecipe<?>) recipe).getHeight());
}
return null;