Package org.bukkit.attribute
Interface AttributeInstance
public interface AttributeInstance
Represents a mutable instance of an attribute and its associated modifiers
and values.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addModifier
(@NotNull AttributeModifier modifier) Add a modifier to this instance.void
addTransientModifier
(@NotNull AttributeModifier modifier) Add a transient modifier to this instance.The attribute pertaining to this instance.double
Base value of this instance before modifiers are applied.double
Gets the default value of the Attribute attached to this instance.getModifier
(UUID uuid) Gets the modifier with the corresponding UUID.Get all modifiers present on this instance.double
getValue()
Get the value of this instance after all associated modifiers have been applied.void
removeModifier
(@NotNull AttributeModifier modifier) Remove a modifier from this instance.void
removeModifier
(UUID uuid) Remove a modifier with the corresponding UUID from this instance.void
setBaseValue
(double value) Set the base value of this instance.
-
Method Details
-
getAttribute
The attribute pertaining to this instance.- Returns:
- the attribute
-
getBaseValue
double getBaseValue()Base value of this instance before modifiers are applied.- Returns:
- base value
-
setBaseValue
void setBaseValue(double value) Set the base value of this instance.- Parameters:
value
- new base value
-
getModifiers
Get all modifiers present on this instance.- Returns:
- a copied collection of all modifiers
-
getModifier
Gets the modifier with the corresponding UUID.- Parameters:
uuid
- the UUID of the modifier- Returns:
- the modifier, if it exists
-
removeModifier
Remove a modifier with the corresponding UUID from this instance.- Parameters:
uuid
- the UUID of the modifier
-
addModifier
Add a modifier to this instance.- Parameters:
modifier
- to add
-
addTransientModifier
Add a transient modifier to this instance. Transient modifiers are not persisted (saved with the NBT data)- Parameters:
modifier
- to add
-
removeModifier
Remove a modifier from this instance.- Parameters:
modifier
- to remove
-
getValue
double getValue()Get the value of this instance after all associated modifiers have been applied.- Returns:
- the total attribute value
-
getDefaultValue
double getDefaultValue()Gets the default value of the Attribute attached to this instance.- Returns:
- server default value
-