Skip to content

gg-car.entity overview


Table of contents


utils

GgCarEntity (class)

Signature

export declare class GgCarEntity<VTypeDoc, PTypeDoc, RVEntity> {
  constructor(
    public readonly carProperties: GgCarProperties,
    chassis3D: VTypeDoc['displayObject'] | null,
    chassisBody: PTypeDoc['raycastVehicle']
  )
}

calculateRpmFromCarSpeed (method)

Signature

public calculateRpmFromCarSpeed(): number

setTailLightsOn (method)

Signature

protected setTailLightsOn(value: boolean)

createRaycastVehicle (method)

Signature

protected createRaycastVehicle(
    carProperties: GgCarProperties,
    chassis3D: VTypeDoc['displayObject'] | null,
    chassisBody: PTypeDoc['raycastVehicle'],
  ): RVEntity

onSpawned (method)

Signature

onSpawned(world: Gg3dWorld<VTypeDoc, PTypeDoc>)

updateEngine (method)

Signature

protected updateEngine(delta: number)

resetTo (method)

Signature

public resetTo(
    options: {
      position?: Point3;
      rotation?: Point4;
    } = {},
  )

tickOrder (property)

Signature

readonly tickOrder: number

_rpm$ (property)

Signature

readonly _rpm$: any

_acceleration$ (property)

Signature

_acceleration$: any

_brake$ (property)

Signature

_brake$: any

handBrake$ (property)

Signature

handBrake$: any

raycastVehicle (property)

Signature

readonly raycastVehicle: RVEntity

GgCarProperties (type alias)

Signature

export type GgCarProperties = RVEntityProperties & {
  mpsToRpmFactor?: number
  engine: {
    minRpm: number
    maxRpm: number
    torques: {
      rpm: number
      torque: number
    }[]
    maxRpmIncreasePerSecond: number
    maxRpmDecreasePerSecond: number
  }
  brake: {
    frontAxleForce: number
    rearAxleForce: number
    handbrakeForce: number
  }
  transmission: {
    isAuto: boolean
    reverseGearRatio: number
    gearRatios: number[]
    drivelineEfficiency: number
    finalDriveRatio: number // differential
    upShifts: number[]
    autoHold: boolean
  }
  maxSteerAngle: number
}