Straight Movement
A straight movement follows a rectilinear trajectory. You can define the trajectory as an angle and a speed.
Methods Inherited from movement
Straight movements are particular movement objects. Therefore, they inherit all methods from the type movement.
See movement to know these methods.
Methods of the type straight_movement
The following methods are specific to straight movements.
straight_movement:get_speed()
Returns the speed of this movement.
- Return value (number)
- The speed in pixels per second.
straight_movement:set_speed(speed)
Sets the speed of this movement.
speed
(number)- The new speed in pixels per second.
straight_movement:get_angle()
Returns the angle of the trajectory in radians.
East is 0
, North is math.pi / 2
, West is math.pi
, South is 3 * math.pi / 2
and any intermediate value is possible.
- Return value (number)
- The angle in radians.
Note
If you prefer a value in a 4-direction system, see movement:get_direction4()
.
straight_movement:set_angle(angle)
Sets the angle of the trajectory in radians.
East is 0
, North is math.pi / 2
, West is math.pi
, South is 3 * math.pi / 2
and any intermediate value is possible. Negative values and values greater to 2 * math.pi
are also accepted.
angle
(number)- The new angle in radians.
straight_movement:get_max_distance()
Returns the maximum distance of this movement.
The movement will stop when this distance is reached.
- Return value (number)
- The maximum distance in pixels (
0
means no limit).
straight_movement:set_max_distance(max_distance)
Sets the maximum distance of this movement.
The movement will stop when this distance is reached.
max_distance
(number)- The maximum distance in pixels (
0
means no limit).
straight_movement:is_smooth()
Returns whether this movement adjusts its trajectory when an obstacle of the map is reached. This property has no effect if the movement is not attached to a map entity or if the movement ignores obstacles.
- Return value (boolean)
true
if this movement is smooth.
straight_movement:set_smooth([smooth])
Sets whether this movement should adjust its trajectory when an obstacle of the map is reached. This property has no effect if the movement is not attached to a map entity or if the movement ignores obstacles.
smooth
(boolean, optional)true
to make this movement smooth. No value meanstrue
.
Events Inherited from movement
Straight movements are particular movement objects. Therefore, they inherit all events from the type movement.
See movement to know these events.