Ingredient Bindings

TFC has several ingredient types that it uses in its recipes

Fluid Item

See the main page!

Method Signature

TFC.ingredient.fluid(delegate?: Ingredient, fluid: FluidStackIngredient)
  • Optional 1st argument: An item ingredient to which this ingredient applies to
  • 2nd argument: A fluid stack ingredient, the fluid(s) this ingredient matches

Creates an ingredient of type tfc:fluid_item with the fluid ingredient defined by the fluid argument and the item ingredient defined by the delegate argument

Examples

TFC.ingredient.fluid('#tfc:molds', TFC.fluidStackIngredient(['minecraft:water', '#minecraft:lava'], 50))
TFC.ingredient.fluid(TFC.fluidStackIngredient('tfc:metal/zinc', 40))

In json:

{
    "type": "tfc:fluid_item",
    "ingredient": {
        "tag": "tfc:molds"
    },
    "fluid_ingredient": {
        "ingredient": [   
            {
                "fluid": "minecraft:water"
            },
            {
                "tag": "minecraft:lava"
            }
        ],
        "amount": 50
    }
}
{
    "type": "tfc:fluid_item",
    "fluid_ingredient": {
        "ingredient": {
            "fluid": "tfc:metal/zinc"
        },
        "amount": 40
    }
}

Has Trait

See the main page!

Method Signature

TFC.ingredient.hasTrait(delegate?: Ingredient, trait: string)
  • Optional 1st argument: An item ingredient to which this ingredient applies to
  • 2nd argument: The name of the food trait which must be present

Creates an ingredient of type tfc:has_trait with the trait defined by the trait argument and the item ingredient defined by the delegate ingredient

Examples

TFC.ingredient.hasTrait('#tfc:fruits', 'tfc:brined')
TFC.ingredient.hasTrait('tfc:in_vinegar')

In json:

{
    "type": "tfc:has_trait",
    "ingredient": {
        "tag": "tfc:fruits"
    },
    "trait": "tfc:brined"
}
{
    "type": "tfc:has_trait",
    "trait": "tfc:in_vinegar"
}

Heatable

See the main page!

Method Signature

TFC.ingredient.heatable(delegate?: Ingredient, min: @Nullable number, max: @Nullable number)
  • Optional 1st argument: An item ingredient, limits the items to which this ingredient applies to
  • Nullable 2nd argument: A number, the minimum temperature of the ingredient, may be null to not specify a minimum temperature
  • Nullable 3rd argument: A number, the maximum temperature of the ingredient, may be null to not specify a maximum temperature

Creates an ingredient of type tfc:heatable with the minimum and maximum temperatures defined by the min and max arguments, and the ingredient defined by the delegate argument

Examples

TFC.ingredient.heatable('minecraft:iron_ingot', null, 673)
TFC.ingredient.heatable(750, 895)

In json:

{
    "type": "tfc:heatable",
    "ingredient": {
        "item": "minecraft:iron_ingot"
    },
    "max_temp": 673
}
{
    "type": "tfc:heatable",
    "min_temp": 750,
    "max_temp": 865
}

Lacks Trait

See the main page!

Method Signature

TFC.ingredient.lacksTrait(delegate?: Ingredient, trait: string)
  • Optional 1st argument: An item ingredient, limits the items to which this ingredient applies
  • 2nd argument: The name of the food trait which must not be present

Creates an ingredient of type tfc:lacks_trait with the trait defined by the trait argument and the ingredient defined by the delegate argument

Examples

TFC.ingredient.lacksTrait('tfc:food/green_apple', 'tfc:brined')
TFC.ingredient.lacksTrait('tfc:burnt')

In json:

{
    "type": "tfc:lacks_trait",
    "ingredient": {
        "item": "tfc:food/green_apple"
    },
    "trait": "tfc:brined"
}
{
    "type": "tfc:lacks_trait",
    "trait": "tfc:burnt"
}

Not

See the main page!

Method Signature

TFC.ingredient.not(delegate?: Ingredient)
  • Optional 1st argument: An item ingredient to which the ingredient is applied

Creates an ingredient of type tfc:not with the ingredient defined by the delegate argument

Examples

TFC.ingredient.not('#minecraft:flowers')
TFC.ingredient.not()

In json:

{
    "type": "tfc:not",
    "ingredient": {
        "tag": "minecraft:flowers"
    }
}
{
    "type": "tfc:not"
}

Not Rotten

See the main page!

Method Signature

TFC.ingredient.notRotten(delegate?: Ingredient)
  • Optional 1st argument: An item ingredient to which the ingredient is applied to

Creates an ingredient of type tfc:not_rotten with the ingredient defined by the delegate argument

Examples

TFC.ingredient.notRotten('minecraft:cooked_porkchop')
TFC.ingredient.notRotten()

In json:

{
    "type": "tfc:not_rotten",
    "ingredient": {
        "item": "minecraft:cooked_porkchop"
    }
}
{
    "type": "tfc:not_rotten"
}