Class CondDamageCause

All Implemented Interfaces:
Debuggable, SyntaxElement

@Name("Damage Cause") @Description("Tests what kind of damage caused a <a href=\'events.html#damage\'>damage event</a>. Refer to the <a href=\'classes.html#damagecause\'>Damage Cause</a> type for a list of all possible causes.") @Examples({"# make players use their potions of fire resistance whenever they take any kind of fire damage","on damage:","\tdamage was caused by lava, fire or burning","\tvictim is a player","\tvictim has a potion of fire resistance","\tcancel event","\tapply fire resistance to the victim for 30 seconds","\tremove 1 potion of fire resistance from the victim","# prevent mobs from dropping items under certain circumstances","on death:","\tentity is not a player","\tdamage wasn\'t caused by a block explosion, an attack, a projectile, a potion, fire, burning, thorns or poison","\tclear drops"}) @Since("2.0") public class CondDamageCause extends Condition
  • Constructor Details

    • CondDamageCause

      public CondDamageCause()
  • Method Details

    • init

      public boolean init(Expression<?>[] exprs, int matchedPattern, Kleenean isDelayed, SkriptParser.ParseResult parseResult)
      Description copied from interface: SyntaxElement
      Called just after the constructor.
      Parameters:
      exprs - all %expr%s included in the matching pattern in the order they appear in the pattern. If an optional value was left out it will still be included in this list holding the default value of the desired type which usually depends on the event.
      matchedPattern - The index of the pattern which matched
      isDelayed - Whether this expression is used after a delay or not (i.e. if the event has already passed when this expression will be called)
      parseResult - Additional information about the match.
      Returns:
      Whether this expression was initialised successfully. An error should be printed prior to returning false to specify the cause.
      See Also:
      ParserInstance.isCurrentEvent(Class...)
    • check

      public boolean check(org.bukkit.event.Event e)
      Description copied from class: Condition
      Checks whether this condition is satisfied with the given event. This should not alter the event or the world in any way, as conditions are only checked until one returns false. All subsequent conditions of the same trigger will then be omitted.

      You might want to use SimpleExpression.check(Event, Checker)
      Specified by:
      check in class Condition
      Parameters:
      e - the event to check
      Returns:
      true if the condition is satisfied, false otherwise or if the condition doesn't apply to this event.
    • toString

      public String toString(@Nullable org.bukkit.event.Event e, boolean debug)
      Parameters:
      e - The event to get information to. This is always null if debug == false.
      debug - If true this should print more information, if false this should print what is shown to the end user
      Returns:
      String representation of this object