Skip to content

Commit

Permalink
Update Fabric Resource conditions for compat recipes
Browse files Browse the repository at this point in the history
Fixes #142
  • Loading branch information
Noaaan committed Jul 18, 2024
1 parent fcad410 commit bccd8d5
Show file tree
Hide file tree
Showing 16 changed files with 34 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@

import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
import net.fabricmc.fabric.api.resource.conditions.v1.ResourceConditions;
import net.fabricmc.fabric.api.tag.convention.v2.ConventionalItemTags;
import net.fabricmc.fabric.impl.resource.conditions.conditions.TagsPopulatedResourceCondition;
import net.minecraft.data.server.recipe.RecipeExporter;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.registry.RegistryKeys;
import net.minecraft.registry.RegistryWrapper;
import net.minecraft.registry.tag.TagKey;
import net.minecraft.util.Identifier;
Expand Down Expand Up @@ -391,7 +392,7 @@ public static AlloyForgeryRecipeBuilder createRawBlockRecipe(String criterionNam

/**
* Used to export recipes with an ordered list of tag priorities
* @see TagsPopulatedResourceCondition
* @see ResourceConditions#tagsPopulated(net.minecraft.registry.RegistryKey, TagKey[])
* @param builder the recipe builder you are wrapping
* @param name the name for the advancement, the recipe, and the recipe file name
* @param input the item tag for valid recipe inputs
Expand All @@ -401,7 +402,7 @@ public static AlloyForgeryRecipeBuilder createRawBlockRecipe(String criterionNam
public void exportWithTagConditions(AFRBuilderMethod builder, String name, TagKey<Item> input, TagKey<Item> output, Identifier... priorities) {
builder.build(name, output, input)
.addPriorityOutput(priorities)
.offerTo(this.withConditions(this.exporter, new TagsPopulatedResourceCondition(output, input)), "compat/forge_" + name);
.offerTo(this.withConditions(this.exporter, ResourceConditions.tagsPopulated(RegistryKeys.ITEM, output, input)), "compat/forge_" + name);
}

public interface AFRBuilderMethod {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:ingots/copper",
"c:ingots/zinc",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:ores/copper",
"c:ores/zinc",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:raw_materials/copper",
"c:raw_materials/zinc",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:ingots/tin",
"c:ingots/copper",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:tin_ores",
"c:ores/copper",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:raw_materials/tin",
"c:raw_materials/copper",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:ingots/gold",
"c:ingots/silver",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:ores/gold",
"c:ores/silver",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:raw_materials/gold",
"c:raw_materials/silver",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:ingots/iron",
"c:ingots/nickel",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:ores/iron",
"c:ores/nickel",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:raw_materials/iron",
"c:raw_materials/nickel",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:coal",
"c:ingots/iron",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:ores/coal",
"c:ores/iron",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"fabric:load_conditions": [
{
"condition": "fabric:item_tags_populated",
"condition": "fabric:tags_populated",
"registry": "minecraft:item",
"values": [
"c:coal",
"c:raw_materials/iron",
Expand Down

0 comments on commit bccd8d5

Please sign in to comment.