Skip to main content

Class: WaitAction

The Action class has static methods for creating actions to be executed by an M2Node.

Extends​

Constructors​

new WaitAction()​

new WaitAction(duration, runDuringTransition): WaitAction

Parameters​

• duration: Futurable

• runDuringTransition: boolean

Returns​

WaitAction

Overrides​

Action.constructor

Defined in​

m2c2kit/packages/core/src/Action.ts:1173

Properties​

duration​

duration: Futurable

Inherited from​

Action.duration

Defined in​

m2c2kit/packages/core/src/Action.ts:39


key?​

optional key: string

Inherited from​

Action.key

Defined in​

m2c2kit/packages/core/src/Action.ts:42


parent?​

optional parent: ActionContainer

Inherited from​

Action.parent

Defined in​

m2c2kit/packages/core/src/Action.ts:41


runDuringTransition​

runDuringTransition: boolean

Inherited from​

Action.runDuringTransition

Defined in​

m2c2kit/packages/core/src/Action.ts:40


running​

running: boolean = false

Inherited from​

Action.running

Defined in​

m2c2kit/packages/core/src/Action.ts:32


runStartTime​

runStartTime: number = -1

Start time of a running action is always known; it is not a Futurable. -1 indicates that the root action has not yet started running.

Inherited from​

Action.runStartTime

Defined in​

m2c2kit/packages/core/src/Action.ts:38


started​

started: boolean = false

Inherited from​

Action.started

Defined in​

m2c2kit/packages/core/src/Action.ts:31


startOffset​

startOffset: Futurable

Inherited from​

Action.startOffset

Defined in​

m2c2kit/packages/core/src/Action.ts:30


type​

type: ActionType = ActionType.Wait

Overrides​

Action.type

Defined in​

m2c2kit/packages/core/src/Action.ts:1171

Accessors​

completed​

Get Signature​

get completed(): boolean

Indicates whether the action has completed.

Returns​

boolean

Set Signature​

set completed(value): void

Parameters​

• value: boolean

Returns​

void

Inherited from​

Action.completed

Defined in​

m2c2kit/packages/core/src/Action.ts:948

Methods​

assignRunStartTimes()​

assignRunStartTimes(action, runStartTime): void

Assigns RunStartTime to all actions in the hierarchy.

Parameters​

• action: Action

the action to assign RunStartTime to

• runStartTime: number

Returns​

void

Remarks​

Uses recursion to handle arbitrary level of nesting parent actions within parent actions.

Inherited from​

Action.assignRunStartTimes

Defined in​

m2c2kit/packages/core/src/Action.ts:651


clone()​

clone(): WaitAction

Clones the action, and any actions it contains, recursively.

Returns​

WaitAction

a clone of the action

Remarks​

We need to clone an action before running it because actions have state that is updated over time such as whether they are running or not, etc. If we didn't clone actions, two nodes reusing the same action would share state. On Action, this method is abstract and is implemented in each subclass.

Overrides​

Action.clone

Defined in​

m2c2kit/packages/core/src/Action.ts:1178


initialize()​

initialize(key?): Action

Prepares the Action for evaluation.

Parameters​

• key?: string

optional string to identify an action

Returns​

Action

action prepared for evaluation

Remarks​

Calculates start times for all actions in the hierarchy and returns a copy of the action that is prepared for evaluation during the update loop.

Inherited from​

Action.initialize

Defined in​

m2c2kit/packages/core/src/Action.ts:58


isParent()​

isParent(action): action is ActionContainer

Type guard that returns true if the action is a parent action.

Parameters​

• action: Action

action to check

Returns​

action is ActionContainer

true if the action is a parent action

Remarks​

Parent actions are Group, Sequence, Repeat, and RepeatForever actions.

Inherited from​

Action.isParent

Defined in​

m2c2kit/packages/core/src/Action.ts:918


restartAction()​

restartAction(action, now): void

Configures action to be run again.

Parameters​

• action: Action

action to restart

• now: number

current time

Returns​

void

Remarks​

This method is called on a repeating action's children when they need to be run again.

Inherited from​

Action.restartAction

Defined in​

m2c2kit/packages/core/src/Action.ts:669


shouldBeRunning()​

shouldBeRunning(now): boolean

Determines if the action should be running.

Parameters​

• now: number

current time

Returns​

boolean

true if the action should be running

Remarks​

An action should be running if current time is in the interval [ start time + start offset, start time + start offset + duration ]

Inherited from​

Action.shouldBeRunning

Defined in​

m2c2kit/packages/core/src/Action.ts:708


custom()​

static custom(options): CustomAction

Creates an action that will execute a callback function.

Parameters​

• options: CustomActionOptions

CustomActionOptions

