ItemAttributeModifierEvent

Link to itemattributemodifierevent

This event is fired when the attributes for an ItemStack are being calculated. Attributes are calculated on the server when equipping and un-equipping an item to add and remove attributes respectively, both must be consistent. Attributes are calculated on the client when rendering an item's tooltip to show relevant attributes.

The event is not cancelable.

The event does not have a result.

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
Copy
import crafttweaker.api.event.ItemAttributeModifierEvent;

ItemAttributeModifierEvent extends Event. That means all methods available in Event are also available in ItemAttributeModifierEvent

Name: addModifier

Adds a new AttributeModifier to the ItemStack.

Returns: True if the modifier was added. False otherwise.
Return Type: boolean

ZenScript
Copy
// ItemAttributeModifierEvent.addModifier(attribute as Attribute, name as string, value as double, operation as AttributeOperation) as boolean

myItemAttributeModifierEvent.addModifier(<attribute:minecraft:generic.attack_damage>, "Extra Power", 10, AttributeOperation.ADDITION);
ParameterTypeBeschreibung
Parameter
attribute
Type
Attribute
Beschreibung
The Attribute to add.
Parameter
name
Type
string
Beschreibung
The name of the modifier to add
Parameter
value
Type
double
Beschreibung
The value of the modifier.
Parameter
operation
Type
AttributeOperation
Beschreibung
The operation of the modifier.

Name: addModifier

Adds a new AttributeModifier to the ItemStack.

Returns: True if the modifier was added. False otherwise.
Return Type: boolean

ZenScript
Copy
// ItemAttributeModifierEvent.addModifier(attribute as Attribute, uuid as string, name as string, value as double, operation as AttributeOperation) as boolean

myItemAttributeModifierEvent.addModifier(<attribute:minecraft:generic.attack_damage>, "8c1b5535-9f79-448b-87ae-52d81480aaa3", "Extra Power", 10, AttributeOperation.ADDITION);
ParameterTypeBeschreibung
Parameter
attribute
Type
Attribute
Beschreibung
The Attribute to add.
Parameter
uuid
Type
string
Beschreibung
The UUID 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.

Name: clearModifiers

Clears all AttributeModifiers from the ItemStack.

Return Type: void

ZenScript
Copy
// ItemAttributeModifierEvent.clearModifiers() as void

myItemAttributeModifierEvent.clearModifiers();

Name: getItemStack

Gets the ItemStack that this event is being ran for.

Returns: The ItemStack this event is being ran for.
Return Type: IItemStack

ZenScript
Copy
// ItemAttributeModifierEvent.getItemStack() as IItemStack

myItemAttributeModifierEvent.getItemStack();

Name: getModifiers

Gets the modifiers on the ItemStack

Returns: A Map of Attribute to a List of AttributeModifier.
Return Type: stdlib.List<AttributeModifier>[Attribute]

ZenScript
Copy
// ItemAttributeModifierEvent.getModifiers() as stdlib.List<AttributeModifier>[Attribute]

myItemAttributeModifierEvent.getModifiers();

Link to getOriginalModifiers

Name: getOriginalModifiers

Gets the original modifiers on the ItemStack before being changed by any other event listener.

Returns: A Map of Attribute to a List of AttributeModifier.
Return Type: stdlib.List<AttributeModifier>[Attribute]

ZenScript
Copy
// ItemAttributeModifierEvent.getOriginalModifiers() as stdlib.List<AttributeModifier>[Attribute]

myItemAttributeModifierEvent.getOriginalModifiers();

Name: getSlotType

Gets the EquipmentSlotType that this event is being ran for.

If you only want to add / remove a modifier from a specific slot, you can use this to filter based on the slot.

Returns: The EquipmentSlotType of this event.
Return Type: EquipmentSlot

ZenScript
Copy
// ItemAttributeModifierEvent.getSlotType() as EquipmentSlot

myItemAttributeModifierEvent.getSlotType();

Name: removeAttribute

Removes an Attribute from the ItemStack.

Returns: A List of the AttributeModifiers for the removed Attribute.
Return Type: stdlib.List<AttributeModifier>

ZenScript
Copy
// ItemAttributeModifierEvent.removeAttribute(attribute as Attribute) as stdlib.List<AttributeModifier>

myItemAttributeModifierEvent.removeAttribute(<attribute:minecraft:generic.attack_damage>);
ParameterTypeBeschreibung
Parameter
attribute
Type
Attribute
Beschreibung
The Attribute to remove.

Name: removeModifier

Removes an AttributeModifier from the ItemStack.

Returns: True if the modifier was remove. False otherwise.
Return Type: boolean

ZenScript
Copy
// ItemAttributeModifierEvent.removeModifier(attribute as Attribute, modifier as AttributeModifier) as boolean

myItemAttributeModifierEvent.removeModifier(<attribute:minecraft:generic.attack_damage>, modifier);
ParameterTypeBeschreibung
Parameter
attribute
Type
Attribute
Beschreibung
The Attribute to remove.
Parameter
modifier
Type
AttributeModifier
Beschreibung
The modifier to remove.

Name: removeModifier

Removes an AttributeModifier from the ItemStack based on the modifier's UUID.

Returns: True if the modifier was remove. False otherwise.
Return Type: boolean

ZenScript
Copy
// ItemAttributeModifierEvent.removeModifier(attribute as Attribute, uuid as string) as boolean

myItemAttributeModifierEvent.removeModifier(<attribute:minecraft:generic.attack_damage>, "8c1b5535-9f79-448b-87ae-52d81480aaa3");
ParameterTypeBeschreibung
Parameter
attribute
Type
Attribute
Beschreibung
The Attribute to remove.
Parameter
uuid
Type
string
Beschreibung
The UUID of the modifier.
NameTypeHas GetterHas SetterBeschreibung
Name
itemstack
Type
IItemStack
Has Getter
true
Has Setter
false
Beschreibung
Gets the ItemStack that this event is being ran for.
Name
modifiers
Type
stdlib.List<AttributeModifier>[Attribute]
Has Getter
true
Has Setter
false
Beschreibung
Gets the modifiers on the ItemStack
Name
originalModifiers
Type
stdlib.List<AttributeModifier>[Attribute]
Has Getter
true
Has Setter
false
Beschreibung
Gets the original modifiers on the ItemStack before being changed by any other event listener.
Name
slotType
Type
EquipmentSlot
Has Getter
true
Has Setter
false
Beschreibung
Gets the EquipmentSlotType that this event is being ran for.

If you only want to add / remove a modifier from a specific slot, you can use this to filter based on the slot.