CUGL 2.3
Cornell University Game Library
|
#include <CUMoveAction.h>
Public Member Functions | |
MoveTo () | |
~MoveTo () | |
void | dispose () |
bool | init () |
bool | init (const Vec2 &target) |
bool | init (const Vec2 &target, float time) |
const Vec2 & | getTarget () const |
void | setTarget (const Vec2 &target) |
virtual std::shared_ptr< Action > | clone () override |
virtual void | load (const std::shared_ptr< SceneNode > &target, Uint64 *state) override |
virtual void | update (const std::shared_ptr< SceneNode > &target, Uint64 *state, float dt) override |
virtual std::string | toString (bool verbose=false) const override |
Public Member Functions inherited from cugl::scene2::Action | |
Action () | |
~Action () | |
float | getDuration () const |
void | setDuration (float time) |
virtual std::shared_ptr< Action > | clone () |
virtual void | load (const std::shared_ptr< SceneNode > &target, Uint64 *state) |
virtual void | update (const std::shared_ptr< SceneNode > &target, Uint64 *state, float dt) |
virtual std::string | toString (bool verbose=false) const |
operator std::string () const | |
Static Public Member Functions | |
static std::shared_ptr< MoveTo > | alloc () |
static std::shared_ptr< MoveTo > | alloc (const Vec2 &target) |
static std::shared_ptr< MoveTo > | alloc (const Vec2 &target, float time) |
Protected Attributes | |
Vec2 | _target |
Protected Attributes inherited from cugl::scene2::Action | |
float | _duration |
This action represents a movement to a given position
An action contains only the definition of the transformation; it does not contain any attribute of the target. Hence, an action it can be reapplied to different targets.
By itself, an action does nothing. It only specifies an action that may take place. To use an action, it must be passed to the ActionManager. The manager will create an action instance and animate that instance. While an action may be reused many times, an action instance corresponds to a single animation.
|
inline |
Creates an uninitialized movement action.
NEVER USE A CONSTRUCTOR WITH NEW. If you want to allocate an object on the heap, use one of the static constructors instead.
|
inline |
Deletes this action instance, disposing all resources
|
inlinestatic |
Returns a newly allocated, instantaneous motion towards the origin.
The target position is set to (0.0, 0.0), meaning that this action will move a node towards the origin. The animation will be instantaneous.
Returns a newly allocated, instantaneous motion towards the given position.
The animation will be instantaneous.
target | The target position |
|
inlinestatic |
Returns a newly allocated motion towards the given position.
The animation will take place over the given number of seconds.
target | The target position |
time | The animation duration |
|
overridevirtual |
Returns a newly allocated copy of this Action.
Reimplemented from cugl::scene2::Action.
|
inline |
Disposes all of the resources used by this action.
A disposed action can be safely reinitialized.
|
inline |
Returns the movement target for this action.
Changing this value for an actively animating action can have undefined effects.
|
inline |
Initializes an instantaneous movement towards the origin.
The target position is set to (0.0, 0.0), meaning that this action will move a node towards the origin. The animation will be instantaneous.
|
inline |
Initializes an instantaneous movement towards towards the given position.
The animation will be instantaneous.
target | The target position |
bool cugl::scene2::MoveTo::init | ( | const Vec2 & | target, |
float | time | ||
) |
Initializes a movement animation towards towards the given position.
The animation will take place over the given number of seconds.
target | The target position |
time | The animation duration |
|
overridevirtual |
Prepares a target for action
The important state of the target is stored in the given state parameter. The semantics of this state is action-dependent.
target | The node to act on |
state | The relevant node state |
Reimplemented from cugl::scene2::Action.
|
inline |
Sets the movement target for this action.
Changing this value for an actively animating action can have undefined effects.
target | the movement target for this action. |
|
overridevirtual |
Returns a string representation of the action for debugging purposes.
If verbose is true, the string will include class information. This allows us to unambiguously identify the class.
verbose | Whether to include class information |
Reimplemented from cugl::scene2::Action.
|
overridevirtual |
Executes an action on the given target node.
The important state of the target is stored in the given state parameter. The semantics of this state is action-dependent.
target | The node to act on |
state | The relevant node state |
dt | The elapsed time to animate. |
Reimplemented from cugl::scene2::Action.
|
protected |
The target destination for this action