spawnVehicle
Definition
-- @/lua/ge/spawn.lua:747
-- NOTE: Spawns in the vehicle rotated by 180 degrees around the z-axis
local function spawnVehicle(model, partConfig, pos, rot, options)
local veh = createObject("BeamNGVehicle")
if not veh then
log('E', logTag, 'Failed to create vehicle')
return
end
if pos then
log('I', logTag, string.format("spawning %s at initial position (%f,%f,%f)", model, pos.x, pos.y, pos.z))
else
log('I', logTag, string.format("spawning %s with no initial position", model))
end
options = options or {}
visibilityPoint = options.visibilityPoint
if options.removeTraffic ~= nil then
removeTraffic = options.removeTraffic
end
local autoEnterVehicle = tostring(options.autoEnterVehicle ~= false) -- nil defaults to 'true'
veh:setDynDataFieldbyName("autoEnterVehicle", 0, autoEnterVehicle)
local autoEnterVehiclePlayer = options.autoEnterVehiclePlayer ~= nil and tostring(options.autoEnterVehiclePlayer) or ""
veh:setDynDataFieldbyName("autoEnterVehiclePlayer", 0, autoEnterVehiclePlayer)
local spawnDatablock = "default_vehicle"
local dataBlock = scenetree.findObject(spawnDatablock)
if not datablock then
veh.dataBlock = dataBlock
else
log('E', logTag, 'Failed to find dataBlock')
return
end
local vehicleName = options.vehicleName or "clone"
local i = 0
while scenetree.findObject(vehicleName) do
vehicleName = "clone" .. tostring(i)
i = i + 1
end
veh:registerObject(vehicleName)
options.vehicleName = vehicleName
--veh.licenseText = TorqueScriptLua.getVar( "$beamngVehicleLicenseName","") -- core_vehicles will manage license text
options.model = model
options.config = partConfig
options.pos = pos
options.rot = rot
options.cling = options.cling ~= false
setVehicleObject(veh, options)
return veh
end
Callers
@/lua/ge/extensions/core/multiSpawn.lua
log('I', logTag, string.format('Vehicle group spawning in progress (%d / %d)', i, #spawnData))
local veh = spawn.spawnVehicle(data.model, data.config, data.pos, data.rot, data)
@/lua/ge/extensions/career/modules/inventory.lua
-- replaceOption 2: replace the vehicle object with the same inventoryId
local function spawnVehicle(inventoryId, replaceOption, callback)
local vehInfo = vehicles[inventoryId]
else
if spawnVehicle(id, 1, enterCallbackFunction) then
currentVehicle = id
else
local veh = spawnVehicle(inventoryId)
if veh then
else
spawnVehicle(inventoryId, nil, callback)
end
career_modules_inventory.updatePartConditions(nil, inventoryId, function()
spawnVehicle(inventoryId, 2)
end)
@/lua/ge/extensions/career/modules/insurance/insurance.lua
if career_modules_inventory.getVehicleIdFromInventoryId(vehInfo.id) then -- vehicle is currently spawned
career_modules_inventory.spawnVehicle(vehInfo.id, 2, callback and
function()
@/lua/ge/extensions/career/modules/tuning.lua
career_modules_inventory.spawnVehicle(inventoryId, 2, callback)
@/lua/ge/extensions/career/modules/inspectVehicle.lua
local function spawnVehicle(shopId)
local vehicleInfo = career_modules_vehicleShopping.getVehicleInfoByShopId(shopId)
if vehicleInfo then
vehObj = spawnVehicle(vehicleInfo.shopId)
testDriveVehInfo = {shopId = vehicleInfo.shopId, vehId = vehObj:getID(), name = vehicleInfo.Brand .. " " .. vehicleInfo.Name, value = vehicleInfo.Value}
@/lua/ge/extensions/career/modules/partShopping.lua
if shoppingSessionActive then
career_modules_inventory.spawnVehicle(currentVehicle, 2)
endShopping()
@/lua/ge/extensions/career/modules/vehiclePerformance.lua
end
local vehObj = career_modules_inventory.spawnVehicle(inventoryId, nil, function()
spawnComplete = true
if not spawnStarted then
local vehObj = career_modules_inventory.spawnVehicle(inventoryId, nil, function()
spawnComplete = true
@/lua/ge/extensions/editor/gen/exp_meshexplorer.lua
if om then om:delete() end
local tveh = spawn.spawnVehicle('metal_box', nil, vec3(0,0,0), quat(0,0,1,0))
scenetree.findObjectById(tveh:getId()):delete()
scenetree.findObjectById(tveh:getId()):delete()
cobj = spawn.spawnVehicle(amodel[env.ui['model_up']], nil, vec3(0,0,0), quat(0,0,1,0)):getId()
lo('?? if_COOO:'..tostring(cobj))
scenetree.findObjectById(id):delete()
local veh = spawn.spawnVehicle(model, nil, vec3(1,3,4), quat(0,0,1,0))
vid = veh:getId()
local veh = spawn.spawnVehicle(model, nil, vec3(3,3,4), quat(0,0,1,0))
vid = veh:getId()
if om then om:delete() end
local tveh = spawn.spawnVehicle('metal_box', nil, vec3(0,0,0), quat(0,0,1,0))
lo('?? mid:'..tostring(tveh))
scenetree.findObjectById(tveh:getId()):delete()
spawn.spawnVehicle(amodel[env.ui['model_up']], nil, vec3(0,0,0), quat(0,0,1,0))
break
if om then om:delete() end
local tveh = spawn.spawnVehicle('metal_box', nil, vec3(0,0,0), quat(0,0,1,0))
scenetree.findObjectById(tveh:getId()):delete()
scenetree.findObjectById(tveh:getId()):delete()
spawn.spawnVehicle(amodel[env.ui['model_up']], nil, vec3(0,0,0), quat(0,0,1,0))
break
-- if om then om:delete() end
-- spawn.spawnVehicle('metal_box', nil, vec3(0,0,0), quat(0,0,1,0))
local djpart = J.part2file()
end
local veh = spawn.spawnVehicle(amodel[env.ui['model_up'] ], nil, vec3(0,0,0), quat(0,0,1,0))
lo('?? for_VEH:'..tostring(veh))
lo('?? reloaded:')
-- spawn.spawnVehicle(amodel[env.ui['model_up'] ], nil, vec3(0,0,0), quat(0,0,1,0))
-- pvd = extensions.core_vehicle_manager.getPlayerVehicleData()
end
local veh = spawn.spawnVehicle(amodel[val], nil, vec3(0,0,0), quat(0,0,1,0))
cobj = veh:getId()
if om then om:delete() end
local tveh = spawn.spawnVehicle('metal_box', nil, vec3(0,0,0), quat(0,0,1,0))
scenetree.findObjectById(tveh:getId()):delete()
scenetree.findObjectById(tveh:getId()):delete()
spawn.spawnVehicle('pickup', nil, vec3(0,0,0), quat(0,0,1,0))
break
-- if om then om:delete() end
-- spawn.spawnVehicle('metal_box', nil, vec3(0,0,0), quat(0,0,1,0))
local djpart = J.part2file()
@/lua/ge/extensions/career/modules/playerDriving.lua
elseif not vehInfo.timeToAccess and not career_modules_insurance_insurance.inventoryVehNeedsRepair(favoriteVehicleInventoryId) then
inventory.spawnVehicle(favoriteVehicleInventoryId, nil,
function()
@/lua/ge/main.lua
function replaySpawnVehicle(jbeamFilename, partConfigData)
local veh = spawn.spawnVehicle(jbeamFilename, partConfigData, vec3(), quat(), nil, nil, nil)
if be:getEnterableObjectCount() == 1 then
@/lua/ge/extensions/core/vehicles.lua
local opt = sanitizeVehicleSpawnOptions(modelName, localOptions)
local veh = spawn.spawnVehicle(modelName, opt.config, opt.pos, opt.rot, opt)
local vehId = veh:getID()
@/lua/ge/extensions/career/modules/vehicleShopping.lua
local function spawnVehicle(vehicleInfo, dealershipToMoveTo)
local spawnOptions = {}
spawnFollowUpActions = {delayAccess = delay, licensePlateText = options.licensePlateText}
spawnVehicle(purchaseData.vehicleInfo)
deleteAddedVehicle = true
spawnFollowUpActions = {licensePlateText = options.licensePlateText}
local newVehObj = spawnVehicle(purchaseData.vehicleInfo, purchaseData.vehicleInfo.sellerId)
if gameplay_walk.isWalking() then
@/lua/ge/extensions/career/modules/painting.lua
career_modules_inventory.spawnVehicle(inventoryId, 2)