Package gaiasky.util.gdx.model
Class IntAnimationController
java.lang.Object
gaiasky.util.gdx.model.BaseIntAnimationController
gaiasky.util.gdx.model.IntAnimationController
- Direct Known Subclasses:
AnimationControllerHack
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Class describing how to play andAnimation
.static interface
Listener that will be informed when an animation is looped or completed.Nested classes/interfaces inherited from class gaiasky.util.gdx.model.BaseIntAnimationController
BaseIntAnimationController.Transform
-
Field Summary
Modifier and TypeFieldDescriptionboolean
Whether to allow the same animation to be played while playing that animation.protected final com.badlogic.gdx.utils.Pool
<IntAnimationController.AnimationDesc> The animation currently playing.boolean
Whether an action is being performed.boolean
When true a call toupdate(float)
will not be processed.The animation which previously played.The animation queued to be played when thecurrent
animation is completed.float
The transition time which should be applied to the queued animation.float
The current transition time.float
The target transition time.Fields inherited from class gaiasky.util.gdx.model.BaseIntAnimationController
target
-
Constructor Summary
ConstructorDescriptionConstruct a new AnimationController. -
Method Summary
Modifier and TypeMethodDescriptionprotected IntAnimationController.AnimationDesc
action
(IntAnimationController.AnimationDesc anim, float transitionTime) Apply an action animation on top of the current animation.protected IntAnimationController.AnimationDesc
action
(IntAnimation anim, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Apply an action animation on top of the current animation.action
(String id, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Apply an action animation on top of the current animation.action
(String id, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Apply an action animation on top of the current animation.protected IntAnimationController.AnimationDesc
animate
(IntAnimationController.AnimationDesc anim, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.protected IntAnimationController.AnimationDesc
animate
(IntAnimation anim, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.Changes the current animation by blending the new on top of the old during the transition time.animate
(String id, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.animate
(String id, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.animate
(String id, int loopCount, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.animate
(String id, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.protected IntAnimationController.AnimationDesc
queue
(IntAnimationController.AnimationDesc anim, float transitionTime) Queue an animation to be applied when the current is finished.protected IntAnimationController.AnimationDesc
queue
(IntAnimation anim, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Queue an animation to be applied when the current is finished.queue
(String id, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Queue an animation to be applied when thecurrent
animation is finished.queue
(String id, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Queue an animation to be applied when thecurrent
animation is finished.protected IntAnimationController.AnimationDesc
Set the active animation, replacing any current animation.protected IntAnimationController.AnimationDesc
setAnimation
(IntAnimation anim, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.setAnimation
(String id) Set the active animation, replacing any current animation.setAnimation
(String id, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.setAnimation
(String id, int loopCount) Set the active animation, replacing any current animation.setAnimation
(String id, int loopCount, float speed, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.setAnimation
(String id, int loopCount, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.setAnimation
(String id, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.void
update
(float delta) Update any animations currently being played.Methods inherited from class gaiasky.util.gdx.model.BaseIntAnimationController
apply, applyAnimation, applyAnimation, applyAnimations, begin, end, removeAnimation
-
Field Details
-
animationPool
-
current
The animation currently playing. Do not alter this value. -
queued
The animation queued to be played when thecurrent
animation is completed. Do not alter this value. -
queuedTransitionTime
public float queuedTransitionTimeThe transition time which should be applied to the queued animation. Do not alter this value. -
previous
The animation which previously played. Do not alter this value. -
transitionCurrentTime
public float transitionCurrentTimeThe current transition time. Do not alter this value. -
transitionTargetTime
public float transitionTargetTimeThe target transition time. Do not alter this value. -
inAction
public boolean inActionWhether an action is being performed. Do not alter this value. -
paused
public boolean pausedWhen true a call toupdate(float)
will not be processed. -
allowSameAnimation
public boolean allowSameAnimationWhether to allow the same animation to be played while playing that animation.
-
-
Constructor Details
-
IntAnimationController
Construct a new AnimationController.- Parameters:
target
- TheIntModelInstance
on which the animations will be performed.
-
-
Method Details
-
update
public void update(float delta) Update any animations currently being played.- Parameters:
delta
- The time elapsed since last update, change this to alter the overall speed (can be negative).
-
setAnimation
Set the active animation, replacing any current animation.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
setAnimation
Set the active animation, replacing any current animation.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.loopCount
- The number of times to loop the animation, zero to play the animation only once, negative to continuously loop the animation.- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
setAnimation
public IntAnimationController.AnimationDesc setAnimation(String id, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
setAnimation
public IntAnimationController.AnimationDesc setAnimation(String id, int loopCount, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
setAnimation
public IntAnimationController.AnimationDesc setAnimation(String id, int loopCount, float speed, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.speed
- The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
setAnimation
public IntAnimationController.AnimationDesc setAnimation(String id, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.offset
- The offset in seconds to the start of the animation.duration
- The duration in seconds of the animation (or negative to play till the end of the animation).loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.speed
- The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
setAnimation
protected IntAnimationController.AnimationDesc setAnimation(IntAnimation anim, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener) Set the active animation, replacing any current animation. -
setAnimation
protected IntAnimationController.AnimationDesc setAnimation(IntAnimationController.AnimationDesc anim) Set the active animation, replacing any current animation. -
animate
Changes the current animation by blending the new on top of the old during the transition time.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
animate
public IntAnimationController.AnimationDesc animate(String id, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
animate
public IntAnimationController.AnimationDesc animate(String id, int loopCount, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.loopCount
- The number of times to loop the animation, zero to play the animation only once, negative to continuously loop the animation.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
animate
public IntAnimationController.AnimationDesc animate(String id, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.speed
- The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
animate
public IntAnimationController.AnimationDesc animate(String id, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.offset
- The offset in seconds to the start of the animation.duration
- The duration in seconds of the animation (or negative to play till the end of the animation).loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.speed
- The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
animate
protected IntAnimationController.AnimationDesc animate(IntAnimation anim, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time. -
animate
protected IntAnimationController.AnimationDesc animate(IntAnimationController.AnimationDesc anim, float transitionTime) Changes the current animation by blending the new on top of the old during the transition time. -
queue
public IntAnimationController.AnimationDesc queue(String id, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Queue an animation to be applied when thecurrent
animation is finished. If the current animation is continuously looping it will be synchronized on next loop.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.speed
- The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
queue
public IntAnimationController.AnimationDesc queue(String id, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Queue an animation to be applied when thecurrent
animation is finished. If the current animation is continuously looping it will be synchronized on next loop.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.offset
- The offset in seconds to the start of the animation.duration
- The duration in seconds of the animation (or negative to play till the end of the animation).loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.speed
- The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
queue
protected IntAnimationController.AnimationDesc queue(IntAnimation anim, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Queue an animation to be applied when the current is finished. If current is continuous it will be synced on next loop. -
queue
protected IntAnimationController.AnimationDesc queue(IntAnimationController.AnimationDesc anim, float transitionTime) Queue an animation to be applied when the current is finished. If current is continuous it will be synced on next loop. -
action
public IntAnimationController.AnimationDesc action(String id, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Apply an action animation on top of the current animation.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.speed
- The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
action
public IntAnimationController.AnimationDesc action(String id, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Apply an action animation on top of the current animation.- Parameters:
id
- The ID of theAnimation
within theModelInstance
.offset
- The offset in seconds to the start of the animation.duration
- The duration in seconds of the animation (or negative to play till the end of the animation).loopCount
- The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.speed
- The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.listener
- TheIntAnimationController.AnimationListener
which will be informed when the animation is looped or completed.transitionTime
- The time to transition the new animation on top of the currently playing animation (if any).- Returns:
- The
IntAnimationController.AnimationDesc
which can be read to get the progress of the animation. Will be invalid when the animation is completed.
-
action
protected IntAnimationController.AnimationDesc action(IntAnimation anim, float offset, float duration, int loopCount, float speed, IntAnimationController.AnimationListener listener, float transitionTime) Apply an action animation on top of the current animation. -
action
protected IntAnimationController.AnimationDesc action(IntAnimationController.AnimationDesc anim, float transitionTime) Apply an action animation on top of the current animation.
-