Class WeaponDamageEntityEvent

java.lang.Object
org.bukkit.event.Event
org.bukkit.event.entity.EntityEvent
me.deecaad.weaponmechanics.weapon.weaponevents.WeaponEvent
me.deecaad.weaponmechanics.weapon.weaponevents.WeaponDamageEntityEvent
All Implemented Interfaces:
org.bukkit.event.Cancellable

public class WeaponDamageEntityEvent extends WeaponEvent implements org.bukkit.event.Cancellable
Called whenever an entity is damaged by a weapon. For deaths, use the WeaponKillEntityEvent instead. The calculations for final damage can be quite extensive, so be user to change values before using getFinalDamage().
  • Constructor Details

    • WeaponDamageEntityEvent

      public WeaponDamageEntityEvent(String weaponTitle, org.bukkit.inventory.ItemStack weaponItem, org.bukkit.entity.LivingEntity weaponUser, org.bukkit.inventory.EquipmentSlot hand, org.bukkit.entity.LivingEntity victim, double baseDamage, boolean isBackstab, double critChance, DamagePoint point, int armorDamage, int fireTicks, boolean isExplosion, double distanceTravelled, DamageModifier damageModifier, me.deecaad.core.mechanics.Mechanics damageMechanics, me.deecaad.core.mechanics.Mechanics killMechanics, me.deecaad.core.mechanics.Mechanics backstabMechanics, me.deecaad.core.mechanics.Mechanics criticalHitMechanics, me.deecaad.core.mechanics.Mechanics headMechanics, me.deecaad.core.mechanics.Mechanics bodyMechanics, me.deecaad.core.mechanics.Mechanics armsMechanics, me.deecaad.core.mechanics.Mechanics legsMechanics, me.deecaad.core.mechanics.Mechanics feetMechanics)
  • Method Details

    • getVictim

      public org.bukkit.entity.LivingEntity getVictim()
      Who is being damaged by the weapon.
      Returns:
      The non-null entity being damaged.
    • getBaseDamage

      public double getBaseDamage()
      The weapon's base damage amount (before calculations).
      Returns:
      The base damage.
    • setBaseDamage

      public void setBaseDamage(double baseDamage)
      Sets the base damage amount (before calculations). Resets the result of getFinalDamage().
      Parameters:
      baseDamage - The base damage.
    • getFinalDamage

      public double getFinalDamage()
      Returns the damage AFTER all the calculations.
      Returns:
      The final damage.
    • setFinalDamage

      public void setFinalDamage(double finalDamage)
      Overrides the final damage and skips calculations. Probably don't want to use this method, as it will skip headshots, backstabs, armor, etc.
      Parameters:
      finalDamage - The final damage amount.
    • isBackstab

      public boolean isBackstab()
      Returns true if the damage came from behind the victim.
      Returns:
      true is this is a backstab.
    • setBackstab

      public void setBackstab(boolean backstab)
      Sets whether this was a backstab. Resets the result of getFinalDamage().
      Parameters:
      backstab - true if this is a backstab.
    • isCritical

      @Deprecated(forRemoval=true) public boolean isCritical()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Returns true if the damage is critical (usually determined by chance).
      Returns:
      true if this is critical hit.
    • setCritical

      public void setCritical(boolean isCritical)
      Sets whether this is a critical hit. Resets the result of getFinalDamage().
      Parameters:
      isCritical - true if this is a critical hit.
    • getCritChance

      public double getCritChance()
      Returns the chance of a critical hit.
      Returns:
      The chance of a critical hit.
    • isWasCritical

      public boolean isWasCritical()
      Returns true if the damage from the last calculation was a critical hit.
      Returns:
      true if this was a critical hit.
    • getCritDamage

      public double getCritDamage()
      Returns the bonus damage from a critical hit.
      Returns:
      The bonus damage from a critical hit.
    • setCritDamage

      public void setCritDamage(double critDamage)
      Sets the bonus damage from a critical hit. Resets the result of getFinalDamage().
      Parameters:
      critDamage - The bonus damage from a critical hit.
    • setCritChance

      public double setCritChance(double critChance)
      Sets the chance of a critical hit. Resets the result of getFinalDamage().
      Parameters:
      critChance - The chance of a critical hit.
    • getPoint

      public DamagePoint getPoint()
      Gets the body part that was hit (head/arms/chest/etc).
      Returns:
      The nullable damage point.
    • setPoint

      public void setPoint(DamagePoint point)
      Sets the body part that was hit (head/arms/chest/etc). Resets the result of getFinalDamage().
      Parameters:
      point - The nullable damage point.
    • getArmorDamage

      public int getArmorDamage()
      Returns the amount of damage to armor. There is a chance for this number to be ignored (if the armor has unbreaking).
      Returns:
      the amount of damage to armor.
    • setArmorDamage

      public void setArmorDamage(int armorDamage)
      Sets the amount of damage to armor. There is a chance for this number to be ignored (if the armor has unbreaking).
      Parameters:
      armorDamage - Sets the amount of damage to the armor.
    • getFireTicks

      public int getFireTicks()
      How many ticks should the victim be lit on fire for.
      Returns:
      The fire ticks.
    • setFireTicks

      public void setFireTicks(int fireTicks)
      Sets the number of ticks the victim should be lit on fire for.
      Parameters:
      fireTicks - The fire ticks.
      See Also:
      • Entity.setFireTicks(int)
    • isExplosion

      public boolean isExplosion()
    • setExplosion

      public void setExplosion(boolean explosion)
    • getDropoff

      public DamageDropoff getDropoff()
    • setDropoff

      public void setDropoff(DamageDropoff dropoff)
    • getDistanceTravelled

      public double getDistanceTravelled()
    • setDistanceTravelled

      public void setDistanceTravelled(double distanceTravelled)
    • addDamageModifier

      public void addDamageModifier(DamageModifier modifier)
    • getDamageModifiers

      public List<DamageModifier> getDamageModifiers()
    • getDamageMechanics

      public me.deecaad.core.mechanics.Mechanics getDamageMechanics()
    • setDamageMechanics

      public void setDamageMechanics(me.deecaad.core.mechanics.Mechanics damageMechanics)
    • getKillMechanics

      public me.deecaad.core.mechanics.Mechanics getKillMechanics()
    • setKillMechanics

      public void setKillMechanics(me.deecaad.core.mechanics.Mechanics killMechanics)
    • getBackstabMechanics

      public me.deecaad.core.mechanics.Mechanics getBackstabMechanics()
    • setBackstabMechanics

      public void setBackstabMechanics(me.deecaad.core.mechanics.Mechanics backstabMechanics)
    • getCriticalHitMechanics

      public me.deecaad.core.mechanics.Mechanics getCriticalHitMechanics()
    • setCriticalHitMechanics

      public void setCriticalHitMechanics(me.deecaad.core.mechanics.Mechanics criticalHitMechanics)
    • getHeadMechanics

      public me.deecaad.core.mechanics.Mechanics getHeadMechanics()
    • setHeadMechanics

      public void setHeadMechanics(me.deecaad.core.mechanics.Mechanics headMechanics)
    • getBodyMechanics

      public me.deecaad.core.mechanics.Mechanics getBodyMechanics()
    • setBodyMechanics

      public void setBodyMechanics(me.deecaad.core.mechanics.Mechanics bodyMechanics)
    • getArmsMechanics

      public me.deecaad.core.mechanics.Mechanics getArmsMechanics()
    • setArmsMechanics

      public void setArmsMechanics(me.deecaad.core.mechanics.Mechanics armsMechanics)
    • getLegsMechanics

      public me.deecaad.core.mechanics.Mechanics getLegsMechanics()
    • setLegsMechanics

      public void setLegsMechanics(me.deecaad.core.mechanics.Mechanics legsMechanics)
    • getFeetMechanics

      public me.deecaad.core.mechanics.Mechanics getFeetMechanics()
    • setFeetMechanics

      public void setFeetMechanics(me.deecaad.core.mechanics.Mechanics feetMechanics)
    • isCancelled

      public boolean isCancelled()
      Specified by:
      isCancelled in interface org.bukkit.event.Cancellable
    • setCancelled

      public void setCancelled(boolean cancelled)
      Specified by:
      setCancelled in interface org.bukkit.event.Cancellable
    • getHandlers

      @NotNull public @NotNull org.bukkit.event.HandlerList getHandlers()
      Specified by:
      getHandlers in class org.bukkit.event.Event
    • getHandlerList

      public static org.bukkit.event.HandlerList getHandlerList()