GE Lua Documentation

Press F to search!

spawnNewVehicle

Definition


-- @/lua/ge/extensions/core/vehicles.lua:1762

-- called by the UI directly
local function spawnNewVehicle(modelName, opt)
  local state = {
    initVehCollection = initVehicleCollection(),
    vehsToReuse = {},
  }
  resetVehicleCollection(state.initVehCollection)

  -- Get the config data
  opt = deepcopy(opt) or {}
  prepareConfigData(modelName, opt)

  local vehs = _spawnNewVehicle(modelName, opt.config, state, opt, 1)
  local vehCollection = deepcopy(state.initVehCollection)
  buildInitVehCollectionCache(state.initVehCollection, vehCollection)

  if type(vehs) == 'table' then
    return vehs[1], vehs
  else
    return vehs, {vehs}
  end
end

Callers

@/lua/ge/extensions/gameplay/walk.lua
    local config = career_career and career_career.isActive() and "vehicles/unicycle/without_mesh.pc"
    unicycle = extensions.core_vehicles.spawnNewVehicle("unicycle", {pos = pos, visibilityPoint = visibilityPoint, removeTraffic = false, config = config})
  end
@/lua/ge/extensions/editor/trafficManager.lua

      core_vehicles.spawnNewVehicle(vehSelector.model, spawnOptions)
    else -- multiple vehicle spawn

      core_vehicles.spawnNewVehicle(currVeh.jbeam, spawnOptions)
    end

      core_vehicles.spawnNewVehicle(signSelector.model, spawnOptions)
    end
@/lua/ge/extensions/core/levels.lua

    local vehicle = core_vehicles.spawnNewVehicle(model, options)
    if not vehicle then
@/lua/ge/extensions/core/funstuff.lua
  else
    core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions.config)
  end
@/lua/ge/extensions/gameplay/drift/stuntZones/hitPole.lua
  spawningOptions.autoEnterVehicle = false
  self.activeData.veh = core_vehicles.spawnNewVehicle(model, spawningOptions)
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veCrashTester.lua

    local veh = core_vehicles.spawnNewVehicle(randomVehData.model.key, {pos = spawnPos, rot = startDir})
    veh:queueLuaCommand("input.event('parkingbrake', 0, 1)")
@/lua/ge/spawn.lua
    options.rot = quat(spawnPoint:getRotation()) * quat(0,0,1,0)
    player = core_vehicles.spawnNewVehicle(vehicleModel, options)
  end
@/lua/ge/extensions/career/modules/inspectVehicle.lua
  spawnOptions.autoEnterVehicle = false
  local newVeh = core_vehicles.spawnNewVehicle(vehicleInfo.model_key, spawnOptions)
  core_vehicleBridge.executeAction(newVeh,'setIgnitionLevel', 0)
@/lua/ge/extensions/freeroam/dragRace.lua
    options.vehicleName = opponentVehicleName
    opponentVehicle = core_vehicles.spawnNewVehicle(selection.model, options)
    if cinematicCam == true then
@/lua/ge/extensions/gameplay/drift/stuntZones/nearPole.lua
  spawningOptions.autoEnterVehicle = false
  self.activeData.veh = core_vehicles.spawnNewVehicle(model, spawningOptions)
@/lua/ge/extensions/gameplay/discover/newPlayerExperience.lua
          spawningOptions.autoEnterVehicle = i == 1
          local v = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
        end
          spawningOptions.autoEnterVehicle = i == 1
          local v = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
          if i <= 3 then
          spawningOptions.autoEnterVehicle = i == 1
          core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
        end
          spawningOptions.autoEnterVehicle = i == 1
          local veh = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
          --veh.playerUsable = i <= 2
          spawningOptions.autoEnterVehicle = i == 1
          local v = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
        end
@/lua/ge/extensions/scenario/scenarios.lua
    else
      spawnedVehicle = core_vehicles.spawnNewVehicle(scenario.userSpawningData.model, scenario.userSpawningData.options)
    end
      --Add set to correct Loading spot. if not the new car spawns at 0,0,0 (more likely at a random place)
      core_vehicles.spawnNewVehicle(scenario.userSpawningData.model, scenario.userSpawningData.options)
    end
          local spawningData = createPlayerSpawningData(vehicleData.model, vehicleData.config, vehicleData.color, vehicleData.licenseText, vehicleName, startingData.pos, startingData.rot)
          core_vehicles.spawnNewVehicle(spawningData.model, spawningData.options)
        else
@/lua/ge/extensions/scenario/quickRace.lua
  vehicle = fillVehicleSpawnOptionDefaults(vehicle.model, vehicle)
  local veh = core_vehicles.spawnNewVehicle(vehicle.model, vehicle)
@/lua/ge/extensions/tech/techCore.lua
  else
    veh = core_vehicles.spawnNewVehicle(model, options)
  end
@/lua/ge/extensions/core/dynamicProps.lua
    spawningOptions.autoEnterVehicle = false
    local vehId = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions):getId()
