Skip to content

AnimationInstance

This is the AnimationInstance class. It represents a single animation instance

Functions

MethodReturnsDescription
AnimationInstance.newAnimationInstanceCreates a new animation instance
AnimationInstance:startAnimationInstanceStarts the animation
AnimationInstance:updatebooleanUpdates the animation
AnimationInstance:complete-Called when the animation is completed

AnimationInstance.new(element, animType, args, duration, easing)

Creates a new AnimationInstance

Parameters

  • element VisualElement The element to animate
  • animType string The type of animation
  • args table The animation arguments
  • duration number Duration in seconds
  • easing string The easing function name

Returns

  • AnimationInstance The new animation instance

AnimationInstance:start()

Starts the animation

Returns

  • AnimationInstance self The animation instance

AnimationInstance:update(elapsed)

Updates the animation

Parameters

  • elapsed number The elapsed time in seconds

Returns

  • boolean Whether the animation is finished

AnimationInstance:complete()

Gets called when the animation is completed

Animation

This is the animation plugin. It provides a animation system for visual elementswith support for sequences, easing functions, and multiple animation types.

Functions

MethodReturnsDescription
Animation.registerAnimation-Registers a custom animation type
Animation.registerEasing-Adds a custom easing function
Animation.newAnimationCreates a new animation
Animation:sequenceAnimationCreates a new sequence
Animation:onStart-Registers a callback for the start event
Animation:onUpdateAnimationRegisters a callback for the update event
Animation:onCompleteAnimationRegisters a callback for the complete event
Animation:addAnimation-Adds a new animation to the sequence
Animation:startAnimationStarts the animation
Animation:event-The event handler for the animation
Animation:stop-Stops the animation

Animation.registerAnimation(name, handlers)

Registers a new animation type

Parameters

  • name string The name of the animation
  • handlers table Table containing start, update and complete handlers

Usage

lua
Animation.registerAnimation("fade", {start=function(anim) end, update=function(anim,progress) end})

Animation.registerEasing(name, func)

Registers a new easing function

Parameters

  • name string The name of the easing function
  • func function The easing function (takes progress 0-1, returns modified progress)

Animation.new(element)

Creates a new Animation

Parameters

  • element VisualElement The element to animate

Returns

  • Animation The new animation

Animation:sequence()

Creates a new sequence

Returns

  • Animation self The animation instance

Animation:onStart(callback)

Registers a callback for the start event

Parameters

  • callback function The callback function to register

Animation:onUpdate(callback)

Registers a callback for the update event

Parameters

  • callback function The callback function to register

Returns

  • Animation self The animation instance

Animation:onComplete(callback)

Registers a callback for the complete event

Parameters

  • callback function The callback function to register

Returns

  • Animation self The animation instance

Animation:addAnimation(type, args, duration, easing)

Adds a new animation to the sequence

Parameters

  • type string The type of animation
  • args table The animation arguments
  • duration number The duration in seconds
  • easing string The easing function name

Animation:start()

Starts the animation

Returns

  • Animation self The animation instance

Animation:event(event, timerId)

The event handler for the animation (listens to timer events)

Parameters

  • event string The event type
  • timerId number The timer ID

Animation:stop()

Stops the animation immediately: cancels timers, completes running anim instances and clears the element property

VisualElement

Adds additional methods for VisualElement when adding animation plugin

Functions

MethodReturnsDescription
VisualElement.stopAnimation-Convenience to stop animations from the element
VisualElement:animateAnimationCreates a new animation

VisualElement.stopAnimation()

Convenience to stop animations from the element

VisualElement:animate()

Creates a new Animation Object

Returns

  • Animation animation The new animation

Released under the MIT License.