Module Positionable

Wrapper -- This module contains the POSITIONABLE class.


Global(s)

POSITIONABLE

POSITIONABLE class, extends Identifiable#IDENTIFIABLE

The POSITIONABLE class is a wrapper class to handle the POSITIONABLE objects:

  • Support all DCS APIs.

Type DCSPositionable

DCSPositionable.id_

The ID of the controllable in DCS

Type POSITIONABLE

POSITIONABLE:GetAltitude()

Returns the altitude of the POSITIONABLE.

POSITIONABLE:GetBeacon()

Create a Radio#BEACON, to allow this POSITIONABLE to broadcast beacon signals

POSITIONABLE:GetBoundingBox()

Get the bounding box of the underlying POSITIONABLE DCS Object.

POSITIONABLE:GetCoordinate()

Returns a COORDINATE object indicating the point in 3D of the POSITIONABLE within the mission.

POSITIONABLE:GetHeading()

Returns the POSITIONABLE heading in degrees.

POSITIONABLE:GetHeight()

Returns the POSITIONABLE height in meters.

POSITIONABLE:GetLaserCode()

Get the last assigned laser code

POSITIONABLE:GetMessage(Message, Duration, Name)

Returns a message with the callsign embedded (if there is one).

POSITIONABLE:GetMessageText(Message, Name)

Returns the message text with the callsign embedded (if there is one).

POSITIONABLE:GetPointVec2()

Returns a POINT_VEC2 object indicating the point in 2D of the POSITIONABLE within the mission.

POSITIONABLE:GetPointVec3()

Returns a POINT_VEC3 object indicating the point in 3D of the POSITIONABLE within the mission.

POSITIONABLE:GetPositionVec3()

Returns the DCSTypes#Position3 position vectors indicating the point and direction vectors in 3D of the POSITIONABLE within the mission.

POSITIONABLE:GetRadio()

Create a Radio#RADIO, to allow radio transmission for this POSITIONABLE.

POSITIONABLE:GetRandomVec3(Radius)

Returns a random DCSTypes#Vec3 vector within a range, indicating the point in 3D of the POSITIONABLE within the mission.

POSITIONABLE:GetSpot()

Get the Spot

POSITIONABLE:GetVec2()

Returns the DCSTypes#Vec2 vector indicating the point in 2D of the POSITIONABLE within the mission.

POSITIONABLE:GetVec3()

Returns the DCSTypes#Vec3 vector indicating the 3D vector of the POSITIONABLE within the mission.

POSITIONABLE:GetVelocity()

Returns the POSITIONABLE velocity vector.

POSITIONABLE:GetVelocityKMH()

Returns the POSITIONABLE velocity in km/h.

POSITIONABLE:InAir()

Returns true if the POSITIONABLE is in the air.

POSITIONABLE:IsAboveRunway()

Returns if the Positionable is located above a runway.

POSITIONABLE:IsLasing()

Check if the POSITIONABLE is lasing a target

POSITIONABLE:LaseOff()

Stop Lasing a POSITIONABLE

POSITIONABLE:LaseUnit(Target, LaserCode, Duration)

Start Lasing a POSITIONABLE

POSITIONABLE.LaserCode

The last assigned laser code.

POSITIONABLE:Message(Message, Duration, Name)

Send a message to the players in the Group.

POSITIONABLE:MessageToAll(Message, Duration, Name)

Send a message to all coalitions.

POSITIONABLE:MessageToBlue(Message, Duration, Name)

Send a message to the blue coalition.

POSITIONABLE:MessageToClient(Message, Duration, Client, Name)

Send a message to a client.

POSITIONABLE:MessageToCoalition(Message, Duration, MessageCoalition)

Send a message to a coalition.

POSITIONABLE:MessageToGroup(Message, Duration, MessageGroup, Name)

Send a message to a Group.

POSITIONABLE:MessageToRed(Message, Duration, Name)

Send a message to the red coalition.

POSITIONABLE:MessageToSetGroup(Message, Duration, MessageSetGroup, Name)

Send a message to a Set#SET_GROUP.

POSITIONABLE:New(PositionableName)

Create a new POSITIONABLE from a DCSPositionable

POSITIONABLE.PositionableName

The name of the measurable.

