Skip to content

Class: CCar

Driveable car and mounted weapon holder.

Source

src/xrGame/CarScript.cpp, CCar binding.

Custom Constructor

CCar

Remarks

Vehicle and mounted-weapon holder APIs require a car object. Use game_object.get_car() or holder casts before calling these methods from shared object code.

Extends

Implements

Constructors

Constructor

ts
new CCar(): CCar;

Create a car object wrapper.

Returns

CCar

Overrides

CGameObject.constructor

Methods

_construct()

ts
_construct(): DLL_Pure;

Construct engine-side object state.

Returns

DLL_Pure

Constructed base object.

Remarks

Lifecycle hook used by the engine. Calling it from gameplay scripts can reinitialize native state unexpectedly.

Inherited from

CGameObject._construct


Action()

ts
Action(id: number, flags: number): void;

Send a mounted-weapon action.

Parameters

ParameterTypeDescription
idnumberWeapon action id.
flagsnumberAction flags.

Returns

void

Remarks

For eWpnFire, eWpnActivate, and eWpnAutoFire, native code treats flags === 1 as enabled/start and any other value as disabled/stop. eWpnToDefaultDir resets the weapon direction to its bind orientation.

Implementation of

holder.Action


CanHit()

ts
CanHit(): boolean;

Returns

boolean

Whether the mounted weapon can hit its current target.


CarExplode()

ts
CarExplode(): void;

Trigger car explosion.

Returns

void


ChangefFuel()

ts
ChangefFuel(fuel: number): void;

Change current fuel by a delta and clamp it to the tank range.

Parameters

ParameterTypeDescription
fuelnumberFuel delta.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073

Remarks

Negative deltas cannot reduce fuel below 0; positive deltas cannot increase it above GetfFuelTank(). Use SetfFuel() or set_fuel() when the script needs to assign an absolute fuel value.


ChangefHealth()

ts
ChangefHealth(value: number): void;

Change vehicle health by a delta and clamp it to the normalized health range.

Parameters

ParameterTypeDescription
valuenumberHealth delta.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073

Remarks

The native implementation clamps the result to 0..1. Use SetfHealth() when assigning an absolute health value.


CurrentVel()

ts
CurrentVel(): vector;

Returns

vector

Current velocity vector.


engaged()

ts
engaged(): boolean;

Returns

boolean

Whether the actor is currently attached to this holder.

Implementation of

holder.engaged


ExplodeTime()

ts
ExplodeTime(): number;

Returns

number

Scheduled delayed-fuse explosion time in milliseconds, or 0 when no fuse was initialized.


FireDirDiff()

ts
FireDirDiff(): number;

Returns

number

Difference between current and desired weapon fire direction.


get_fuel()

ts
get_fuel(): number;

Returns

number

Amount of fuel in vehicle instance.

Since

OpenXRay 2026-01-01, e3b0e3c5, PR #2028


get_fuel_consumption()

ts
get_fuel_consumption(): number;

Returns

number

Fuel consumption rate of vehicle instance.

Since

OpenXRay 2026-01-01, e3b0e3c5, PR #2028


get_fuel_tank()

ts
get_fuel_tank(): number;

Returns

number

Fuel tank size.

Since

OpenXRay 2026-01-01, e3b0e3c5, PR #2028


getEnabled()

ts
getEnabled(): boolean;

Returns

boolean

Whether the object is enabled in the client object loop.

Inherited from

CGameObject.getEnabled


GetfFuel()

ts
GetfFuel(): number;

Returns

number

Amount of fuel in vehicle instance.

Since

OpenXRay 2024-08-09, e08b8073


GetfFuelConsumption()

ts
GetfFuelConsumption(): number;

Returns

number

Fuel consumption rate of vehicle instance.

Since

OpenXRay 2024-08-09, e08b8073


GetfFuelTank()

ts
GetfFuelTank(): number;

Returns

number

Fuel tank size (max possible amount of fuel at time).

Since

OpenXRay 2024-08-09, e08b8073


GetfHealth()

ts
GetfHealth(): number;

Returns

number

Vehicle health value.


GetRPM()

ts
GetRPM(): number;

Returns

number

Current vehicle RPM value (speed).

Since

OpenXRay 2024-08-09, e08b8073


getVisible()

ts
getVisible(): boolean;

Returns

boolean

Whether the object is visible.

Inherited from

CGameObject.getVisible


HandBreak()

ts
HandBreak(): void;

Set vehicle hand break in active state.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


HasWeapon()

ts
HasWeapon(): boolean;

Returns

boolean

Whether vehicle has mounted weapon.


IsActiveEngine()

ts
IsActiveEngine(): boolean;

Returns

boolean

Whether vehicle engine is active at the moment.

Since

OpenXRay 2024-08-09, e08b8073


IsObjectVisible()

ts
IsObjectVisible(game_object: game_object): boolean;

Check whether an object is visible from the car weapon.

Parameters

ParameterTypeDescription
game_objectgame_objectObject to test.

Returns

boolean

Whether the object is visible.


net_Export()

ts
net_Export(net_packet: net_packet): void;

Export network state to a packet.

Parameters

ParameterTypeDescription
net_packetnet_packetDestination network packet.

Returns

void

Inherited from

CGameObject.net_Export


net_Import()

ts
net_Import(net_packet: net_packet): void;

Import network state from a packet.

Parameters

ParameterTypeDescription
net_packetnet_packetSource network packet.

Returns

void

Inherited from

CGameObject.net_Import


net_Spawn()

ts
net_Spawn(cse_abstract: cse_abstract): boolean;

Spawn the client object from its server object.

Parameters

ParameterTypeDescription
cse_abstractcse_abstractServer object used for spawn data.

