Class AbstractDamageSource
java.lang.Object
org.spongepowered.api.event.cause.entity.damage.source.common.AbstractDamageSource
- All Implemented Interfaces:
DamageSource
An abstract implementation of
DamageSource
to allow plugins to create
their own damage sources without having to implement all the required
methods.
Note that extending this class at the least is a requirement for custom damage sources as not doing so will simply not work.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.spongepowered.api.event.cause.entity.damage.source.DamageSource
DamageSource.Builder, DamageSource.DamageSourceBuilder<T extends DamageSource,
B extends DamageSource.DamageSourceBuilder<T, B>>, DamageSource.Factory -
Constructor Summary
ModifierConstructorDescriptionprotected
AbstractDamageSource
(AbstractDamageSourceBuilder<?, ?> builder) -
Method Summary
Modifier and TypeMethodDescriptionboolean
Gets whether thisDamageSource
is considered to damage creative, or otherwise "normally unharmable" players.double
Gets the amount of exhaustion thisDamageSource
will add to the entity, generally only to players.boolean
Gets whether thisDamageSource
's damage is absolute and will ignore potion effects and enchantments.boolean
Gets whether thisDamageSource
will deal damage that bypasses any armor.boolean
Gets whether thisDamageSource
is an explosion.boolean
isMagic()
Gets whether thisDamageSource
is considered to be magical damage, such as potions, or other sources.boolean
Gets whether thisDamageSource
's damage is scaled byDifficulty
.type()
Gets theDamageType
of this source.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.spongepowered.api.event.cause.entity.damage.source.DamageSource
isFire
-
Constructor Details
-
AbstractDamageSource
-
-
Method Details
-
type
Description copied from interface:DamageSource
Gets theDamageType
of this source.- Specified by:
type
in interfaceDamageSource
- Returns:
- The damage type
-
isAbsolute
public boolean isAbsolute()Description copied from interface:DamageSource
Gets whether thisDamageSource
's damage is absolute and will ignore potion effects and enchantments.- Specified by:
isAbsolute
in interfaceDamageSource
- Returns:
- If this damage source deals absolute damage
-
isBypassingArmor
public boolean isBypassingArmor()Description copied from interface:DamageSource
Gets whether thisDamageSource
will deal damage that bypasses any armor.- Specified by:
isBypassingArmor
in interfaceDamageSource
- Returns:
- True if this damage source bypasses armor
-
isScaledByDifficulty
public boolean isScaledByDifficulty()Description copied from interface:DamageSource
Gets whether thisDamageSource
's damage is scaled byDifficulty
.- Specified by:
isScaledByDifficulty
in interfaceDamageSource
- Returns:
- True if the damage from this source is scaled
-
isExplosive
public boolean isExplosive()Description copied from interface:DamageSource
Gets whether thisDamageSource
is an explosion.- Specified by:
isExplosive
in interfaceDamageSource
- Returns:
- True if this damage source is an explosion
-
isMagic
public boolean isMagic()Description copied from interface:DamageSource
Gets whether thisDamageSource
is considered to be magical damage, such as potions, or other sources.- Specified by:
isMagic
in interfaceDamageSource
- Returns:
- If this damage is magic based
-
doesAffectCreative
public boolean doesAffectCreative()Description copied from interface:DamageSource
Gets whether thisDamageSource
is considered to damage creative, or otherwise "normally unharmable" players. Usually associated withDamageTypes.VOID
.- Specified by:
doesAffectCreative
in interfaceDamageSource
- Returns:
- If this damage should affect creative players
-
exhaustion
public double exhaustion()Description copied from interface:DamageSource
Gets the amount of exhaustion thisDamageSource
will add to the entity, generally only to players.In vanilla gameplay this is set to 0.1 by default and overridden to 0 if the source is set to be absolute or as overriding armor.
- Specified by:
exhaustion
in interfaceDamageSource
- Returns:
- The increase in exhaustion
-