This commit is contained in:
Lorenz Wrobel 2026-05-18 22:59:04 +02:00
parent 32856f8da7
commit 02bc8178d8
7 changed files with 11 additions and 14 deletions

View File

@ -26,7 +26,6 @@ import net.minecraft.server.level.ServerLevel;
import net.minecraft.stats.Stats; import net.minecraft.stats.Stats;
import net.minecraft.util.RandomSource; import net.minecraft.util.RandomSource;
import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionHand;
import net.minecraft.world.InteractionResult;
import net.minecraft.world.ItemInteractionResult; import net.minecraft.world.ItemInteractionResult;
import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.entity.item.ItemEntity;
import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.Player;
@ -37,10 +36,8 @@ import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import net.neoforged.neoforge.common.util.FakePlayer; import net.neoforged.neoforge.common.util.FakePlayer;
import org.jetbrains.annotations.Nullable;
import thedarkcolour.exdeorum.blockentity.logic.SieveLogic; import thedarkcolour.exdeorum.blockentity.logic.SieveLogic;
import thedarkcolour.exdeorum.config.EConfig; import thedarkcolour.exdeorum.config.EConfig;
import thedarkcolour.exdeorum.recipe.RecipeCaches;
import java.util.function.Function; import java.util.function.Function;

View File

@ -23,12 +23,10 @@ import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
import thedarkcolour.exdeorum.recipe.RecipeUtil;
import thedarkcolour.exdeorum.recipe.crucible.CrucibleRecipe; import thedarkcolour.exdeorum.recipe.crucible.CrucibleRecipe;
import thedarkcolour.exdeorum.registry.EBlockEntities; import thedarkcolour.exdeorum.registry.EBlockEntities;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import java.util.Objects;
public class LavaCrucibleBlockEntity extends AbstractCrucibleBlockEntity { public class LavaCrucibleBlockEntity extends AbstractCrucibleBlockEntity {
public LavaCrucibleBlockEntity(BlockPos pos, BlockState state) { public LavaCrucibleBlockEntity(BlockPos pos, BlockState state) {

View File

@ -29,7 +29,6 @@ import net.minecraft.util.RandomSource;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items; import net.minecraft.world.item.Items;
import net.minecraft.world.item.enchantment.Enchantments; import net.minecraft.world.item.enchantment.Enchantments;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.storage.loot.LootContext; import net.minecraft.world.level.storage.loot.LootContext;
import thedarkcolour.exdeorum.config.EConfig; import thedarkcolour.exdeorum.config.EConfig;

View File

@ -24,14 +24,17 @@ import net.minecraft.network.chat.Component;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.item.crafting.*; import net.minecraft.world.item.crafting.Recipe;
import net.minecraft.world.item.crafting.RecipeHolder;
import net.minecraft.world.item.crafting.RecipeInput;
import net.minecraft.world.item.crafting.RecipeManager;
import net.minecraft.world.item.crafting.RecipeType;
import net.minecraft.world.item.enchantment.ItemEnchantments; import net.minecraft.world.item.enchantment.ItemEnchantments;
import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.ItemLike;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.neoforged.fml.ModList; import net.neoforged.fml.ModList;
import thedarkcolour.exdeorum.material.DefaultMaterials; import thedarkcolour.exdeorum.material.DefaultMaterials;
import thedarkcolour.exdeorum.material.MaterialRegistry; import thedarkcolour.exdeorum.material.MaterialRegistry;
import thedarkcolour.exdeorum.recipe.RecipeUtil;
import thedarkcolour.exdeorum.registry.EItems; import thedarkcolour.exdeorum.registry.EItems;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -30,7 +30,6 @@ import net.minecraft.world.item.crafting.RecipeType;
import net.minecraft.world.level.storage.loot.providers.number.ConstantValue; import net.minecraft.world.level.storage.loot.providers.number.ConstantValue;
import net.minecraft.world.level.storage.loot.providers.number.NumberProvider; import net.minecraft.world.level.storage.loot.providers.number.NumberProvider;
import org.apache.commons.lang3.mutable.MutableInt; import org.apache.commons.lang3.mutable.MutableInt;
import thedarkcolour.exdeorum.client.ClientsideCode;
import thedarkcolour.exdeorum.recipe.RecipeUtil; import thedarkcolour.exdeorum.recipe.RecipeUtil;
import thedarkcolour.exdeorum.recipe.sieve.SieveRecipe; import thedarkcolour.exdeorum.recipe.sieve.SieveRecipe;
import thedarkcolour.exdeorum.registry.EItems; import thedarkcolour.exdeorum.registry.EItems;

View File

@ -3,6 +3,7 @@ package thedarkcolour.exdeorum.loot;
import com.mojang.serialization.MapCodec; import com.mojang.serialization.MapCodec;
import com.mojang.serialization.codecs.RecordCodecBuilder; import com.mojang.serialization.codecs.RecordCodecBuilder;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.level.storage.loot.LootContext;
import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition;
import net.neoforged.neoforge.common.loot.IGlobalLootModifier; import net.neoforged.neoforge.common.loot.IGlobalLootModifier;
import net.neoforged.neoforge.common.loot.LootModifier; import net.neoforged.neoforge.common.loot.LootModifier;
@ -24,7 +25,7 @@ public class CompressedHammerLootModifier extends HammerLootModifier {
} }
@Override @Override
protected @Nullable HammerRecipe getRecipe(Item itemForm) { protected @Nullable HammerRecipe getRecipe(Item itemForm, LootContext context) {
return RecipeUtil.getServerRecipeCaches().getCompressedHammerRecipe(itemForm); return RecipeUtil.getCaches(context.getLevel()).getCompressedHammerRecipe(itemForm);
} }
} }

View File

@ -69,7 +69,7 @@ public class HammerLootModifier extends LootModifier {
return generatedLoot; return generatedLoot;
} }
var recipe = getRecipe(itemForm); var recipe = getRecipe(itemForm, context);
if (recipe == null) { if (recipe == null) {
return generatedLoot; return generatedLoot;
} }
@ -91,8 +91,8 @@ public class HammerLootModifier extends LootModifier {
} }
@Nullable @Nullable
protected HammerRecipe getRecipe(Item itemForm) { protected HammerRecipe getRecipe(Item itemForm, LootContext context) {
return RecipeUtil.getServerRecipeCaches().getHammerRecipe(itemForm); return RecipeUtil.getCaches(context.getLevel()).getHammerRecipe(itemForm);
} }
@Override @Override