Returns

boolean

Whether spawn succeeded.

Remarks

Lifecycle hook used during network spawn. Return false to reject spawn in custom subclasses.

Inherited from

CGameObject.net_Spawn


PlayDamageParticles()

ts
PlayDamageParticles(): void;

Start car damage particles.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


ReleaseHandBreak()

ts
ReleaseHandBreak(): void;

Deactivate vehicle hand break.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


set_fuel()

ts
set_fuel(fuel: number): void;

Set current fuel amount directly.

Parameters

ParameterTypeDescription
fuelnumberFuel amount.

Returns

void

Since

OpenXRay 2026-01-01, e3b0e3c5, PR #2028

Remarks

Lowercase alias for SetfFuel().


set_fuel_consumption()

ts
set_fuel_consumption(consumption: number): void;

Set fuel consumption rate.

Parameters

ParameterTypeDescription
consumptionnumberFuel consumption rate.

Returns

void

Since

OpenXRay 2026-01-01, e3b0e3c5, PR #2028


set_fuel_tank()

ts
set_fuel_tank(fuel: number): void;

Set fuel tank capacity.

Parameters

ParameterTypeDescription
fuelnumberFuel tank capacity.

Returns

void

Since

OpenXRay 2026-01-01, e3b0e3c5, PR #2028


SetEnterLocked()

ts
SetEnterLocked(is_enabled: boolean): void;

Lock or unlock entering the car.

Parameters

ParameterTypeDescription
is_enabledbooleanWhether entering is locked.

Returns

void

Implementation of

holder.SetEnterLocked


SetExitLocked()

ts
SetExitLocked(is_enabled: boolean): void;

Lock or unlock exiting the car.

Parameters

ParameterTypeDescription
is_enabledbooleanWhether exiting is locked.

Returns

void

Implementation of

holder.SetExitLocked


SetExplodeTime()

ts
SetExplodeTime(time: number): void;

Set delayed-fuse explosion time.

Parameters

ParameterTypeDescription
timenumberExplosion time in milliseconds.

Returns

void

Remarks

The native method accepts milliseconds and converts them to the delayed action fuse timeout.


SetfFuel()

ts
SetfFuel(fuel: number): void;

Set current fuel amount directly.

Parameters

ParameterTypeDescription
fuelnumberFuel amount.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073

Remarks

This is an absolute setter and does not clamp against tank capacity.


SetfFuelConsumption()

ts
SetfFuelConsumption(consumption: number): void;

Set fuel consumption rate.

Parameters

ParameterTypeDescription
consumptionnumberFuel consumption rate.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


SetfFuelTank()

ts
SetfFuelTank(fuel: number): void;

Set fuel tank capacity.

Parameters

ParameterTypeDescription
fuelnumberFuel tank capacity.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


SetfHealth()

ts
SetfHealth(health: number): number;

Set vehicle health directly.

Parameters

ParameterTypeDescription
healthnumberNew health value.

Returns

number

Applied health value.

Remarks

This forwards to the entity health setter and returns the applied value. ChangefHealth() is the clamped delta helper.


SetParam()

Call Signature

ts
SetParam(id: number, vector: vector): void;

Set a mounted-weapon vector parameter.

Parameters
ParameterTypeDescription
idnumberWeapon parameter id.
vectorvectorParameter value.
Returns

void

Remarks

The script binding exposes the vector overload. Native code handles eWpnDesiredPos by aiming the weapon at the provided world position; other ids are ignored by this overload.

Implementation of

holder.SetParam

Call Signature

ts
SetParam(id: 2, vector: vector): void;

Set mounted weapon desired target position.

Parameters
ParameterTypeDescription
id2CCar.eWpnDesiredPos.
vectorvectorTarget world position.
Returns

void

Implementation of
ts
holder.SetParam

SetRPM()

ts
SetRPM(rpm: number): void;

Set current vehicle RPM value (speed).

Parameters

ParameterTypeDescription
rpmnumberRPM value to apply.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


StartEngine()

ts
StartEngine(): void;

Start vehicle engine.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


StopDamageParticles()

ts
StopDamageParticles(): void;

Stop car damage particles.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


StopEngine()

ts
StopEngine(): void;

Stop vehicle engine.

Returns

void

Since

OpenXRay 2024-08-09, e08b8073


use()

ts
use(object: CGameObject): boolean;

Use another object through the engine interaction path.

Parameters

ParameterTypeDescription
objectCGameObjectObject being used.

Returns

boolean

Whether the use action was handled.

Inherited from

CGameObject.use


Visual()

ts
Visual(): IXR_IRender_Visual;

Returns

IXR_IRender_Visual

Render visual assigned to the object.

Inherited from

CGameObject.Visual

Properties

__name

ts
readonly __name: string;

LuaBind instance constructor name.

Inherited from

CGameObject.__name


__name

ts
readonly static __name: string;

LuaBind class constructor name.

Inherited from

CGameObject.__name


eWpnActivate

ts
readonly static eWpnActivate: 3;

Engine enum value for CCar.eWpnActivate.


eWpnAutoFire

ts
readonly static eWpnAutoFire: 5;

Engine enum value for CCar.eWpnAutoFire.


eWpnDesiredDir

ts
readonly static eWpnDesiredDir: 1;

Engine enum value for CCar.eWpnDesiredDir.


eWpnDesiredPos

ts
readonly static eWpnDesiredPos: 2;

Engine enum value for CCar.eWpnDesiredPos.


eWpnFire

ts
readonly static eWpnFire: 4;

Engine enum value for CCar.eWpnFire.


eWpnToDefaultDir

ts
readonly static eWpnToDefaultDir: 6;

Engine enum value for CCar.eWpnToDefaultDir.