Package arc.scene.actions
Class DelegateAction
java.lang.Object
arc.scene.Action
arc.scene.actions.DelegateAction
- All Implemented Interfaces:
Pool.Poolable
- Direct Known Subclasses:
AfterAction
,DelayAction
,RepeatAction
,TimeScaleAction
Base class for an action that wraps another action.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal boolean
act
(float delta) Updates the action based on time.protected abstract boolean
delegate
(float delta) void
reset()
Resets the optional state of this action to as if it were newly created, allowing the action to be pooled and reused.void
restart()
Sets the state of the action so it can be run again.void
Sets the wrapped action.void
Sets the actor this action is attached to.void
Sets the actor this action will manipulate.toString()
-
Field Details
-
action
-
-
Constructor Details
-
DelegateAction
public DelegateAction()
-
-
Method Details
-
getAction
-
setAction
Sets the wrapped action. -
delegate
protected abstract boolean delegate(float delta) -
act
public final boolean act(float delta) Description copied from class:Action
Updates the action based on time. Typically this is called each frame byElement.act(float)
. -
restart
public void restart()Description copied from class:Action
Sets the state of the action so it can be run again. -
reset
public void reset()Description copied from class:Action
Resets the optional state of this action to as if it were newly created, allowing the action to be pooled and reused. State required to be set for every usage of this action or computed during the action does not need to be reset.The default implementation calls
Action.restart()
.If a subclass has optional state, it must override this method, call super, and reset the optional state.
- Specified by:
reset
in interfacePool.Poolable
- Overrides:
reset
in classAction
-
setActor
Description copied from class:Action
Sets the actor this action is attached to. This also sets thetarget
actor if it is null. This method is called automatically when an action is added to an actor. This method is also called with null when an action is removed from an actor.When set to null, if the action has a
pool
then the action isreturned
to the pool (which callsAction.reset()
) and the pool is set to null. If the action does not have a pool,Action.reset()
is not called.This method is not typically a good place for an action subclass to query the actor's state because the action may not be executed for some time, eg it may be
delayed
. The actor's state is best queried in the first call toAction.act(float)
. For aTemporalAction
, use TemporalAction#begin(). -
setTarget
Description copied from class:Action
Sets the actor this action will manipulate. If no target actor is set,Action.setActor(Element)
will set the target actor when the action is added to an actor. -
toString
-