Class SequenceEffect

  • All Implemented Interfaces:
    IEffect

    public class SequenceEffect
    extends java.lang.Object
    implements IEffect
    Run several effects one after another.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) int currentEffect  
      (package private) IEffect[] effects  
      (package private) long length  
      (package private) java.lang.Runnable onCancel  
      (package private) java.lang.Runnable onStop  
      (package private) long start  
    • Constructor Summary

      Constructors 
      Constructor Description
      SequenceEffect​(IEffect[] effects, java.lang.Runnable onStop, java.lang.Runnable onCancel)
      Run several effects one after another.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void cancel()
      Set the effect as done and run the cancel runnable.
      void doEffect​(long time)
      Apply effect to the target according to the given time.
      long getLength()
      Get effect length
      boolean isDone()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • currentEffect

        int currentEffect
      • length

        long length
      • onCancel

        java.lang.Runnable onCancel
      • onStop

        java.lang.Runnable onStop
      • start

        long start
    • Constructor Detail

      • SequenceEffect

        public SequenceEffect​(IEffect[] effects,
                              java.lang.Runnable onStop,
                              java.lang.Runnable onCancel)
        Run several effects one after another.

        Note :

        • onStop and onCancel runnables applies to the whole sequence effect.
        • Each effect can have its own onStop and onCancel.

        Parameters:
        effects -
        onStop -
        onCancel -
    • Method Detail

      • cancel

        public void cancel()
        Description copied from interface: IEffect
        Set the effect as done and run the cancel runnable.
        Specified by:
        cancel in interface IEffect
        See Also:
        IEffect.cancel()
      • doEffect

        public void doEffect​(long time)
        Description copied from interface: IEffect
        Apply effect to the target according to the given time.
        Specified by:
        doEffect in interface IEffect
        Parameters:
        time - - Current time in ms. This value may be larger than the effect length.
        See Also:
        IEffect.doEffect(long)
      • isDone

        public boolean isDone()
        Specified by:
        isDone in interface IEffect
        Returns:
        true if the effect as already reached its end.
        See Also:
        IEffect.isDone()