18 #ifndef INCLUDED_ICMPUNITMOTION
19 #define INCLUDED_ICMPUNITMOTION
137 #endif // INCLUDED_ICMPUNITMOTION
A simple fixed-point number class.
virtual void StopMoving()=0
Stop moving immediately.
virtual bool MoveToTargetRange(entity_id_t target, entity_pos_t minRange, entity_pos_t maxRange)=0
Attempt to walk into range of a given target entity, or as close as possible.
virtual void SetFacePointAfterMove(bool facePointAfterMove)=0
Set whether the unit will turn to face the target point after finishing moving.
virtual fixed GetRunSpeed()=0
Get the default speed that this unit will have when running, in metres per second.
virtual bool MoveToPointRange(entity_pos_t x, entity_pos_t z, entity_pos_t minRange, entity_pos_t maxRange)=0
Attempt to walk into range of a to a given point, or as close as possible.
virtual bool IsInTargetRange(entity_id_t target, entity_pos_t minRange, entity_pos_t maxRange)=0
Determine whether the target is within the given range, using the same measurement as MoveToTargetRan...
Motion interface for entities with complex movement capabilities.
virtual void MoveToFormationOffset(entity_id_t target, entity_pos_t x, entity_pos_t z)=0
Join a formation, and move towards a given offset relative to the formation controller entity...
virtual void SetUnitRadius(fixed radius)=0
Override the default obstruction radius, used for planning paths and checking for collisions...
virtual void SetSpeed(fixed speed)=0
Set the current movement speed.
virtual fixed GetWalkSpeed()=0
Get the default speed that this unit will have when walking, in metres per second.
#define DECLARE_INTERFACE_TYPE(iname)
virtual void SetDebugOverlay(bool enabled)=0
Toggle the rendering of debug info.
virtual ICmpPathfinder::pass_class_t GetPassabilityClass()=0
Get the unit's passability class.
virtual bool IsInPointRange(entity_pos_t x, entity_pos_t z, entity_pos_t minRange, entity_pos_t maxRange)=0
Determine wether the givven point is within the given range, using the same measurement as MoveToPoin...
virtual fixed GetCurrentSpeed()=0
Get the current movement speed.
virtual bool IsMoving()=0
Get whether the unit is moving.
virtual void FaceTowardsPoint(entity_pos_t x, entity_pos_t z)=0
Turn to look towards the given point.
u32 entity_id_t
Entity ID type.