#include <turn.h>
Public Member Functions | |
Turn (Resources::FloorPositionedItem *item) | |
void | onGameLoop () override |
uint32 | getType () const override |
void | saveLoad (ResourceSerializer *serializer) override |
void | setTargetDirection (const Math::Vector3d &direction) |
void | setSpeed (float speed) |
Public Member Functions inherited from Stark::Movement | |
Movement (Resources::ItemVisual *item) | |
virtual void | start () |
virtual void | stop (bool force=false) |
bool | hasEnded () const |
virtual bool | hasReachedDestination () const |
Additional Inherited Members | |
Public Types inherited from Stark::Movement | |
enum | MovementType { kTypeWalk = 1, kTypeFollowPath = 2, kTypeFollowPathLight = 3, kTypeTurn = 4 } |
Static Public Member Functions inherited from Stark::Movement | |
static Movement * | construct (uint32 type, Resources::ItemVisual *item) |
Protected Types inherited from Stark::Movement | |
enum | TurnDirection { kTurnNone, kTurnLeft, kTurnRight } |
Protected Member Functions inherited from Stark::Movement | |
float | computeAngleBetweenVectorsXYPlane (const Math::Vector3d &v1, const Math::Vector3d &v2) const |
Protected Attributes inherited from Stark::Movement | |
const float | _defaultTurnAngleSpeed |
bool | _ended |
Resources::ItemVisual * | _item |
Make an item turn on itself towards a target direction
|
overridevirtual |
Called once per game loop
Implements Stark::Movement.
|
overridevirtual |
Obtain the effective movement type
Implements Stark::Movement.
|
overridevirtual |
Persist / restore the state of the movement so it can be resumed using 'start'
Implements Stark::Movement.
void Stark::Turn::setTargetDirection | ( | const Math::Vector3d & | direction | ) |
Set the direction to turn towards
void Stark::Turn::setSpeed | ( | float | speed | ) |
Override the default rotation speed