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.