Class CondCompare

All Implemented Interfaces:
Debuggable, SyntaxElement

@Name("Comparison") @Description({"A very general condition, it simply compares two values. Usually you can only compare for equality (e.g. block is/isn\'t of &lt;type&gt;), but some values can also be compared using greater than/less than. In that case you can also test for whether an object is between two others.","Note: This is the only element where not all patterns are shown. It has actually another two sets of similar patters, but with <code>(was|were)</code> or <code>will be</code> instead of <code>(is|are)</code> respectively, which check different <a href=\'expressions.html#ExprTimeState\'>time states</a> of the first expression."}) @Examples({"the clicked block is a stone slab or a double stone slab","time in the player\'s world is greater than 8:00","the creature is not an enderman or an ender dragon"}) @Since("1.0") public class CondCompare extends Condition
  • Constructor Details

    • CondCompare

      public CondCompare()
  • Method Details

    • init

      public boolean init(Expression<?>[] vars, int matchedPattern, Kleenean isDelayed, SkriptParser.ParseResult parser)
      Description copied from interface: SyntaxElement
      Called just after the constructor.
      Parameters:
      vars - 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)
      parser - 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...)
    • f

      public static String f(Expression<?> e)
    • 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