Class Delay

All Implemented Interfaces:
Debuggable, SyntaxElement
Direct Known Subclasses:
IndeterminateDelay

@Name("Delay") @Description("Delays the script\'s execution by a given timespan. Please note that delays are not persistent, e.g. trying to create a tempban script with <code>ban player \u2192 wait 7 days \u2192 unban player</code> will not work if you restart your server anytime within these 7 days. You also have to be careful even when using small delays!") @Examples({"wait 2 minutes","halt for 5 minecraft hours","wait a tick"}) @Since("1.4") public class Delay extends Effect
  • Field Details

    • duration

      protected Expression<Timespan> duration
    • delayed

      protected static final Set<org.bukkit.event.Event> delayed
  • Constructor Details

    • Delay

      public Delay()
  • 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...)
    • walk

      protected @Nullable TriggerItem walk(org.bukkit.event.Event e)
      Description copied from class: TriggerItem
      Executes this item and returns the next item to run.

      Overriding classes must call TriggerItem.debug(Event, boolean). If this method is overridden, TriggerItem.run(Event) is not used anymore and can be ignored.

      Overrides:
      walk in class TriggerItem
      Returns:
      The next item to run or null to stop execution
    • isDelayed

      public static boolean isDelayed(org.bukkit.event.Event e)
    • addDelayedEvent

      public static void addDelayedEvent(org.bukkit.event.Event event)
    • execute

      protected void execute(org.bukkit.event.Event e)
      Description copied from class: Effect
      Executes this effect.
      Specified by:
      execute in class Effect
    • 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