Returns​

CustomAction

The custom action

Inherited from​

Action.custom

Defined in​

m2c2kit/packages/core/src/Action.ts:750


evaluateAction()​

static evaluateAction(action, node, now, dt): void

Evaluates an action, updating the node's properties as needed.

Parameters​

• action: Action

the Action to be evaluated and possibly run

• node: M2Node

the M2Node that the action will be run on

• now: number

the current elapsed time, from performance.now()

• dt: number

the time since the last frame (delta time)

Returns​

void

Remarks​

This method is called every frame by the M2Node's update() method.

Inherited from​

Action.evaluateAction

Defined in​

m2c2kit/packages/core/src/Action.ts:280


fadeAlpha()​

static fadeAlpha(options): FadeAlphaAction

Creates an action that will change the node's alpha (opacity).

Parameters​

• options: FadeAlphaActionOptions

FadeAlphaActionOptions

Returns​

FadeAlphaAction

The fadeAlpha action

Remarks​

Alpha has multiplicative inheritance. For example, if the node's parent is alpha .5 and this node's action fades alpha to .4, then the node will appear with alpha .2.

Inherited from​

Action.fadeAlpha

Defined in​

m2c2kit/packages/core/src/Action.ts:799


group()​

static group(actions): GroupAction

Create an array of actions that will be run simultaneously.

Parameters​

• actions: Action[]

One or more actions that form the group

Returns​

GroupAction

Remarks​

All actions within the group will begin to run at the same time. The group will be considered completed when the longest-running action has completed.

Inherited from​

Action.group

Defined in​

m2c2kit/packages/core/src/Action.ts:876


move()​

static move(options): MoveAction

Creates an action that will move a node to a point on the screen.

Parameters​

• options: MoveActionOptions

MoveActionOptions

Returns​

MoveAction

The move action

Inherited from​

Action.move

Defined in​

m2c2kit/packages/core/src/Action.ts:721


play()​

static play(options?): PlayAction

Creates an action that will play a sound.

Parameters​

• options?: PlayActionOptions

PlayActionOptions

Returns​

PlayAction

The play action

Remarks​

This action can only be used with a SoundPlayer node. It will throw an error if used with any other node type.

Inherited from​

Action.play

Defined in​

m2c2kit/packages/core/src/Action.ts:766


repeat()​

static repeat(options): RepeatAction

Creates an action that will repeat another action a given number of times.

Parameters​

• options: RepeatActionOptions

RepeatActionOptions

Returns​

RepeatAction

The repeat action

Inherited from​

Action.repeat

Defined in​

m2c2kit/packages/core/src/Action.ts:888


repeatForever()​

static repeatForever(options): RepeatForeverAction

Creates an action that will repeat another action forever.

Parameters​

• options: RepeatForeverActionOptions

RepeatForeverActionOptions

Returns​

RepeatForeverAction

The repeat forever action

Remarks​

A repeat forever action is a special case of a repeat action where the count is set to infinity.

Inherited from​

Action.repeatForever

Defined in​

m2c2kit/packages/core/src/Action.ts:905


rotate()​

static rotate(options): RotateAction

Creates an action that will rotate the node.

Parameters​

• options: RotateActionOptions

RotateActionOptions

Returns​

RotateAction

The rotate action

Remarks​

Rotate actions are applied to their children. In addition to this node's rotate action, all ancestors' rotate actions will also be applied.

Inherited from​

Action.rotate

Defined in​

m2c2kit/packages/core/src/Action.ts:816


scale()​

static scale(options): ScaleAction

Creates an action that will scale the node's size.

Parameters​

• options: ScaleActionOptions

ScaleActionOptions

Returns​

ScaleAction

The scale action

Remarks​

Scaling is relative to any inherited scaling, which is multiplicative. For example, if the node's parent is scaled to 2.0 and this node's action scales to 3.0, then the node will appear 6 times as large as original.

Inherited from​

Action.scale

Defined in​

m2c2kit/packages/core/src/Action.ts:781


sequence()​

static sequence(actions): SequenceAction

Creates an array of actions that will be run in order.

Parameters​

• actions: Action[]

One or more actions that form the sequence

Returns​

SequenceAction

Remarks​

The next action will not begin until the current one has finished. The sequence will be considered completed when the last action has completed.

Inherited from​

Action.sequence

Defined in​

m2c2kit/packages/core/src/Action.ts:860


wait()​

static wait(options): WaitAction

Creates an action that will wait a given duration before it is considered complete.

Parameters​

• options: WaitActionOptions

WaitActionOptions

Returns​

WaitAction

The wait action

Inherited from​

Action.wait

Defined in​

m2c2kit/packages/core/src/Action.ts:737