POSITIONABLE.Spot

The laser Spot.

Global(s)

#POSITIONABLE POSITIONABLE

POSITIONABLE class, extends Identifiable#IDENTIFIABLE

The POSITIONABLE class is a wrapper class to handle the POSITIONABLE objects:

  • Support all DCS APIs.
  • Enhance with POSITIONABLE specific APIs not in the DCS API set.
  • Manage the "state" of the POSITIONABLE.

POSITIONABLE constructor

The POSITIONABLE class provides the following functions to construct a POSITIONABLE instance:

POSITIONABLE methods

The following methods can be used to identify an measurable object:

Type Positionable

Type DCSPositionable

A DCSPositionable

Field(s)

DCSPositionable.id_

The ID of the controllable in DCS

Type POSITIONABLE

The POSITIONABLE class

Field(s)

POSITIONABLE:GetAltitude()

Returns the altitude of the POSITIONABLE.

Return values

  1. Dcs.DCSTypes#Distance: The altitude of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetBeacon()

Create a Radio#BEACON, to allow this POSITIONABLE to broadcast beacon signals

Return value

#RADIO: Radio

POSITIONABLE:GetBoundingBox()

Get the bounding box of the underlying POSITIONABLE DCS Object.

Return values

  1. Dcs.DCSTypes#Distance: The bounding box of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetCoordinate()

Returns a COORDINATE object indicating the point in 3D of the POSITIONABLE within the mission.

Return values

  1. Core.Point#COORDINATE: The COORDINATE of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetHeading()

Returns the POSITIONABLE heading in degrees.

Return values

  1. #number: The POSTIONABLE heading

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetHeight()

Returns the POSITIONABLE height in meters.

Return values

  1. Dcs.DCSTypes#Vec3: The height of the positionable.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetLaserCode()

Get the last assigned laser code

Return value

#number: The laser code

POSITIONABLE:GetMessage(Message, Duration, Name)

Returns a message with the callsign embedded (if there is one).

Parameters

  • #string Message : The message text

  • Dcs.DCSTypes#Duration Duration : The duration of the message.

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

Return value

Core.Message#MESSAGE:

POSITIONABLE:GetMessageText(Message, Name)

Returns the message text with the callsign embedded (if there is one).

Parameters

  • #string Message : The message text

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

Return value

#string: The message text

POSITIONABLE:GetPointVec2()

Returns a POINT_VEC2 object indicating the point in 2D of the POSITIONABLE within the mission.

Return values

  1. Core.Point#POINT_VEC2: The 2D point vector of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetPointVec3()

Returns a POINT_VEC3 object indicating the point in 3D of the POSITIONABLE within the mission.

Return values

  1. Core.Point#POINT_VEC3: The 3D point vector of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetPositionVec3()

Returns the DCSTypes#Position3 position vectors indicating the point and direction vectors in 3D of the POSITIONABLE within the mission.

Return values

  1. Dcs.DCSTypes#Position: The 3D position vectors of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetRadio()

Create a Radio#RADIO, to allow radio transmission for this POSITIONABLE.

Set parameters with the methods provided, then use RADIO:Broadcast() to actually broadcast the message

Return value

#RADIO: Radio

POSITIONABLE:GetRandomVec3(Radius)

Returns a random DCSTypes#Vec3 vector within a range, indicating the point in 3D of the POSITIONABLE within the mission.

Parameter

  • #number Radius :

Return values

  1. Dcs.DCSTypes#Vec3: The 3D point vector of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

Usage:


-- If Radius is ignored, returns the Dcs.DCSTypes#Vec3 of first UNIT of the GROUP
POSITIONABLE:GetSpot()

Get the Spot

Return value

Core.Spot#SPOT: The Spot

POSITIONABLE:GetVec2()

Returns the DCSTypes#Vec2 vector indicating the point in 2D of the POSITIONABLE within the mission.

Return values

  1. Dcs.DCSTypes#Vec2: The 2D point vector of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetVec3()

Returns the DCSTypes#Vec3 vector indicating the 3D vector of the POSITIONABLE within the mission.

Return values

  1. Dcs.DCSTypes#Vec3: The 3D point vector of the POSITIONABLE.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetVelocity()

Returns the POSITIONABLE velocity vector.

