102 override bool IsAreaAtDoorFree(
int currentSeat,
float maxAllowedObjHeight = 0.5,
float horizontalExtents = 0.5,
float playerHeight = 1.7 )
108 extents[0] = horizontalExtents;
109 extents[1] = playerHeight;
110 extents[2] = horizontalExtents;
114 extents[2] = extents[2] * 6;
118 return IsAreaAtDoorFree( currentSeat, maxAllowedObjHeight, extents, transform );
121 override Shape DebugFreeAreaAtDoor(
int currentSeat,
float maxAllowedObjHeight = 0.5,
float horizontalExtents = 0.5,
float playerHeight = 1.7 )
123 int color =
ARGB(20, 0, 255, 0);
129 extents[0] = horizontalExtents;
130 extents[1] = playerHeight;
131 extents[2] = horizontalExtents;
135 extents[2] = extents[2] * 6;
139 if (!
IsAreaAtDoorFree( currentSeat, maxAllowedObjHeight, extents, transform ))
141 color =
ARGB(20, 255, 0, 0);
145 shape.SetMatrix(transform);
159 for (
int wheelIdx = 0; wheelIdx < wheelCount; wheelIdx++)
198 proto native
void SetThrust(
float in,
float gentle = 0,
float turbo = 0 );
208 proto native
void SetBrake(
float in,
float panic = 0,
bool gentle =
false );
506 proto
void SetThrust(
float in,
float gentle = 0,
float turbo = 0 );
@ SPEED
speed of the boat in km/h
@ ENGINE
indicates if engine is ON
@ PLAYER
indicates if driver is controlled by player
enum CarGearboxType ELEVENTH
CarAutomaticGearboxMode
Enumerated automatic gearbox modes. (native, do not change or extend)
enum CarGearboxType THIRTEENTH
enum CarGearboxType EIGTH
enum CarGearboxType SECOND
enum CarGearboxType FOURTH
enum CarGearboxType NINTH
enum CarGearboxType SIXTEENTH
enum CarGearboxType FIFTH
enum CarGearboxType FIFTEENTH
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
@ DOORS
indicates if doors are open
CarWheelWaterState
Enumerated car wheel water state. (native, do not change or extend)
@ ON_LAND
if the wheel is on or above land
@ UNDER_WATER
if the wheel is under a water plane
@ IN_WATER
if the wheel is partially within some water plane
enum CarGearboxType SEVENTH
enum CarGearboxType SIXTH
CarFluid
Type of vehicle's fluid. (native, do not change or extend)
enum CarGearboxType THIRD
enum CarGearboxType REVERSE
Enumerated vehicle's gears. (native, do not change or extend)
CarGearboxType
Enumerated gearbox types. (native, do not change or extend)
@ AUTOMATIC
automatic transmission with torque converter between engine and gearbox
@ MANUAL
classic manual transmission with friction plates between engine and gearbox
enum CarGearboxType FIRST
enum CarGearboxType TENTH
enum CarGearboxType TWELFTH
enum CarGearboxType FOURTEENTH
enum CarGearboxType NEUTRAL
proto float GetThrust()
Returns the current thrust value in range <0, 1>.
proto float GetSteering()
Returns the current steering value in range <-1, 1>.
proto float GetThrustTurbo()
Returns the current thrust turbo modifier value in range <0, 1>.
proto void SetSteering(float in, bool analog=false)
proto float GetBrake()
Returns the current brake value in range <0, 1>.
proto void SetThrust(float in, float gentle=0, float turbo=0)
proto void ShiftTo(CarGear gear)
proto float GetThrustGentle()
Returns the current thrust gentle modifier value in range <0, 1>.
proto int GetGear()
Returns index of the current gear.
proto void SetBrake(float in, float panic=0)
DEPRECATED class left for backwards compatibility, methods are available on car itself now.
static Shape DrawBox(vector pos1, vector pos2, int color=0x1fff7f7f)
proto native void SetThrust(float in, float gentle=0, float turbo=0)
float OnSound(CarSoundCtrl ctrl, float oldValue)
proto native float GetHandbrake()
Returns the current handbrake value in range <0, 1>.
proto native vector WheelGetContactNormal(int wheelIdx)
proto native void ShiftTo(CarGear gear)
proto native void ShiftUp()
proto native bool WheelHasContact(int wheelIdx)
proto native void SetEnginePos(vector pos)
Override the position of engine (model space)
void OnEngineStop()
Is called every time the engine stops.
proto native void Fill(CarFluid fluid, float amount)
Adds to the specified fluid the specified amount.
proto native float GetThrustTurbo()
Returns the current thrust turbo modifier value in range <0, 1>.
proto native float GetThrustGentle()
Returns the current thrust gentle modifier value in range <0, 1>.
proto native float EngineGetRPM()
Returns engine's rpm value.
proto native void ShiftDown()
proto native float WheelGetAngularVelocity(int wheelIdx)
proto native CarWheelWaterState WheelGetWaterState(int wheelIdx)
float GetSpeedometerAbsolute()
Returns the current speed of the vehicle in km/h. Value is absolute.
proto native void Leak(CarFluid fluid, float amount)
Removes from the specified fluid the specified amount.
proto native float EngineGetRPMIdle()
Returns engine's idle rpm before engine stalls.
proto native int WheelCountPresent()
Number of actually attached wheels (hubs only)
proto native void SetHandbrake(float in)
proto native bool EngineIsOn()
Returns true when engine is running, false otherwise.
proto native void SetBrake(float in, float panic=0, bool gentle=false)
proto native EntityAI WheelGetEntity(int wheelIdx)
proto native CarAutomaticGearboxMode GearboxGetMode()
Returns gearbox mode. This is useful when car has automatic gearbox.
proto native int WheelCount()
How many wheel can be attached to a car (hubs only)
proto native void EngineStart()
Starts the engine.
proto native float EngineGetRPMMin()
Returns engine's min operating rpm.
proto native bool WheelIsAnyLocked()
Returns true if any of the wheels are locked in terms of its movement.
proto native CarController GetController()
DEPRECATED, left for backwards compatibility, the methods of this class are now directly accessible o...
proto native void ForceDirection(vector dir)
proto native void EngineStop()
Stops the engine.
proto native float GetBrake()
Returns the current brake value in range <0, 1>.
proto native void SetSteering(float in, bool analog=false)
proto native float GetThrust()
Returns the current thrust value in range <0, 1>.
proto native float GetClutch()
Returns the current clutch value in range <0, 1>.
proto native vector WheelGetDirection(int wheelIdx)
proto native bool WheelIsLocked(int wheelIdx)
override bool IsAreaAtDoorFree(int currentSeat, float maxAllowedObjHeight=0.5, float horizontalExtents=0.5, float playerHeight=1.7)
void OnContact(string zoneName, vector localPos, IEntity other, Contact data)
proto native void LeakAll(CarFluid fluid)
Removes all the specified fluid from vehicle.
proto native float GetSpeedometer()
Returns the current speed of the vehicle in km/h.
proto native float GetFluidFraction(CarFluid fluid)
proto native vector WheelGetContactPosition(int wheelIdx)
proto native SurfaceInfo WheelGetSurface(int wheelIdx)
proto native int GetGear()
Returns index of the current gear.
proto native CarGearboxType GearboxGetType()
Returns gearbox type. See CarGearboxType enum for more info.
bool DetectFlippedUsingWheels(VehicleFlippedContext ctx, bool disallowSide)
proto native float GetFluidCapacity(CarFluid fluid)
proto native float EngineGetRPMMax()
Returns engine's max rpm before engine blows up.
proto native void ForcePosition(vector pos)
proto native void SetBrakesActivateWithoutDriver(bool activate=true)
void OnGearChanged(int newGear, int oldGear)
override Shape DebugFreeAreaAtDoor(int currentSeat, float maxAllowedObjHeight=0.5, float horizontalExtents=0.5, float playerHeight=1.7)
bool OnBeforeEngineStart()
proto native float EngineGetRPMRedline()
Returns engine's maximal working rpm without damaging the engine.
proto native float GetSteering()
Returns the current steering value in range <-1, 1>.
void OnEngineStart()
Is called every time the engine starts.
proto native vector GetEnginePos()
Get actual position of engine (model space)
proto native int GetGearsCount()
Returns total number of gears.
proto native void SetClutchState(bool in)
void OnFluidChanged(CarFluid fluid, float newValue, float oldValue)
Base native class for all motorized wheeled vehicles.
static float Dot(vector v1, vector v2)
Returns Dot product of vector v1 and vector v2.
@ USER1
Flags for custom usage and filterings.
static proto float AbsFloat(float f)
Returns absolute value.
int ARGB(int a, int r, int g, int b)