Skip to content

Commit

Permalink
Changed IRecipeSerializer registering to DerferredRegister
Browse files Browse the repository at this point in the history
  • Loading branch information
GirafiStudios committed Mar 8, 2021
1 parent da78aba commit 41aaea3
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 12 deletions.
2 changes: 2 additions & 0 deletions src/main/java/com/teammetallurgy/aquaculture/Aquaculture.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import com.teammetallurgy.aquaculture.init.AquaEntities;
import com.teammetallurgy.aquaculture.init.AquaItems;
import com.teammetallurgy.aquaculture.init.FishRegistry;
import com.teammetallurgy.aquaculture.item.crafting.FishFilletRecipe;
import com.teammetallurgy.aquaculture.loot.BiomeTagCheck;
import com.teammetallurgy.aquaculture.loot.FishReadFromJson;
import com.teammetallurgy.aquaculture.loot.FishWeightHandler;
Expand Down Expand Up @@ -52,6 +53,7 @@ public Aquaculture() {
modBus.addListener(this::setupClient);
ModLoadingContext.get().registerConfig(ModConfig.Type.COMMON, AquaConfig.spec);
AquacultureAPI.Tags.init();
FishFilletRecipe.IRECIPE_SERIALIZERS_DEFERRED.register(modBus);
}

private void setupCommon(FMLCommonSetupEvent event) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,17 @@
import net.minecraft.util.NonNullList;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.registries.ObjectHolder;
import net.minecraftforge.fml.RegistryObject;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraftforge.registries.ForgeRegistries;

import javax.annotation.Nonnull;
import java.util.List;
import java.util.Random;

@Mod.EventBusSubscriber(modid = Aquaculture.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD)
@ObjectHolder(value = Aquaculture.MOD_ID)
public class FishFilletRecipe extends SpecialRecipe {
private static final SpecialRecipeSerializer<FishFilletRecipe> FISH_FILLET_SERIALIZER = new SpecialRecipeSerializer<>(FishFilletRecipe::new);
public static final DeferredRegister<IRecipeSerializer<?>> IRECIPE_SERIALIZERS_DEFERRED = DeferredRegister.create(ForgeRegistries.RECIPE_SERIALIZERS, Aquaculture.MOD_ID);
private static final RegistryObject<IRecipeSerializer<?>> FISH_FILLET_SERIALIZER = registerRecipeSerializer("crafting_special_fish_fillet", new SpecialRecipeSerializer<>(FishFilletRecipe::new));

private FishFilletRecipe(ResourceLocation location) {
super(location);
Expand Down Expand Up @@ -127,17 +125,15 @@ public static boolean isKnifeNeptunium(@Nonnull Item knife) {
@Override
@Nonnull
public IRecipeSerializer<?> getSerializer() {
return FISH_FILLET_SERIALIZER;
return FISH_FILLET_SERIALIZER.get();
}

@Override
public boolean canFit(int width, int height) {
return width * height >= 2;
}

@SubscribeEvent
public static void registerRecipeSerializer(RegistryEvent.Register<IRecipeSerializer<?>> event) {
FISH_FILLET_SERIALIZER.setRegistryName(new ResourceLocation(Aquaculture.MOD_ID, "crafting_special_fish_fillet"));
event.getRegistry().register(FISH_FILLET_SERIALIZER);
public static RegistryObject<IRecipeSerializer<?>> registerRecipeSerializer(String name, IRecipeSerializer<?> serializer) {
return IRECIPE_SERIALIZERS_DEFERRED.register(name, () -> serializer);
}
}

0 comments on commit 41aaea3

Please sign in to comment.