Controlling actions
In the previous recipe, you learned some of the basic actions. However, you may want to use more complex actions; for example, rotating a character while moving, or moving a character after jumping. In this recipe, you will learn how to control actions.
How to do it...
Sequencing actions
Sequence
is a series of actions to be executed sequentially. This can be any number of actions.
auto move = MoveBy::create(2.0f, Vec2(100, 0)); auto rotate = RotateBy::create(2.0f, 360.0f); auto action = Sequence::create(move, rotate, nullptr); sprite->runAction(action);
The preceding command will execute the following actions sequentially:
Move a sprite 100px to the right over two seconds
Rotate a sprite clockwise by 360 degree over two seconds
It takes a total of four seconds to execute these commands.
Spawning actions
Spawn
is very similar to Sequence
, except that all actions will run at the same time. You can specify any number of actions at the same time.
auto move = MoveBy::create(2.0f...