IIngredient
Link to iingredient
The CraftTweaker Ingredient class which is used to power our recipes and ItemStack matching.
Diese Klasse importieren
Link to diese-klasse-importieren
It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.
ZenScript Copyimport crafttweaker.api.ingredient.IIngredient;
Implemented Interfaces
Link to implemented-interfaces
IIngredient implements the following interfaces. That means all methods defined in these interfaces are also available in IIngredient
Casters
Link to casters
Result type | Is Implicit |
---|---|
Result type IData | Is Implicit true |
Result type IIngredientWithAmount | Is Implicit true |
Result type Ingredient | Is Implicit true |
Result type MapData | Is Implicit true |
Methoden
Link to methoden
Name: addGlobalAttributeModifier
Adds an AttributeModifier to this IIngredient.
Attributes added with this method appear on all ItemStacks that match this IIngredient, regardless of how or when the ItemStack was made, if you want to have the attribute on a single specific ItemStack (such as a specific Diamond Sword made in a recipe), then you should use IItemStack#withAttributeModifier
Return Type: void
ZenScript Copy// IIngredient.addGlobalAttributeModifier(attribute as Attribute, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[]) as void
<tag:items:forge:ingots>.addGlobalAttributeModifier(<attribute:minecraft:generic.attack_damage>, "Extra Power", 10, AttributeOperation.ADDITION, [<equipmentslot:chest>]);
Parameter | Type | Beschreibung |
---|---|---|
Parameter attribute | Type Attribute | Beschreibung The Attribute of the modifier. |
Parameter name | Type string | Beschreibung The name of the modifier. |
Parameter value | Type double | Beschreibung The value of the modifier. |
Parameter operation | Type AttributeOperation | Beschreibung The operation of the modifier. |
Parameter slotTypes | Type EquipmentSlot[] | Beschreibung What slots the modifier is valid for. |
Name: addGlobalAttributeModifier
Adds an AttributeModifier to this IIngredient using a specific UUID.
The UUID can be used to override an existing attribute on an ItemStack with this new modifier. You can use /ct hand attributes
to get the UUID of the attributes on an ItemStack.
Attributes added with this method appear on all ItemStacks that match this IIngredient, regardless of how or when the ItemStack was made, if you want to have the attribute on a single specific ItemStack (such as a specific Diamond Sword made in a recipe), then you should use IItemStack#withAttributeModifier
Return Type: void
ZenScript Copy// IIngredient.addGlobalAttributeModifier(attribute as Attribute, uuid as string, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[]) as void
<tag:items:forge:ingots>.addGlobalAttributeModifier(<attribute:minecraft:generic.attack_damage>, "8c1b5535-9f79-448b-87ae-52d81480aaa3", "Extra Power", 10, AttributeOperation.ADDITION, [<equipmentslot:chest>]);
Parameter | Type | Beschreibung |
---|---|---|
Parameter attribute | Type Attribute | Beschreibung The Attribute of the modifier. |
Parameter uuid | Type string | Beschreibung The unique identifier of the modifier to replace. |
Parameter name | Type string | Beschreibung The name of the modifier. |
Parameter value | Type double | Beschreibung The value of the modifier. |
Parameter operation | Type AttributeOperation | Beschreibung The operation of the modifier. |
Parameter slotTypes | Type EquipmentSlot[] | Beschreibung What slots the modifier is valid for. |
Name: addShiftTooltip
Return Type: void
ZenScript CopyIIngredient.addShiftTooltip(content as Component, showMessage as Component) as void
Parameter | Type | Beschreibung | Optional | DefaultValue |
---|---|---|---|---|
Parameter inhalt | Type Component | Beschreibung No Description Provided | Optional false | DefaultValue |
Parameter showMessage | Type Component | Beschreibung No Description Provided | Optional true | DefaultValue |
Name: addTooltip
Return Type: void
ZenScript CopyIIngredient.addTooltip(content as Component) as void
Parameter | Type | Beschreibung |
---|---|---|
Parameter inhalt | Type Component | Beschreibung No Description Provided |
Name: anyDamage
Return Type: IngredientConditioned<IIngredient>
ZenScript Copy// IIngredient.anyDamage() as IngredientConditioned<IIngredient>
<tag:items:forge:ingots>.anyDamage();
Name: asIIngredientWithAmount
Used implicitly when a machine can accept more than one item but you only provide one.
Return Type: IIngredientWithAmount
ZenScript Copy// IIngredient.asIIngredientWithAmount() as IIngredientWithAmount
<tag:items:forge:ingots>.asIIngredientWithAmount();
Name: asVanillaIngredient
Create a Vanilla ingredient matching this one.
Return Type: Ingredient
ZenScript Copy// IIngredient.asVanillaIngredient() as Ingredient
<tag:items:forge:ingots>.asVanillaIngredient();
Name: clearTooltip
Return Type: void
ZenScript Copy// IIngredient.clearTooltip() as void
<tag:items:forge:ingots>.clearTooltip();
Name: contains
Does the ingredient contain the given ingredient?
Return Type: boolean
ZenScript Copy// IIngredient.contains(ingredient as IIngredient) as boolean
<tag:items:forge:ingots>.contains((<item:minecraft:iron_ingot> | <item:minecraft:gold_ingot>));
Parameter | Type | Beschreibung |
---|---|---|
Parameter ingredient | Type IIngredient | Beschreibung The ingredient to check |
Name: getRemainingItem
When this ingredient stack is crafted, what will remain in the grid? Does not check if the stack matches though! Used e.g. in Crafting Table recipes.
Return Type: IItemStack
ZenScript Copy// IIngredient.getRemainingItem(stack as IItemStack) as IItemStack
<tag:items:forge:ingots>.getRemainingItem(<item:minecraft:iron_ingot>);
Parameter | Type | Beschreibung |
---|---|---|
Parameter stack | Type IItemStack | Beschreibung The stack to provide for this ingredient. |
Name: matches
Does the given stack match the ingredient?
Return Type: boolean
ZenScript Copy// IIngredient.matches(stack as IItemStack) as boolean
<tag:items:forge:ingots>.matches(<item:minecraft:iron_ingot>);
Parameter | Type | Beschreibung |
---|---|---|
Parameter stack | Type IItemStack | Beschreibung The stack to check |
Name: matches
Does the given stack match the ingredient?
Return Type: boolean
ZenScript CopyIIngredient.matches(stack as IItemStack, ignoreDamage as boolean) as boolean
Parameter | Type | Beschreibung |
---|---|---|
Parameter stack | Type IItemStack | Beschreibung The stack to check |
Parameter ignoreSchaden | Type boolean | Beschreibung Should damage be checked? |
Name: modifyShiftTooltip
Return Type: void
ZenScript CopyIIngredient.modifyShiftTooltip(shiftedFunction as ITooltipFunction, unshiftedFunction as ITooltipFunction) as void
Parameter | Type | Beschreibung | Optional | DefaultValue |
---|---|---|---|---|
Parameter shiftedFunction | Type ITooltipFunction | Beschreibung No Description Provided | Optional false | DefaultValue |
Parameter unshiftedFunction | Type ITooltipFunction | Beschreibung No Description Provided | Optional true | DefaultValue |
Name: modifyTooltip
Return Type: void
ZenScript CopyIIngredient.modifyTooltip(function as ITooltipFunction) as void
Parameter | Type | Beschreibung |
---|---|---|
Parameter function | Type ITooltipFunction | Beschreibung No Description Provided |
Name: mul
Use this in contexts where machines accept more than one item to state that fact.
Return Type: IIngredientWithAmount
ZenScript CopyIIngredient.mul(amount as int) as IIngredientWithAmount
Parameter | Type | Beschreibung |
---|---|---|
Parameter amount | Type int | Beschreibung No Description Provided |
Name: only
Use this if you already have the condition from another ingredient
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredient.only(condition as IIngredientCondition<IIngredient>) as IngredientConditioned<IIngredient>
Parameter | Type | Beschreibung |
---|---|---|
Parameter condition | Type IIngredientCondition<IIngredient> | Beschreibung No Description Provided |
Name: onlyDamaged
Return Type: IngredientConditioned<IIngredient>
ZenScript Copy// IIngredient.onlyDamaged() as IngredientConditioned<IIngredient>
<tag:items:forge:ingots>.onlyDamaged();
Name: onlyDamagedAtLeast
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredient.onlyDamagedAtLeast(minDamage as int) as IngredientConditioned<IIngredient>
Parameter | Type | Beschreibung |
---|---|---|
Parameter minDamage | Type int | Beschreibung No Description Provided |
Name: onlyDamagedAtMost
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredient.onlyDamagedAtMost(maxDamage as int) as IngredientConditioned<IIngredient>
Parameter | Type | Beschreibung |
---|---|---|
Parameter maxDamage | Type int | Beschreibung No Description Provided |
Name: onlyIf
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredient.onlyIf(uid as string, function as Predicate<IItemStack>) as IngredientConditioned<IIngredient>
Parameter | Type | Beschreibung | Optional | DefaultValue |
---|---|---|---|---|
Parameter uid | Type string | Beschreibung No Description Provided | Optional false | DefaultValue |
Parameter function | Type Predicate<IItemStack> | Beschreibung No Description Provided | Optional true | DefaultValue |
Name: removeGlobalAttribute
Removes all AttributeModifiers that use the given Attribute from this IIngredient.
Attributes removed with this method are removed from ItemStacks that match this IIngredient, regardless of how or when the ItemStack was made, if you want to remove the attribute on a single specific ItemStack (such as a specific Diamond Sword made in a recipe), then you should use IItemStack#withoutAttribute.
This method can only remove default Attributes from an ItemStack, it is still possible that an ItemStack can override it.
Return Type: void
ZenScript Copy// IIngredient.removeGlobalAttribute(attribute as Attribute, slotTypes as EquipmentSlot[]) as void
<tag:items:forge:ingots>.removeGlobalAttribute(<attribute:minecraft:generic.attack_damage>, [<equipmentslot:chest>]);
Parameter | Type | Beschreibung |
---|---|---|
Parameter attribute | Type Attribute | Beschreibung The attribute to remove. |
Parameter slotTypes | Type EquipmentSlot[] | Beschreibung The slot types to remove it from. |
Name: removeGlobalAttributeModifier
Removes all AttributeModifiers who's ID is the same as the given uuid from this IIngredient.
Return Type: void
ZenScript Copy// IIngredient.removeGlobalAttributeModifier(uuid as string, slotTypes as EquipmentSlot[]) as void
<tag:items:forge:ingots>.removeGlobalAttributeModifier("8c1b5535-9f79-448b-87ae-52d81480aaa3", [<equipmentslot:chest>]);
Parameter | Type | Beschreibung |
---|---|---|
Parameter uuid | Type string | Beschreibung The unique id of the AttributeModifier to remove. |
Parameter slotTypes | Type EquipmentSlot[] | Beschreibung The slot types to remove it from. |
Name: removeTooltip
Return Type: void
ZenScript CopyIIngredient.removeTooltip(regex as string) as void
Parameter | Type | Beschreibung |
---|---|---|
Parameter regex | Type string | Beschreibung No Description Provided |
Name: reuse
Return Type: IIngredientTransformed<IIngredient>
ZenScript Copy// IIngredient.reuse() as IIngredientTransformed<IIngredient>
<tag:items:forge:ingots>.reuse();
Name: transform
Use this if you already have the transformer from another ingredient
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredient.transform(transformer as IIngredientTransformer<IIngredient>) as IIngredientTransformed<IIngredient>
Parameter | Type | Beschreibung |
---|---|---|
Parameter transformator | Type IIngredientTransformer<IIngredient> | Beschreibung No Description Provided |
Name: transformCustom
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredient.transformCustom(uid as string, function as Function<IItemStack,IItemStack>) as IIngredientTransformed<IIngredient>
Parameter | Type | Beschreibung | Optional | DefaultValue |
---|---|---|---|---|
Parameter uid | Type string | Beschreibung No Description Provided | Optional false | DefaultValue |
Parameter function | Type Function<IItemStack,IItemStack> | Beschreibung No Description Provided | Optional true | DefaultValue |
Name: transformDamage
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredient.transformDamage(amount as int) as IIngredientTransformed<IIngredient>
Parameter | Type | Beschreibung | Optional | DefaultValue |
---|---|---|---|---|
Parameter amount | Type int | Beschreibung No Description Provided | Optional true | DefaultValue 1 |
Name: transformReplace
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredient.transformReplace(replaceWith as IItemStack) as IIngredientTransformed<IIngredient>
Parameter | Type | Beschreibung |
---|---|---|
Parameter replaceWith | Type IItemStack | Beschreibung No Description Provided |
Operatoren
Link to operatoren
Name: CONTAINS
Does the ingredient contain the given ingredient?
ZenScript Copyingredient as IIngredient in myIIngredient
(<item:minecraft:iron_ingot> | <item:minecraft:gold_ingot>) in <tag:items:forge:ingots>
Name: MUL
Use this in contexts where machines accept more than one item to state that fact.
ZenScript CopymyIIngredient * amount as int
Name: OR
ZenScript CopymyIIngredient | other as IIngredient
Properties
Link to properties
Name | Type | Has Getter | Has Setter | Beschreibung |
---|---|---|---|---|
Name burnTime | Type void | Has Getter false | Has Setter true | Beschreibung Sets the burn time of this ingredient, for use in the furnace and other machines |
Name commandString | Type string | Has Getter true | Has Setter false | Beschreibung Returns the BEP to get this stack |
Name items | Type IItemStack[] | Has Getter true | Has Setter false | Beschreibung No Description Provided |