@/lua/ge/extensions/gameplay/missions/missionManager.lua
        spawningOptions.autoEnterVehicle = true
        step.veh = core_vehicles.spawnNewVehicle(model, spawningOptions)
      end
    spawningOptions.autoEnterVehicle = true
    step.veh = core_vehicles.spawnNewVehicle("etkc", spawningOptions)
  end
@/lua/ge/extensions/campaign/exploration.lua
  spawningPlayer = spawningData
  core_vehicles.spawnNewVehicle(spawningPlayer.model, spawningPlayer.options)
@/lua/ge/extensions/career/modules/vehicleShopping.lua
  spawnOptions.autoEnterVehicle = false
  local newVeh = core_vehicles.spawnNewVehicle(vehicleInfo.model_key, spawnOptions)
  if dealershipToMoveTo then moveVehicleToDealership(newVeh, dealershipToMoveTo) end
@/lua/ge/extensions/ui/vehicleSelector/vehicleOperations.lua
    local sanitizedOptions = sanitizeVehicleSpawnOptions(modelKey, options)
    local vehicle = core_vehicles.spawnNewVehicle(modelKey, sanitizedOptions)
    extensions.hook("onVehicleSelectorSpawnNew", modelKey, configKey, paintName1, paintName2, paintName3)
@/lua/ge/extensions/editor/vehicleEditor/veToolbar.lua
              local spawnRot = getCameraQuat()
              local veh = core_vehicles.spawnNewVehicle(vehData.model.key, {pos = spawnPos, rot = spawnRot})
              veh:queueLuaCommand("input.event('parkingbrake', 0, 1)")
@/lua/ge/extensions/career/modules/inventory.lua
      vehicleData.autoEnterVehicle = false
      vehObj = core_vehicles.spawnNewVehicle(carModelToLoad, vehicleData)
    end
      spawningOptions.autoEnterVehicle = false
      local veh = core_vehicles.spawnNewVehicle(model, spawningOptions)
      core_vehicleBridge.executeAction(veh,'setIgnitionLevel', 0)
@/lua/ge/extensions/util/stepHandler.lua
    local options = step.options
    step.veh = core_vehicles.spawnNewVehicle(options.model, options)
    if not step.veh then
@/lua/ge/extensions/gameplay/discover/discover_038.lua
        spawningOptions.autoEnterVehicle = true
        local vehicle = core_vehicles.spawnNewVehicle("unicycle", spawningOptions)
@/lua/ge/extensions/core/vehicles.lua

  return spawnNewVehicle(veh.JBeam, options)
end
    else
      spawnNewVehicle(data.model, {config = pathDefaultConfig, licenseText = data.licenseName})
    end
    else
      spawnNewVehicle(M.defaultVehicleModel, {})
    end
@/lua/ge/extensions/gameplay/discover/discover_037.lua
          spawningOptions.autoEnterVehicle = i == 1
          local v = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
          if i == 1 then
          end
          local v = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
          if veh[3] == "large_spinner" then
        end
        local v = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
        if i > 1 then
        end
        local veh  = core_vehicles.spawnNewVehicle(model, options)
        local windVec = vec3(25+random()*10,0,0)
        spawningOptions.safeSpawn = false
        local v = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
        table.insert(seq, util_stepHandler.makeStepReturnTrueFunction(function()
        spawningOptions.safeSpawn = false
        local v = core_vehicles.spawnNewVehicle(spawningOptions.model, spawningOptions)
        table.insert(seq, util_stepHandler.makeStepReturnTrueFunction(function()
@/lua/ge/extensions/career/modules/rentals.lua
  spawnOptions.autoEnterVehicle = false
  local currRentalVeh = core_vehicles.spawnNewVehicle(vehicleInfo.model_key, spawnOptions)
  --Start tracking kms
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veVehicleSpawner.lua
    local spawnPos = startPos + startDir * vec3(10 * (i - 1), 0, 0)
    local veh = core_vehicles.spawnNewVehicle(vehData.model.key, {pos = spawnPos, rot = startDir})
    veh:queueLuaCommand("input.event('parkingbrake', 0, 1)")
        local spawnRot = getCameraQuat()
        local veh = core_vehicles.spawnNewVehicle(vehData.model.key, {pos = spawnPos, rot = spawnRot})
        veh:queueLuaCommand("input.event('parkingbrake', 0, 1)")
@/lua/ge/extensions/editor/scriptAIEditor.lua
      for k, data in pairs(vehicles) do
        local _ = core_vehicles.spawnNewVehicle(data.jBeam, { pos = spawnPositions[ctr], config = data.config })
        ctr = ctr + 1
@/lua/ge/extensions/flowgraph/nodes/vehicle/spawnVehicle.lua
      else
        self.veh = core_vehicles.spawnNewVehicle(self.spawningOptions.model, self.spawningOptions)
        self.mgr:logEvent("Vehicle Spawned ".. dumps(self.pinIn.model.value), "I", "A Vehicle " ..dumps(self.pinIn.model.value) .. " was spawned.", {type = "node", node = self})