IIngredientTransformed<T : IIngredient>
Link to iingredienttransformedt--iingredient
Importing the class
Link to importing-the-class
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.type.IIngredientTransformed;
Implemented Interfaces
Link to implemented-interfaces
IIngredientTransformed implements the following interfaces. That means all methods defined in these interfaces are also available in IIngredientTransformed
Casters
Link to casters
Result Type | Is Implicit |
---|---|
Result Type IData | Is Implicit true |
Result Type IIngredientWithAmount | Is Implicit true |
Result Type MapData | Is Implicit true |
Methods
Link to methods
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
ZenScript Copy// IIngredientTransformed.addGlobalAttributeModifier(attribute as Attribute, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
myIIngredientTransformed.addGlobalAttributeModifier(<attribute:minecraft:generic.attack_damage>, "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>]);
Parameter | Type | Description |
---|---|---|
Parameter attribute | Type Attribute | Description The Attribute of the modifier. |
Parameter name | Type string | Description The name of the modifier. |
Parameter value | Type double | Description The value of the modifier. |
Parameter operation | Type AttributeOperation | Description The operation of the modifier. |
Parameter slotTypes | Type EquipmentSlot[] | Description 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
ZenScript Copy// IIngredientTransformed.addGlobalAttributeModifier(attribute as Attribute, uuid as invalid, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
myIIngredientTransformed.addGlobalAttributeModifier(<attribute:minecraft:generic.attack_damage>, IItemStack.BASE_ATTACK_DAMAGE_UUID, "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>]);
Parameter | Type | Description |
---|---|---|
Parameter attribute | Type Attribute | Description The Attribute of the modifier. |
Parameter uuid | Type invalid | Description The unique identifier of the modifier to replace. |
Parameter name | Type string | Description The name of the modifier. |
Parameter value | Type double | Description The value of the modifier. |
Parameter operation | Type AttributeOperation | Description The operation of the modifier. |
Parameter slotTypes | Type EquipmentSlot[] | Description 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
ZenScript Copy// IIngredientTransformed.addGlobalAttributeModifier(attribute as Attribute, uuid as string, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
myIIngredientTransformed.addGlobalAttributeModifier(<attribute:minecraft:generic.attack_damage>, "8c1b5535-9f79-448b-87ae-52d81480aaa3", "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>]);
Parameter | Type | Description |
---|---|---|
Parameter attribute | Type Attribute | Description The Attribute of the modifier. |
Parameter uuid | Type string | Description The unique identifier of the modifier to replace. |
Parameter name | Type string | Description The name of the modifier. |
Parameter value | Type double | Description The value of the modifier. |
Parameter operation | Type AttributeOperation | Description The operation of the modifier. |
Parameter slotTypes | Type EquipmentSlot[] | Description What slots the modifier is valid for. |
Name: addTooltip
ZenScript CopyIIngredientTransformed.addTooltip(content as Component)
Parameter | Type |
---|---|
Parameter content | Type Component |
Name: anyDamage
Return Type: IngredientConditioned<IIngredient>
ZenScript Copy// IIngredientTransformed.anyDamage() as IngredientConditioned<IIngredient>
myIIngredientTransformed.anyDamage();
Name: asIIngredientWithAmount
Used implicitly when a machine can accept more than one item but you only provide one.
Return Type: IIngredientWithAmount
ZenScript Copy// IIngredientTransformed.asIIngredientWithAmount() as IIngredientWithAmount
myIIngredientTransformed.asIIngredientWithAmount();
Name: clearTooltip
ZenScript CopyIIngredientTransformed.clearTooltip(leaveName as boolean)
Parameter | Type | Optional | Default Value |
---|---|---|---|
Parameter leaveName | Type boolean | Optional true | Default Value false |
Name: contains
Does the ingredient contain the given ingredient?
Return Type: boolean
ZenScript Copy// IIngredientTransformed.contains(ingredient as IIngredient) as boolean
myIIngredientTransformed.contains((<item:minecraft:iron_ingot> | <item:minecraft:gold_ingot>));
Parameter | Type | Description |
---|---|---|
Parameter ingredient | Type IIngredient | Description The ingredient to check |
Name: isEmpty
Checks if this ingredient is empty.
Returns: true if empty, false otherwise
Return Type: boolean
ZenScript Copy// IIngredientTransformed.isEmpty() as boolean
myIIngredientTransformed.isEmpty();
Name: matches
Does the given stack match the ingredient?
Return Type: boolean
ZenScript Copy// IIngredientTransformed.matches(stack as IItemStack) as boolean
myIIngredientTransformed.matches(<item:minecraft:iron_ingot>);
Parameter | Type | Description |
---|---|---|
Parameter stack | Type IItemStack | Description The stack to check |
Name: matches
Return Type: boolean
ZenScript CopyIIngredientTransformed.matches(stack as IItemStack, ignoreDamage as boolean) as boolean
Parameter | Type |
---|---|
Parameter stack | Type IItemStack |
Parameter ignoreDamage | Type boolean |
Name: modifyShiftTooltip
ZenScript CopyIIngredientTransformed.modifyShiftTooltip(shiftedFunction as ITooltipFunction, unshiftedFunction as ITooltipFunction)
Parameter | Type | Optional |
---|---|---|
Parameter shiftedFunction | Type ITooltipFunction | Optional false |
Parameter unshiftedFunction | Type ITooltipFunction | Optional true |
Name: modifyTooltip
ZenScript CopyIIngredientTransformed.modifyTooltip(function as ITooltipFunction)
Parameter | Type |
---|---|
Parameter function | Type ITooltipFunction |
Name: mul
Use this in contexts where machines accept more than one item to state that fact.
Return Type: IIngredientWithAmount
ZenScript CopyIIngredientTransformed.mul(amount as int) as IIngredientWithAmount
Parameter | Type |
---|---|
Parameter amount | Type int |
Name: only
Use this if you already have the condition from another ingredient
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredientTransformed.only(condition as IIngredientCondition<IIngredient>) as IngredientConditioned<IIngredient>
Parameter | Type |
---|---|
Parameter condition | Type IIngredientCondition<IIngredient> |
Name: onlyDamaged
Return Type: IngredientConditioned<IIngredient>
ZenScript Copy// IIngredientTransformed.onlyDamaged() as IngredientConditioned<IIngredient>
myIIngredientTransformed.onlyDamaged();
Name: onlyDamagedAtLeast
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredientTransformed.onlyDamagedAtLeast(minDamage as int) as IngredientConditioned<IIngredient>
Parameter | Type |
---|---|
Parameter minDamage | Type int |
Name: onlyDamagedAtMost
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredientTransformed.onlyDamagedAtMost(maxDamage as int) as IngredientConditioned<IIngredient>
Parameter | Type |
---|---|
Parameter maxDamage | Type int |
Name: onlyIf
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredientTransformed.onlyIf(uid as string, function as Predicate<IItemStack>) as IngredientConditioned<IIngredient>
Parameter | Type | Optional |
---|---|---|
Parameter uid | Type string | Optional false |
Parameter function | Type Predicate<IItemStack> | Optional true |
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.
ZenScript Copy// IIngredientTransformed.removeGlobalAttribute(attribute as Attribute, slotTypes as EquipmentSlot[])
myIIngredientTransformed.removeGlobalAttribute(<attribute:minecraft:generic.attack_damage>, [<constant:minecraft:equipmentslot:chest>]);
Parameter | Type | Description |
---|---|---|
Parameter attribute | Type Attribute | Description The attribute to remove. |
Parameter slotTypes | Type EquipmentSlot[] | Description 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.
ZenScript Copy// IIngredientTransformed.removeGlobalAttributeModifier(uuid as invalid, slotTypes as EquipmentSlot[])
myIIngredientTransformed.removeGlobalAttributeModifier(IItemStack.BASE_ATTACK_DAMAGE_UUID, [<constant:minecraft:equipmentslot:chest>]);
Parameter | Type | Description |
---|---|---|
Parameter uuid | Type invalid | Description The unique id of the AttributeModifier to remove. |
Parameter slotTypes | Type EquipmentSlot[] | Description 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.
ZenScript Copy// IIngredientTransformed.removeGlobalAttributeModifier(uuid as string, slotTypes as EquipmentSlot[])
myIIngredientTransformed.removeGlobalAttributeModifier("8c1b5535-9f79-448b-87ae-52d81480aaa3", [<constant:minecraft:equipmentslot:chest>]);
Parameter | Type | Description |
---|---|---|
Parameter uuid | Type string | Description The unique id of the AttributeModifier to remove. |
Parameter slotTypes | Type EquipmentSlot[] | Description The slot types to remove it from. |
Name: removeTooltip
ZenScript CopyIIngredientTransformed.removeTooltip(regex as string)
Parameter | Type |
---|---|
Parameter regex | Type string |
Name: reuse
Return Type: IIngredientTransformed<IIngredient>
ZenScript Copy// IIngredientTransformed.reuse() as IIngredientTransformed<IIngredient>
myIIngredientTransformed.reuse();
Name: setBurnTime
Sets the burn time of this ingredient, for use in the furnace and other machines
ZenScript Copy// IIngredientTransformed.setBurnTime(time as int)
myIIngredientTransformed.setBurnTime(500);
Parameter | Type | Description |
---|---|---|
Parameter time | Type int | Description the new burn time |
Name: transform
Use this if you already have the transformer from another ingredient
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredientTransformed.transform(transformer as IIngredientTransformer<IIngredient>) as IIngredientTransformed<IIngredient>
Parameter | Type |
---|---|
Parameter transformer | Type IIngredientTransformer<IIngredient> |
Name: transformCustom
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredientTransformed.transformCustom(uid as string, function as Function<IItemStack,IItemStack>) as IIngredientTransformed<IIngredient>
Parameter | Type | Optional |
---|---|---|
Parameter uid | Type string | Optional false |
Parameter function | Type Function<IItemStack,IItemStack> | Optional true |
Name: transformDamage
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredientTransformed.transformDamage(amount as int) as IIngredientTransformed<IIngredient>
Parameter | Type | Optional | Default Value |
---|---|---|---|
Parameter amount | Type int | Optional true | Default Value 1 |
Name: transformReplace
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredientTransformed.transformReplace(replaceWith as IItemStack) as IIngredientTransformed<IIngredient>
Parameter | Type |
---|---|
Parameter replaceWith | Type IItemStack |
Operators
Link to operators
Name: CONTAINS
Does the ingredient contain the given ingredient?
ZenScript Copyingredient as IIngredient in myIIngredientTransformed
(<item:minecraft:iron_ingot> | <item:minecraft:gold_ingot>) in myIIngredientTransformed
Name: MUL
Use this in contexts where machines accept more than one item to state that fact.
ZenScript CopymyIIngredientTransformed * amount as int
Name: OR
ZenScript CopymyIIngredientTransformed | other as IIngredient
Properties
Link to properties
Name | Type | Has Getter | Has Setter | Description |
---|---|---|---|---|
Name baseIngredient | Type T | Has Getter true | Has Setter false | Description |
Name burnTime | Type void | Has Getter false | Has Setter true | Description Sets the burn time of this ingredient, for use in the furnace and other machines |
Name empty | Type boolean | Has Getter true | Has Setter false | Description Checks if this ingredient is empty. |
Name items | Type IItemStack[] | Has Getter true | Has Setter false | Description |
Name transformer | Type IIngredientTransformer<T> | Has Getter true | Has Setter false | Description |