Return values

  1. Dcs.DCSTypes#Vec3: The velocity vector

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:GetVelocityKMH()

Returns the POSITIONABLE velocity in km/h.

Return values

  1. #number: The velocity in km/h

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:InAir()

Returns true if the POSITIONABLE is in the air.

Polymorphic, is overridden in GROUP and UNIT.

Return values

  1. #boolean: true if in the air.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:IsAboveRunway()

Returns if the Positionable is located above a runway.

Return values

  1. #boolean: true if Positionable is above a runway.

  2. #nil: The POSITIONABLE is not existing or alive.

POSITIONABLE:IsLasing()

Check if the POSITIONABLE is lasing a target

Return value

#boolean: true if it is lasing a target

POSITIONABLE:LaseOff()

Stop Lasing a POSITIONABLE

Return value

#POSITIONABLE:

POSITIONABLE:LaseUnit(Target, LaserCode, Duration)

Start Lasing a POSITIONABLE

Parameters

Return value

Core.Spot#SPOT:

#number POSITIONABLE.LaserCode

The last assigned laser code.

POSITIONABLE:Message(Message, Duration, Name)

Send a message to the players in the Group.

The message will appear in the message area. The message will begin with the callsign of the group and the type of the first unit sending the message.

Parameters

  • #string Message : The message text

  • Dcs.DCSTypes#Duration Duration : The duration of the message.

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

POSITIONABLE:MessageToAll(Message, Duration, Name)

Send a message to all coalitions.

The message will appear in the message area. The message will begin with the callsign of the group and the type of the first unit sending the message.

Parameters

  • #string Message : The message text

  • Dcs.DCSTypes#Duration Duration : The duration of the message.

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

POSITIONABLE:MessageToBlue(Message, Duration, Name)

Send a message to the blue coalition.

The message will appear in the message area. The message will begin with the callsign of the group and the type of the first unit sending the message.

Parameters

  • #string Message : The message text

  • Dcs.DCSTypes#Duration Duration : The duration of the message.

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

POSITIONABLE:MessageToClient(Message, Duration, Client, Name)

Send a message to a client.

The message will appear in the message area. The message will begin with the callsign of the group and the type of the first unit sending the message.

Parameters

  • #string Message : The message text

  • Dcs.DCSTypes#Duration Duration : The duration of the message.

  • Wrapper.Client#CLIENT Client : The client object receiving the message.

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

POSITIONABLE:MessageToCoalition(Message, Duration, MessageCoalition)

Send a message to a coalition.

The message will appear in the message area. The message will begin with the callsign of the group and the type of the first unit sending the message.

Parameters

POSITIONABLE:MessageToGroup(Message, Duration, MessageGroup, Name)

Send a message to a Group.

The message will appear in the message area. The message will begin with the callsign of the group and the type of the first unit sending the message.

Parameters

  • #string Message : The message text

  • Dcs.DCSTypes#Duration Duration : The duration of the message.

  • Wrapper.Group#GROUP MessageGroup : The GROUP object receiving the message.

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

POSITIONABLE:MessageToRed(Message, Duration, Name)

Send a message to the red coalition.

The message will appear in the message area. The message will begin with the callsign of the group and the type of the first unit sending the message.

Parameters

  • #string Message : The message text

  • Dcs.DCSTYpes#Duration Duration : The duration of the message.

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

POSITIONABLE:MessageToSetGroup(Message, Duration, MessageSetGroup, Name)

Send a message to a Set#SET_GROUP.

The message will appear in the message area. The message will begin with the callsign of the group and the type of the first unit sending the message.

Parameters

  • #string Message : The message text

  • Dcs.DCSTypes#Duration Duration : The duration of the message.

  • Core.Set#SET_GROUP MessageSetGroup : The SET_GROUP collection receiving the message.

  • #string Name : (optional) The Name of the sender. If not provided, the Name is the type of the Positionable.

POSITIONABLE:New(PositionableName)

Create a new POSITIONABLE from a DCSPositionable

Parameter

Return value

#POSITIONABLE: self

#string POSITIONABLE.PositionableName

The name of the measurable.

Core.Spot#SPOT POSITIONABLE.Spot

The laser Spot.

Type RADIO