Class AnimationStateHandler<T extends Timed>

java.lang.Object
kr.toxicity.model.api.animation.AnimationStateHandler<T>
Type Parameters:
T - timed value

@Internal public final class AnimationStateHandler<T extends Timed> extends Object
Animation state handler
  • Constructor Details

    • AnimationStateHandler

      public AnimationStateHandler()
  • Method Details

    • keyframeFinished

      public boolean keyframeFinished()
      Checks this keyframe has been finished
      Returns:
      finished
    • beforeKeyframe

      public T beforeKeyframe()
      Gets before keyframe
      Returns:
      before keyframe
    • afterKeyframe

      public T afterKeyframe()
      Gets after keyframe
      Returns:
      after keyframe
    • beforeKeyframe

      @NotNull public T beforeKeyframe(@NotNull T defaultValue)
      Gets before keyframe
      Parameters:
      defaultValue - default value
      Returns:
      before keyframe
    • afterKeyframe

      @NotNull public T afterKeyframe(@NotNull T defaultValue)
      Gets after keyframe
      Parameters:
      defaultValue - default value
      Returns:
      after keyframe
    • runningAnimation

      @Nullable public @Nullable RunningAnimation runningAnimation()
      Gets running animation
      Returns:
      animation
    • tick

      public boolean tick()
      Ticks this state handler
      Returns:
      keyframe has been shifted or not
    • tick

      public boolean tick(@NotNull @NotNull Runnable ifEmpty)
      Ticks this state handler
      Parameters:
      ifEmpty - callback if animator is empty
      Returns:
      keyframe has been shifted or not
    • progress

      public float progress()
      Gets the progress of current keyframe
      Returns:
      progress
    • addAnimation

      public void addAnimation(@NotNull @NotNull String name, @NotNull @NotNull AnimationIterator<T> iterator, @NotNull @NotNull AnimationModifier modifier, @NotNull @NotNull Runnable removeTask)
      Adds animation
      Parameters:
      name - name
      iterator - iterator
      modifier - modifier
      removeTask - remove task
    • replaceAnimation

      public void replaceAnimation(@NotNull @NotNull String name, @NotNull @NotNull AnimationIterator<T> iterator, @NotNull @NotNull AnimationModifier modifier)
      Replaces animation
      Parameters:
      name - name
      iterator - iterator
      modifier - modifier
    • stopAnimation

      public boolean stopAnimation(@NotNull @NotNull String name)
      Remove animation
      Parameters:
      name - name
      Returns:
      success
    • frame

      public float frame()
      Gets ticking frame of current keyframe
      Returns:
      ticking frame