IItemstack
Link to iitemstack
导入类
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.item.IItemStack;
已实现的接口
Link to 已实现的接口
IItemStack implements the following interfaces. That means all methods defined in these interfaces are also available in IItemStack
Static Properties
Link to static-properties
名称 | 类型 | 可获得 | 可设置 |
---|---|---|---|
名称 BASE_ATTACK_DAMAGE_UUID | 类型 invalid | 可获得 true | 可设置 false |
名称 BASE_ATTACK_SPEED_UUID | 类型 invalid | 可获得 true | 可设置 false |
名称 CRAFTTWEAKER_DATA_KEY | 类型 string | 可获得 true | 可设置 false |
Casters
Link to casters
Result Type | 是否隐藏 |
---|---|
Result Type IIngredientWithAmount | 是否隐藏 true |
Result Type ItemDefinition | 是否隐藏 true |
Result Type ItemLike | 是否隐藏 true |
Result Type 物品应用 | 是否隐藏 true |
Result Type MapData #地图数据 | 是否隐藏 true |
Result Type Percentaged<IItemStack> | 是否隐藏 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// IItemStack.addGlobalAttributeModifier(attribute as Attribute, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
myIItemStack.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// IItemStack.addGlobalAttributeModifier(attribute as Attribute, uuid as invalid, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
myIItemStack.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// IItemStack.addGlobalAttributeModifier(attribute as Attribute, uuid as string, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[])
myIItemStack.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: anyDamage
Return Type: IngredientConditioned<IIngredient>
ZenScript Copy// IItemStack.anyDamage() as IngredientConditioned<IIngredient>
myIItemStack.anyDamage();
Name: asIIngredientWithAmount
Return Type: IIngredientWithAmount
ZenScript Copy// IItemStack.asIIngredientWithAmount() as IIngredientWithAmount
myIItemStack.asIIngredientWithAmount();
Name: asImmutable
Return Type: IItemStack
ZenScript Copy// IItemStack.asImmutable() as IItemStack
myIItemStack.asImmutable();
Name: asItemLike
Return Type: ItemLike
ZenScript Copy// IItemStack.asItemLike() as ItemLike
myIItemStack.asItemLike();
Name: asMutable
Return Type: IItemStack
ZenScript Copy// IItemStack.asMutable() as IItemStack
myIItemStack.asMutable();
Name: clearTooltip
ZenScript CopyIItemStack.clearTooltip(leaveName as boolean)
参数 | 类型 | 可选 | 默认值 |
---|---|---|---|
参数 leaveName | 类型 布尔值 | 可选 true | 默认值 false |
Name: contains
Does the ingredient contain the given ingredient?
Return Type: boolean
ZenScript Copy// IItemStack.contains(ingredient as IIngredient) as boolean
myIItemStack.contains((<item:minecraft:iron_ingot> | <item:minecraft:gold_ingot>));
参数 | 类型 | 描述 |
---|---|---|
参数 ingredient | 类型 材料(IIngredient) | 描述 The ingredient to check |
Name: copy
Creates a copy
Return Type: IItemStack
ZenScript Copy// IItemStack.copy() as IItemStack
myIItemStack.copy();
Name: getAttributes
Gets the Attributes and the AttributeModifiers on this IItemStack for the given EquipmentSlot
Returns: A Map of Attribute to a List of AttributeModifier for the given EquipmentSlot.
Return Type: stdlib.List<AttributeModifier>[Attribute]
ZenScript Copy// IItemStack.getAttributes(slotType as EquipmentSlot) as stdlib.List<AttributeModifier>[Attribute]
myIItemStack.getAttributes(<constant:minecraft:equipmentslot:chest>);
参数 | 类型 | 描述 |
---|---|---|
参数 slotType | 类型 EquipmentSlot | 描述 The slot to get the Attributes for. |
Name: getDefinition
Return Type: ItemDefinition
ZenScript Copy// IItemStack.getDefinition() as ItemDefinition
myIItemStack.getDefinition();
Name: getEnchantmentLevel
Gets the level of the given enchantment on the item. Returns 0 if the item doesn't have the given enchantment.
Return Type: int
ZenScript CopyIItemStack.getEnchantmentLevel(enchantment as Enchantment) as int
参数 | 类型 |
---|---|
参数 enchantment | 类型 Enchantment |
Name: getEnchantments
Return Type: int?[Enchantment]
ZenScript Copy// IItemStack.getEnchantments() as int?[Enchantment]
myIItemStack.getEnchantments();
Name: getFood
Return Type: FoodProperties?
ZenScript Copy// IItemStack.getFood() as FoodProperties?
myIItemStack.getFood();
Name: getHoverName
Gets the hover name of the ItemStack.
This will give the raw name without the formatting that 'displayName' applies.
Returns: The hover name of the ItemStack.
Return Type: Component
ZenScript Copy// IItemStack.getHoverName() as Component
myIItemStack.getHoverName();
Name: getImmutableInternal
Return Type: ItemStack
ZenScript Copy// IItemStack.getImmutableInternal() as ItemStack
myIItemStack.getImmutableInternal();
Name: getMaxStackSize
Returns the max stack size of the Item in the ItemStack
Returns: Max stack size of the Item.
Return Type: int
ZenScript Copy// IItemStack.getMaxStackSize() as int
myIItemStack.getMaxStackSize();
Name: getOrCreateTag
Returns the NBT tag attached to this ItemStack or makes a new tag.
Returns: MapData of the ItemStack NBT Tag, empty tag if it doesn't exist.
Return Type: IData
ZenScript Copy// IItemStack.getOrCreateTag() as IData
myIItemStack.getOrCreateTag();
Name: getRarity
Returns the rarity of the Item in the ItemStack
Returns: Rarity of the Item.
Return Type: Rarity
ZenScript Copy// IItemStack.getRarity() as Rarity
myIItemStack.getRarity();
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// IItemStack.getRemainingItem(stack as IItemStack) as IItemStack
myIItemStack.getRemainingItem(<item:minecraft:iron_ingot>);
参数 | 类型 | 描述 |
---|---|---|
参数 堆叠 | 类型 IItemstack | 描述 The stack to provide for this ingredient. |
Name: grow
Grows this IItemStack's stack size by the given amount, or 1 if no amount is given.
Returns: This IItemStack if mutable, a new one with the new amount otherwise.
Return Type: IItemStack
ZenScript Copy// IItemStack.grow(amount as int) as IItemStack
myIItemStack.grow(2);
参数 | 类型 | 描述 | 可选 | 默认值 |
---|---|---|---|---|
参数 amount | 类型 int | 描述 The amount to grow by. | 可选 true | 默认值 1 |
Name: isEdible
Return Type: boolean
ZenScript Copy// IItemStack.isEdible() as boolean
myIItemStack.isEdible();
Name: isFireResistant
Checks if this IItemStack burns when thrown into fire / lava or damaged by fire.
Returns: True if this IItemStack is immune to fire. False otherwise.
Return Type: boolean
ZenScript Copy// IItemStack.isFireResistant() as boolean
myIItemStack.isFireResistant();
Name: isImmutable
Return Type: boolean
ZenScript Copy// IItemStack.isImmutable() as boolean
myIItemStack.isImmutable();
Name: isMutable
Return Type: boolean
ZenScript Copy// IItemStack.isMutable() as boolean
myIItemStack.isMutable();
Name: matches
Does the given stack match the ingredient?
Return Type: boolean
ZenScript Copy// IItemStack.matches(stack as IItemStack) as boolean
myIItemStack.matches(<item:minecraft:iron_ingot>);
参数 | 类型 | 描述 |
---|---|---|
参数 堆叠 | 类型 IItemstack | 描述 The stack to check |
Name: modifyShiftTooltip
ZenScript CopyIItemStack.modifyShiftTooltip(shiftedFunction as ITooltipFunction, unshiftedFunction as ITooltipFunction)
参数 | 类型 | 可选 |
---|---|---|
参数 shiftedFunction | 类型 ITooltipFunction | 可选 false |
参数 unshiftedFunction | 类型 ITooltipFunction | 可选 true |
Name: modifyTooltip
ZenScript CopyIItemStack.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 CopyIItemStack.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 CopyIItemStack.only(condition as IIngredientCondition<IIngredient>) as IngredientConditioned<IIngredient>
参数 | 类型 |
---|---|
参数 condition | 类型 IIngredientCondition<IIngredient> |
Name: onlyDamaged
Return Type: IngredientConditioned<IIngredient>
ZenScript Copy// IItemStack.onlyDamaged() as IngredientConditioned<IIngredient>
myIItemStack.onlyDamaged();
Name: onlyDamagedAtLeast
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIItemStack.onlyDamagedAtLeast(minDamage as int) as IngredientConditioned<IIngredient>
参数 | 类型 |
---|---|
参数 minDamage | 类型 int |
Name: onlyDamagedAtMost
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIItemStack.onlyDamagedAtMost(maxDamage as int) as IngredientConditioned<IIngredient>
参数 | 类型 |
---|---|
参数 maxDamage | 类型 int |
Name: onlyIf
Return Type: IngredientConditioned<IIngredient>
ZenScript CopyIItemStack.onlyIf(uid as string, function as Predicate<IItemStack>) as IngredientConditioned<IIngredient>
参数 | 类型 | 可选 |
---|---|---|
参数 uid | 类型 string | 可选 false |
参数 function | 类型 Predicate<IItemStack> | 可选 true |
Name: percent
Return Type: Percentaged<IItemStack>
ZenScript CopyIItemStack.percent(percentage as double) as Percentaged<IItemStack>
参数 | 类型 |
---|---|
参数 percentage | 类型 double |
Name: removeEnchantment
Removes the given enchantment from this IItemStack.
Returns: This itemStack if it is mutable, a new one with the enchantment removed otherwise
Return Type: IItemStack
ZenScript Copy// IItemStack.removeEnchantment(enchantment as Enchantment) as IItemStack
myIItemStack.removeEnchantment(<enchantment:minecraft:riptide>);
参数 | 类型 | 描述 |
---|---|---|
参数 enchantment | 类型 Enchantment | 描述 The enchantment to remove. |
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// IItemStack.removeGlobalAttribute(attribute as Attribute, slotTypes as EquipmentSlot[])
myIItemStack.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// IItemStack.removeGlobalAttributeModifier(uuid as invalid, slotTypes as EquipmentSlot[])
myIItemStack.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// IItemStack.removeGlobalAttributeModifier(uuid as string, slotTypes as EquipmentSlot[])
myIItemStack.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 CopyIItemStack.removeTooltip(regex as string)
参数 | 类型 |
---|---|
参数 regex | 类型 string |
Name: resetHoverName
Clears any custom name set for this ItemStack
ZenScript Copy// IItemStack.resetHoverName()
myIItemStack.resetHoverName();
Name: reuse
Return Type: IIngredientTransformed<IIngredient>
ZenScript Copy// IItemStack.reuse() as IIngredientTransformed<IIngredient>
myIItemStack.reuse();
Name: setBurnTime
Sets the burn time of this ingredient, for use in the furnace and other machines
ZenScript Copy// IItemStack.setBurnTime(time as int)
myIItemStack.setBurnTime(500);
参数 | 类型 | 描述 |
---|---|---|
参数 time | 类型 int | 描述 the new burn time |
Name: setEnchantments
Sets the enchantments on this IItemStack.
Returns: This itemStack if it is mutable, a new one with the enchantments otherwise
Return Type: IItemStack
ZenScript CopyIItemStack.setEnchantments(enchantments as int?[Enchantment]) as IItemStack
参数 | 类型 | 描述 |
---|---|---|
参数 enchantments | 类型 int?[Enchantment] | 描述 The new enchantments |
Name: setFireResistant
Sets if this IItemStack is immune to fire / lava.
If true, the item will not burn when thrown into fire or lava.
ZenScript CopyIItemStack.setFireResistant(fireResistant as boolean)
参数 | 类型 | 描述 |
---|---|---|
参数 fireResistant | 类型 布尔值 | 描述 Should the item be immune to fire. |
Name: setMaxStackSize
Sets the max stacksize of the Item.
ZenScript Copy// IItemStack.setMaxStackSize(newMaxStackSize as int)
myIItemStack.setMaxStackSize(16);
参数 | 类型 | 描述 |
---|---|---|
参数 newMaxStackSize | 类型 int | 描述 The new max stack size of the Item. |
Name: setRarity
Sets the rarity of the Item.
ZenScript Copy// IItemStack.setRarity(newRarity as Rarity)
myIItemStack.setRarity(Rarity.UNCOMMON);
参数 | 类型 | 描述 |
---|---|---|
参数 newRarity | 类型 Rarity | 描述 The new rarity of the Item. |
Name: shrink
Shrinks this IItemStack's stack size by the given amount, or 1 if no amount is given.
Returns: This IItemStack if mutable, a new one with the new amount otherwise.
Return Type: IItemStack
ZenScript Copy// IItemStack.shrink(amount as int) as IItemStack
myIItemStack.shrink(2);
参数 | 类型 | 描述 | 可选 | 默认值 |
---|---|---|---|---|
参数 amount | 类型 int | 描述 The amount to shrink by. | 可选 true | 默认值 1 |
Name: transform
Use this if you already have the transformer from another ingredient
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIItemStack.transform(transformer as IIngredientTransformer<IIngredient>) as IIngredientTransformed<IIngredient>
参数 | 类型 |
---|---|
参数 变压器 | 类型 IIngredientTransformer<IIngredient> |
Name: transformCustom
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIItemStack.transformCustom(uid as string, function as Function<IItemStack,IItemStack>) as IIngredientTransformed<IIngredient>
参数 | 类型 | 可选 |
---|---|---|
参数 uid | 类型 string | 可选 false |
参数 function | 类型 Function<IItemStack,IItemStack> | 可选 true |
Name: transformDamage
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIItemStack.transformDamage(amount as int) as IIngredientTransformed<IIngredient>
参数 | 类型 | 可选 | 默认值 |
---|---|---|---|
参数 amount | 类型 int | 可选 true | 默认值 1 |
Name: transformReplace
Return Type: IIngredientTransformed<IIngredient>
ZenScript CopyIItemStack.transformReplace(replaceWith as IItemStack) as IIngredientTransformed<IIngredient>
参数 | 类型 |
---|---|
参数 replaceWith | 类型 IItemstack |
Name: withAttributeModifier
Adds an AttributeModifier to this IItemStack.
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 will only appear on this specific IItemStack.
By defaults, adding a modifier will remove the default Attribute Modifiers on the Item, like the Diamond Chestplate's Armor and Toughness values. When preserveDefaults
is set to true (by default it is false.), the default Attribute Modifiers will be preserved when adding this modifier. This means that if you were adding the forge:nametag_distance
attribute to an Item, it would keep its default attributes (like Armor and Toughness values).
Return Type: IItemStack
ZenScript Copy// IItemStack.withAttributeModifier(attribute as Attribute, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[], preserveDefaults as boolean) as IItemStack
myIItemStack.withAttributeModifier(<attribute:minecraft:generic.attack_damage>, "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>], true);
参数 | 类型 | 描述 | 可选 | 默认值 |
---|---|---|---|---|
参数 attribute | 类型 Attribute | 描述 The Attribute of the modifier. | 可选 false | 默认值 |
参数 name(名称) | 类型 string | 描述 The name of the modifier. | 可选 false | 默认值 |
参数 value | 类型 double | 描述 The value of the modifier. | 可选 false | 默认值 |
参数 operation | 类型 AttributeOperation | 描述 The operation of the modifier. | 可选 false | 默认值 |
参数 slotTypes | 类型 EquipmentSlot[] | 描述 What slots the modifier is valid for. | 可选 false | 默认值 |
参数 preserveDefaults | 类型 布尔值 | 描述 Should the default Item Attribute Modifiers be preserved when adding this modifier. | 可选 true | 默认值 false |
Name: withAttributeModifier
Adds an AttributeModifier to this IItemStack 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 will only appear on this specific IItemStack.
By defaults, adding a modifier will remove the default Attribute Modifiers on the Item, like the Diamond Chestplate's Armor and Toughness values. When preserveDefaults
is set to true (by default it is false.), the default Attribute Modifiers will be preserved when adding this modifier. This means that if you were adding the forge:nametag_distance
attribute to an Item, it would keep its default attributes (like Armor and Toughness values).
Return Type: IItemStack
ZenScript Copy// IItemStack.withAttributeModifier(attribute as Attribute, uuid as invalid, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[], preserveDefaults as boolean) as IItemStack
myIItemStack.withAttributeModifier(<attribute:minecraft:generic.attack_damage>, "8c1b5535-9f79-448b-87ae-52d81480aaa3", "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>], true);
参数 | 类型 | 描述 | 可选 | 默认值 |
---|---|---|---|---|
参数 attribute | 类型 Attribute | 描述 The Attribute of the modifier. | 可选 false | 默认值 |
参数 uuid | 类型 invalid | 描述 The unique identifier of the modifier to replace. | 可选 false | 默认值 |
参数 name(名称) | 类型 string | 描述 The name of the modifier. | 可选 false | 默认值 |
参数 value | 类型 double | 描述 The value of the modifier. | 可选 false | 默认值 |
参数 operation | 类型 AttributeOperation | 描述 The operation of the modifier. | 可选 false | 默认值 |
参数 slotTypes | 类型 EquipmentSlot[] | 描述 What slots the modifier is valid for. | 可选 false | 默认值 |
参数 preserveDefaults | 类型 布尔值 | 描述 Should the default Item Attribute Modifiers be preserved when adding this modifier. | 可选 true | 默认值 false |
Name: withAttributeModifier
Adds an AttributeModifier to this IItemStack 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 will only appear on this specific IItemStack.
By defaults, adding a modifier will remove the default Attribute Modifiers on the Item, like the Diamond Chestplate's Armor and Toughness values. When preserveDefaults
is set to true (by default it is false.), the default Attribute Modifiers will be preserved when adding this modifier. This means that if you were adding the forge:nametag_distance
attribute to an Item, it would keep its default attributes (like Armor and Toughness values).
Return Type: IItemStack
ZenScript Copy// IItemStack.withAttributeModifier(attribute as Attribute, uuid as string, name as string, value as double, operation as AttributeOperation, slotTypes as EquipmentSlot[], preserveDefaults as boolean) as IItemStack
myIItemStack.withAttributeModifier(<attribute:minecraft:generic.attack_damage>, "8c1b5535-9f79-448b-87ae-52d81480aaa3", "Extra Power", 10, AttributeOperation.ADDITION, [<constant:minecraft:equipmentslot:chest>], true);
参数 | 类型 | 描述 | 可选 | 默认值 |
---|---|---|---|---|
参数 attribute | 类型 Attribute | 描述 The Attribute of the modifier. | 可选 false | 默认值 |
参数 uuid | 类型 string | 描述 The unique identifier of the modifier to replace. | 可选 false | 默认值 |
参数 name(名称) | 类型 string | 描述 The name of the modifier. | 可选 false | 默认值 |
参数 value | 类型 double | 描述 The value of the modifier. | 可选 false | 默认值 |
参数 operation | 类型 AttributeOperation | 描述 The operation of the modifier. | 可选 false | 默认值 |
参数 slotTypes | 类型 EquipmentSlot[] | 描述 What slots the modifier is valid for. | 可选 false | 默认值 |
参数 preserveDefaults | 类型 布尔值 | 描述 Should the default Item Attribute Modifiers be preserved when adding this modifier. | 可选 true | 默认值 false |
Name: withDamage
Sets the damage of the ItemStack
Return Type: IItemStack
ZenScript Copy// IItemStack.withDamage(damage as int) as IItemStack
myIItemStack.withDamage(10);
参数 | 类型 | 描述 |
---|---|---|
参数 damage | 类型 int | 描述 the new damage value |
Name: withDisplayName
Sets the display name of the ItemStack
Return Type: IItemStack
ZenScript Copy// IItemStack.withDisplayName(name as Component) as IItemStack
myIItemStack.withDisplayName("totally not dirt");
参数 | 类型 | 描述 |
---|---|---|
参数 name(名称) | 类型 Component | 描述 New name of the stack. |
Name: withEnchantment
Enchants this IItemStack with the given Enchantment.
Returns: This itemStack if it is mutable, a new one with the enchantment added otherwise
Return Type: IItemStack
ZenScript Copy// IItemStack.withEnchantment(enchantment as Enchantment, level as int) as IItemStack
myIItemStack.withEnchantment(<enchantment:minecraft:riptide>, 2);
参数 | 类型 | 描述 | 可选 | 默认值 |
---|---|---|---|---|
参数 enchantment | 类型 Enchantment | 描述 The enchantment to add. | 可选 false | 默认值 |
参数 level | 类型 int | 描述 The level of the enchantment | 可选 true | 默认值 1 |
Name: withLore
Sets the lore of the ItemStack
Return Type: IItemStack
ZenScript Copy// IItemStack.withLore(lore as Component?[]) as IItemStack
myIItemStack.withLore(new crafttweaker.api.text.TextComponent("I am the lore I speak for the trees"););
参数 | 类型 | 描述 |
---|---|---|
参数 lore | 类型 Component?[] | 描述 the new Lore of the ItemStack. |
Name: withTag
Sets the tag for the ItemStack.
Returns: This itemStack if it is mutable, a new one with the changed property otherwise
Return Type: IItemStack
ZenScript Copy// IItemStack.withTag(tag as MapData) as IItemStack
myIItemStack.withTag({Display: {lore: ["Hello"]}});
参数 | 类型 | 描述 |
---|---|---|
参数 tag #标签 | 类型 MapData #地图数据 | 描述 The tag to set. |
Name: withoutTag
Removes the tag from this ItemStack.
Returns: This itemStack if it is mutable, a new one with the changed property otherwise
Return Type: IItemStack
ZenScript Copy// IItemStack.withoutTag() as IItemStack
myIItemStack.withoutTag();
运算符
Link to 运算符
Name: CONTAINS
Does the ingredient contain the given ingredient?
ZenScript Copyingredient as IIngredient in myIItemStack
(<item:minecraft:iron_ingot> | <item:minecraft:gold_ingot>) in myIItemStack
Name: MOD
ZenScript CopymyIItemStack % percentage as double
Name: MUL
Use this in contexts where machines accept more than one item to state that fact.
ZenScript CopymyIItemStack * amount as int
Name: OR
ZenScript CopymyIItemStack | other as IIngredient
名称 | 类型 | 可获得 | 可设置 | 描述 |
---|---|---|---|---|
名称 amount | 类型 int | 可获得 true | 可设置 false | 描述 Gets the amount of Items in the ItemStack |
名称 baseRepairCost | 类型 int | 可获得 true | 可设置 false | 描述 Gets the base repair cost of the ItemStack, or 0 if no repair is defined. |
名称 burnTime | 类型 void | 可获得 true | 可设置 true | 描述 Sets the burn time of this ingredient, for use in the furnace and other machines |
名称 damage | 类型 int | 可获得 true | 可设置 false | 描述 |
名称 damageableItem | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Returns if the ItemStack is damageable I.E Swords and tools are damageable, sticks are not. |
名称 damaged | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Returns if the ItemStack is damaged I.E a Swords that is no at full durability is damaged. |
名称 definition | 类型 ItemDefinition | 可获得 true | 可设置 false | 描述 |
名称 descriptionId | 类型 string | 可获得 true | 可设置 false | 描述 Returns the unlocalized Name of the Item in the ItemStack |
名称 displayName | 类型 Component | 可获得 true | 可设置 false | 描述 Gets the display name of the ItemStack |
名称 enchantments | 类型 int?[Enchantment] | 可获得 true | 可设置 true | 描述 |
名称 fireResistant | 类型 布尔值 | 可获得 true | 可设置 true | 描述 Checks if this IItemStack burns when thrown into fire / lava or damaged by fire. |
名称 food | 类型 FoodProperties? | 可获得 true | 可设置 true | 描述 |
名称 hasCustomHoverName | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Returns true if the ItemStack has a display name. |
名称 hasFoil | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Returns true if this ItemStack has a foil effect. Foil is the glint / effect that is added to enchanted ItemStacks (and other items). |
名称 hasTag | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Returns true if this ItemStack has a Tag |
名称 hoverName | 类型 Component | 可获得 true | 可设置 false | 描述 Gets the hover name of the ItemStack. This will give the raw name without the formatting that 'displayName' applies. |
名称 isEdible | 类型 布尔值 | 可获得 true | 可设置 false | 描述 |
名称 isEnchantable | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Can this ItemStack be enchanted? |
名称 isEnchanted | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Is this ItemStack enchanted? |
名称 isImmutable | 类型 布尔值 | 可获得 true | 可设置 false | 描述 |
名称 isMutable | 类型 布尔值 | 可获得 true | 可设置 false | 描述 |
名称 items | 类型 IItemStack[] | 可获得 true | 可设置 false | 描述 |
名称 maxDamage | 类型 int | 可获得 true | 可设置 true | 描述 Returns the max damage of the ItemStack This is the max durability of the ItemStack. |
名称 maxStackSize | 类型 int | 可获得 true | 可设置 true | 描述 Returns the max stack size of the Item in the ItemStack |
名称 owner | 类型 string | 可获得 true | 可设置 false | 描述 Gets owning mod for the Item in this IItemStack |
名称 rarity | 类型 Rarity | 可获得 true | 可设置 true | 描述 Returns the rarity of the Item in the ItemStack |
名称 registryName | 类型 资源位置 | 可获得 true | 可设置 false | 描述 Gets the registry name for the Item in this IItemStack |
名称 stackable | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Returns if the ItemStack can have an amount greater than 1 I.E Swords and tools are not stackable, sticks are. |
名称 tag #标签 | 类型 IData? | 可获得 true | 可设置 false | 描述 Returns the NBT tag attached to this ItemStack. |
名称 useDuration | 类型 int | 可获得 true | 可设置 false | 描述 Gets the use duration of the ItemStack |
名称 useOnRelease | 类型 布尔值 | 可获得 true | 可设置 false | 描述 Returns true if this stack is considered a crossbow item |