GE Lua Documentation

Press F to search!

extractVehicleData

Definition


-- @/lua/ge/ge_utils.lua:1257

function extractVehicleData(vid)
  local campaign = campaign_campaigns and campaign_campaigns.getCampaign()
  local vehicleData = campaign and campaign.state.userVehicle
  if not vehicleData then
    local vehicle = scenetree.findObjectById(vid)
    if not vehicle then
      log('W',logTag, 'there is no vehicle with id: '..tostring(vid))
      return
    end
    if not vehicle:isSubClassOf('BeamNGVehicle') then
      log('W',logTag, 'Invalid vehicle id detected. id: '..tostring(vid))
      return
    end

    vehicleData = {}
    local _, config, _ = path.splitWithoutExt(vehicle.partConfig)
    vehicleData.config = config
    vehicleData.licenseText = vehicle:getDynDataFieldbyName("licenseText", 0)
    vehicleData.color = string.format("%0.2f %0.2f %0.2f %0.2f", vehicle.color.x, vehicle.color.y, vehicle.color.z, vehicle.color.w)
    vehicleData.model = vehicle.JBeam
    vehicleData.vehicleName = vehicle:getField('name', '')
  end

  return vehicleData
end

Callers

@/lua/ge/extensions/campaign/campaigns.lua
  local vid = be:getPlayerVehicleID(0)
  local vehicleData = extractVehicleData(vid)

  local vehicleData = extractVehicleData(vid)
  local spawningData = createPlayerSpawningData(vehicleData.model, vehicleData.config, vehicleData.color, vehicleData.licenseText)
    local vid = be:getPlayerVehicleID(0)
    local vehicleData = extractVehicleData(vid)
    local spawningData = createPlayerSpawningData(vehicleData.model, vehicleData.config, vehicleData.color, vehicleData.licenseText)
@/lua/ge/extensions/campaign/exploration.lua
      local entryPointParts = campaign_campaignsLoader.splitFieldByToken(locationData.info.entryPoint, '.')
      local vehicleData = extractVehicleData(vehicleID)
      local spawningData = createPlayerSpawningData(vehicleData.model, vehicleData.config, vehicleData.color, vehicleData.licenseText)
@/lua/ge/extensions/scenario/scenarios.lua
    local vid = vehicle.obj:getId()
    local vehicleData = extractVehicleData(vid)
    scenario.multiseatDeletedVehicles[vehicleName] = vehicleData
          local vehicleId = vehicle.obj:getId()
          local vehicleData = extractVehicleData(vehicleId)
          -- log('I', "tickPreStart", '     checking : vehicle '..tostring(vehicle.obj:getId()).. '  '..dumps(vehicleData))
@/lua/ge/extensions/flowgraph/nodes/vehicle/vehicleData.lua
    -- disabled due to not working
      local extract = extractVehicleData(veh:getId())
      self.pinOut.model.value = extract.model