IIngredient
Link to iingredient
The CraftTweaker Ingredient class which is used to power our recipes and ItemStack matching.
Импорт класса
Link to импорт-класса
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
Утилиты
Link to утилиты
Result Type | Является неявным |
---|---|
Result Type IData | Является неявным true |
Result Type IIngredientWithAmount | Является неявным true |
Result Type Ingredient | Является неявным true |
Result Type MapData | Является неявным true |
Методы
Link to методы
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// IIngredient.addGlobalAttributeModifier(attribute as Attribute, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
<tag:items:minecraft:wool>.addGlobalAttributeModifier(<attribute:minecraft:generic.attack_damage>, "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>]);
Параметр | Тип | Описание |
---|---|---|
Параметр attribute | Тип Attribute | Описание The Attribute of the modifier. |
Параметр name | Тип string | Описание The name of the modifier. |
Параметр value | Тип double | Описание The value of the modifier. |
Параметр operation | Тип AttributeOperation | Описание The operation of the modifier. |
Параметр slotTypes | Тип EquipmentSlot[] | Описание 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// IIngredient.addGlobalAttributeModifier(attribute as Attribute, uuid as invalid, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
<tag:items:minecraft:wool>.addGlobalAttributeModifier(<attribute:minecraft:generic.attack_damage>, IItemStack.BASE_ATTACK_DAMAGE_UUID, "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>]);
Параметр | Тип | Описание |
---|---|---|
Параметр attribute | Тип Attribute | Описание The Attribute of the modifier. |
Параметр uuid | Тип invalid | Описание The unique identifier of the modifier to replace. |
Параметр name | Тип string | Описание The name of the modifier. |
Параметр value | Тип double | Описание The value of the modifier. |
Параметр operation | Тип AttributeOperation | Описание The operation of the modifier. |
Параметр slotTypes | Тип EquipmentSlot[] | Описание 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// IIngredient.addGlobalAttributeModifier(attribute as Attribute, uuid as string, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
<tag:items:minecraft:wool>.addGlobalAttributeModifier(<attribute:minecraft:generic.attack_damage>, "8c1b5535-9f79-448b-87ae-52d81480aaa3", "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>]);
Параметр | Тип | Описание |
---|---|---|
Параметр attribute | Тип Attribute | Описание The Attribute of the modifier. |
Параметр uuid | Тип string | Описание The unique identifier of the modifier to replace. |
Параметр name | Тип string | Описание The name of the modifier. |
Параметр value | Тип double | Описание The value of the modifier. |
Параметр operation | Тип AttributeOperation | Описание The operation of the modifier. |
Параметр slotTypes | Тип EquipmentSlot[] | Описание What slots the modifier is valid for. |
Name: addTooltip
ZenScript CopyIIngredient.addTooltip(content as Component)
Параметр | Тип |
---|---|
Параметр контент | Тип Component |
Name: anyDamage
Return Type: IngredientConditioned<IIngredient>
ZenScript Copy// IIngredient.anyDamage() as IngredientConditioned<IIngredient>
<tag:items:minecraft:wool>.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:minecraft:wool>.asIIngredientWithAmount();
Name: asVanillaIngredient
Create a Vanilla ingredient matching this one.
Return Type: Ingredient
ZenScript Copy// IIngredient.asVanillaIngredient() as Ingredient
<tag:items:minecraft:wool>.asVanillaIngredient();
Name: clearTooltip
ZenScript CopyIIngredient.clearTooltip(leaveName as boolean)
Параметр | Тип | Optional | Default Value |
---|---|---|---|
Параметр leaveName | Тип boolean | Optional true | Default Value false |
Name: contains
Does the ingredient contain the given ingredient?
Return Type: boolean
ZenScript Copy// IIngredient.contains(ingredient as IIngredient) as boolean
<tag:items:minecraft:wool>.contains((<item:minecraft:iron_ingot> | <item:minecraft:gold_ingot>));
Параметр | Тип | Описание |
---|---|---|
Параметр ingredient | Тип IIngredient | Описание 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:minecraft:wool>.getRemainingItem(<item:minecraft:iron_ingot>);
Параметр | Тип | Описание |
---|---|---|
Параметр stack | Тип IItemStack | Описание The stack to provide for this ingredient. |
Name: isEmpty
Checks if this ingredient is empty.
Returns: true if empty, false otherwise
Return Type: boolean
ZenScript Copy// IIngredient.isEmpty() as boolean
<tag:items:minecraft:wool>.isEmpty();
Name: matches
Does the given stack match the ingredient?
Return Type: boolean
ZenScript Copy// IIngredient.matches(stack as IItemStack) as boolean
<tag:items:minecraft:wool>.matches(<item:minecraft:iron_ingot>);
Параметр | Тип | Описание |
---|---|---|
Параметр stack | Тип IItemStack | Описание 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
Параметр | Тип | Описание |
---|---|---|
Параметр stack | Тип IItemStack | Описание The stack to check |
Параметр Игнорирование | Тип boolean | Описание Should damage be checked? |
Name: modifyShiftTooltip
ZenScript CopyIIngredient.modifyShiftTooltip(shiftedFunction as ITooltipFunction, unshiftedFunction as ITooltipFunction)
Параметр | Тип | Optional |
---|---|---|
Параметр shiftedFunction | Тип ITooltipFunction | Optional false |
Параметр unshiftedFunction | Тип ITooltipFunction | Optional true |
Name: modifyTooltip
ZenScript CopyIIngredient.modifyTooltip(function as ITooltipFunction)
Параметр | Тип |
---|---|
Параметр function | Тип ITooltipFunction |
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
Параметр | Тип |
---|---|
Параметр amount | Тип int |
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>
Параметр | Тип |
---|---|
Параметр condition | Тип IIngredientCondition<IIngredient> |
Name: onlyDamaged
Return Type: IngredientConditioned<IIngredient>
ZenScript Copy// IIngredient.onlyDamaged() as IngredientConditioned<IIngredient>
<tag:items:minecraft:wool>.onlyDamaged();
Name: onlyDamagedAtLeast
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredient.onlyDamagedAtLeast(minDamage as int) as IngredientConditioned<IIngredient>
Параметр | Тип |
---|---|
Параметр minDamage | Тип int |
Name: onlyDamagedAtMost
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredient.onlyDamagedAtMost(maxDamage as int) as IngredientConditioned<IIngredient>
Параметр | Тип |
---|---|
Параметр maxDamage | Тип int |
Name: onlyIf
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIIngredient.onlyIf(uid as string, function as Predicate<IItemStack>) as IngredientConditioned<IIngredient>
Параметр | Тип | Optional |
---|---|---|
Параметр uid | Тип string | Optional false |
Параметр function | Тип 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// IIngredient.removeGlobalAttribute(attribute as Attribute, slotTypes as EquipmentSlot[])
<tag:items:minecraft:wool>.removeGlobalAttribute(<attribute:minecraft:generic.attack_damage>, [<constant:minecraft:equipmentslot:chest>]);
Параметр | Тип | Описание |
---|---|---|
Параметр attribute | Тип Attribute | Описание The attribute to remove. |
Параметр slotTypes | Тип EquipmentSlot[] | Описание 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// IIngredient.removeGlobalAttributeModifier(uuid as invalid, slotTypes as EquipmentSlot[])
<tag:items:minecraft:wool>.removeGlobalAttributeModifier(IItemStack.BASE_ATTACK_DAMAGE_UUID, [<constant:minecraft:equipmentslot:chest>]);
Параметр | Тип | Описание |
---|---|---|
Параметр uuid | Тип invalid | Описание The unique id of the AttributeModifier to remove. |
Параметр slotTypes | Тип EquipmentSlot[] | Описание 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// IIngredient.removeGlobalAttributeModifier(uuid as string, slotTypes as EquipmentSlot[])
<tag:items:minecraft:wool>.removeGlobalAttributeModifier("8c1b5535-9f79-448b-87ae-52d81480aaa3", [<constant:minecraft:equipmentslot:chest>]);
Параметр | Тип | Описание |
---|---|---|
Параметр uuid | Тип string | Описание The unique id of the AttributeModifier to remove. |
Параметр slotTypes | Тип EquipmentSlot[] | Описание The slot types to remove it from. |
Name: removeTooltip
ZenScript CopyIIngredient.removeTooltip(regex as string)
Параметр | Тип |
---|---|
Параметр regex | Тип string |
Name: reuse
Return Type: IIngredientTransformed<IIngredient>
ZenScript Copy// IIngredient.reuse() as IIngredientTransformed<IIngredient>
<tag:items:minecraft:wool>.reuse();
Name: setBurnTime
Sets the burn time of this ingredient, for use in the furnace and other machines
ZenScript Copy// IIngredient.setBurnTime(time as int)
<tag:items:minecraft:wool>.setBurnTime(500);
Параметр | Тип | Описание |
---|---|---|
Параметр time | Тип int | Описание the new burn time |
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>
Параметр | Тип |
---|---|
Параметр трансформатор | Тип IIngredientTransformer<IIngredient> |
Name: transformCustom
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredient.transformCustom(uid as string, function as Function<IItemStack,IItemStack>) as IIngredientTransformed<IIngredient>
Параметр | Тип | Optional |
---|---|---|
Параметр uid | Тип string | Optional false |
Параметр function | Тип Function<IItemStack,IItemStack> | Optional true |
Name: transformDamage
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredient.transformDamage(amount as int) as IIngredientTransformed<IIngredient>
Параметр | Тип | Optional | Default Value |
---|---|---|---|
Параметр amount | Тип int | Optional true | Default Value 1 |
Name: transformReplace
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIIngredient.transformReplace(replaceWith as IItemStack) as IIngredientTransformed<IIngredient>
Параметр | Тип |
---|---|
Параметр replaceWith | Тип IItemStack |
Операторы
Link to операторы
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:minecraft:wool>
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
Свойства
Link to свойства
Название | Тип | Имеет Getter | Имеет Setter | Описание |
---|---|---|---|---|
Название burnTime | Тип void | Имеет Getter false | Имеет Setter true | Описание Sets the burn time of this ingredient, for use in the furnace and other machines |
Название commandString | Тип string | Имеет Getter true | Имеет Setter false | Описание Returns the BEP to get this stack |
Название empty | Тип boolean | Имеет Getter true | Имеет Setter false | Описание Checks if this ingredient is empty. |
Название items | Тип IItemStack[] | Имеет Getter true | Имеет Setter false | Описание |