queueGameEngineLua
Definition
-- @/=[C]:-1
function queueGameEngineLua(...)
Callers
@/lua/vehicle/ai.lua
if pos then
obj:queueGameEngineLua(
"map.safeTeleport(" .. obj:getId() .. ", " .. pos.x .. ", " .. pos.y .. ", " .. pos.z .. ", " .. rot.x .. ", " .. rot.y .. ", " .. rot.z .. ", " .. rot.w .. ", nil, nil, true, true, true)"
if M.mode ~= mode then -- new AI mode is not the same as the old one
obj:queueGameEngineLua('onAiModeChange('..objectId..', "'..mode..'")')
end
if newState.mode and newState.mode ~= M.mode then -- new AI mode is not the same as the old one
obj:queueGameEngineLua('onAiModeChange('..objectId..', "'..newState.mode..'")')
end
local rot = quatFromDir(dir:cross(up):cross(up), up)
obj:queueGameEngineLua(
"getObjectByID(" .. objectId .. "):resetBrokenFlexMesh();" ..
@/lua/vehicle/extensions/tech/powertrainSensor.lua
obj:queueGameEngineLua(string.format("tech_sensors.updatePowertrainLastReadings(%q)", lpack.encode(readingsData)))
local adHocData = { requestId = adHocRequestId, reading = data.readings }
obj:queueGameEngineLua(string.format("tech_sensors.updatePowertrainAdHocRequest(%q)", lpack.encode(adHocData)))
end
@/lua/vehicle/extensions/tech/tyreBarrier.lua
local function markTestComplete()
obj:queueGameEngineLua("tech_sensors.markVehicleFeedingComplete()")
end
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veTCSDebug.lua
local tcsData = (#escControllers >= 1) and escControllers[1].debugData.tcs or nil
obj:queueGameEngineLua("vEditor.tcsData = " .. serialize(tcsData))]])
if vEditor.tcsData then
@/lua/vehicle/bdebugImpl.lua
-- TODO: temporary solution to draw from GE Lua side
obj:queueGameEngineLua(string.format('debugDrawer:drawLine(%s,%s,ColorF(1,0,0,1),false)', -dir * lineLen * 0.5 + midPos, dir * lineLen * 0.5 + midPos))
obj.debugDrawProxy:drawCylinder(-dir * lineLen * 0.5 + midPos, dir * lineLen * 0.5 + midPos, 0.01, color(255, 0, 0, 255))
local text = data.textList[i]
obj:queueGameEngineLua('debugDrawer:drawTextAdvanced(' .. tostring(nodePos) .. ',"' .. text .. '",ColorF(1,1,1,1),true,false,ColorI(0,0,0,192))')
end
for _, geFuncName in ipairs(requestDrawnNodesCallbacks) do
obj:queueGameEngineLua(geFuncName .. "(" .. serialize(nodesDrawn) .. "," .. nodeScale .. ")")
end
-- TODO: temporary solution to draw from GE Lua side
--obj:queueGameEngineLua(string.format('debugDrawer:drawCylinder(%s,%s,%f,ColorF(%f,%f,%f,%f),false)', -dir * len * 0.5 + midPos, dir * len * 0.5 + midPos, radius * 0.5, r/255,g/255,b/255,a/255))
obj.debugDrawProxy:drawCylinder(-dir * len * 0.5 + midPos, dir * len * 0.5 + midPos, radius, col)
obj.debugDrawProxy:drawBeam3d(beam.cid, radius, col)
-- obj:queueGameEngineLua(string.format('debugDrawer:drawCylinder(%s,%s,%f,ColorF(%f,%f,%f,%f),false)', node1Pos, node2Pos, radius, r/255,g/255,b/255,a/255))
-- obj.debugDrawProxy:drawCylinder(node1Pos, node2Pos, radius, col)
for _, geFuncName in ipairs(requestDrawnBeamsCallbacks) do
obj:queueGameEngineLua(geFuncName .. "(" .. serialize(beamsDrawn) .. "," .. beamScale .. ")")
end
-- INTENTIONALLY CALLING FROM GAME ENGINE LUA TO WORKAROUND A BUG
obj:queueGameEngineLua(string.format("guihooks.trigger('BdebugUpdate',%s,%s)", serialize(M.state), serialize(M.stateNoReset)))
-- This is fine though
obj:queueGameEngineLua(string.format("extensions.hook('onBDebugUpdate',%s,%s)", serialize(M.state), serialize(M.stateNoReset)))
end
obj:queueGameEngineLua("getObjectByID(" .. obj:getID() .. "):queueLuaCommand('bdebug.recieveViewportSize('.. ui_imgui.GetMainViewport().Size.x .. ',' .. ui_imgui.GetMainViewport().Size.y .. ')' )")
@/lua/vehicle/extensions/tech/CANBus/ProjectBavariaController.lua
end
obj:queueGameEngineLua(string.format("core_input_virtualInput.emit(%d, %q, %d, %q, %.3f)", virtualInputDeviceInstance, objType, objInstance, action, value))
end
log("I", "ProjectBavariaController.requestExistingVirtualInput", "Requesting existing virtual input device for vidpid: " .. virtualInputVidPid)
obj:queueGameEngineLua(cmdString)
end
log("I", "ProjectBavariaController.registerNewVirtualInput", "Registering new virtual input device for vidpid: " .. virtualInputVidPid)
obj:queueGameEngineLua(cmdString)
end
local cmdString = string.format(cmdStringTemplate, deviceInstance)
obj:queueGameEngineLua(cmdString)
end
@/lua/vehicle/extensions/dynamicVehicleData.lua
--print(" === killswitch ===")
obj:queueGameEngineLua("util_saveDynamicData.vehicleDone()")
end
local function watchdogHeartbeat()
obj:queueGameEngineLua("util_saveDynamicData.heartbeat()")
end
local function resetVehicle(position)
obj:queueGameEngineLua("be:resetVehicle(0)")
wait(2)
wait(2)
obj:queueGameEngineLua("getPlayerVehicle(0):setPositionRotation(" .. position .. ")")
wait(2)
wait(2)
obj:queueGameEngineLua("getPlayerVehicle(0):autoplace(false)")
wait(2)
obj:queueGameEngineLua("be:resetVehicle(0)")
wait(1)
@/lua/vehicle/extensions/tech/GPS.lua
local rawReadingsData = { sensorId = sensorId, reading = data.rawReadings }
obj:queueGameEngineLua(string.format("tech_sensors.updateGPSLastReadings(%q)", lpack.encode(rawReadingsData)))
local adHocData = { requestId = adHocRequestId, reading = data.rawReadings }
obj:queueGameEngineLua(string.format("tech_sensors.updateGPSAdHocRequest(%q)", lpack.encode(adHocData)))
end
@/lua/ge/extensions/career/modules/vehicleShopping.lua
newVeh:queueLuaCommand(string.format("partCondition.initConditions(nil, %d, nil, %f) obj:queueGameEngineLua('career_modules_vehicleShopping.onVehicleSpawnFinished(%d)')", vehicleInfo.Mileage, getVisualValueFromMileage(vehicleInfo.Mileage), newVeh:getID()))
return newVeh
@/lua/ge/ge_utils.lua
local geluaCommand = string.format('local args = %s; %s(unpack(args, 1, table.maxn(args)))', 'deserialize(%q)', geluaFunctionName)
local cmd = string.format('obj:queueGameEngineLua(string.format(%q, serialize({%s, unpack(%s)})))', geluaCommand, vluaCommand, serialize({...}))
veh:queueLuaCommand(cmd)
@/lua/vehicle/extensions/tech/adasUltrasonic.lua
electrics.values.parkassist = 1
obj:queueGameEngineLua("extensions.tech_adasUltrasonic.runUpdate(1)")
return
if blindSpots then
obj:queueGameEngineLua("extensions.tech_adasUltrasonic.runUpdate(0)")
end
@/lua/vehicle/extensions/tech/CANBus/ButtonBox.lua
end
obj:queueGameEngineLua(string.format("core_input_virtualInput.emit(%d, %q, %d, %q, %.3f)", virtualInputDeviceInstance, objType, objInstance, action, value))
end
log("I", "ButtonBox.requestExistingVirtualInput", "Requesting existing virtual input device for vidpid: " .. virtualInputVidPid)
obj:queueGameEngineLua(cmdString)
end
log("I", "ButtonBox.registerNewVirtualInput", "Registering new virtual input device for vidpid: " .. virtualInputVidPid)
obj:queueGameEngineLua(cmdString)
end
local cmdString = string.format(cmdStringTemplate, deviceInstance)
obj:queueGameEngineLua(cmdString)
end
@/lua/ge/extensions/flowgraph/nodes/vehicle/ai/simpleFollowDecalroad.lua
self.receivedInfo = false
be:queueAllObjectLua('obj:queueGameEngineLua("extensions.hook(\\"onVehicleSubmitInfo\\","..tostring(objectId)..","..serialize(ai.scriptState())..")")')
end
@/lua/vehicle/bullettime.lua
local function set(v)
obj:queueGameEngineLua('simTimeAuthority.set('..tostring(1/v)..')')
end
local function selectPreset(v)
obj:queueGameEngineLua('simTimeAuthority.selectPreset('..dumps(v)..')')
end
deprecated()
obj:queueGameEngineLua('simTimeAuthority.requestValue()')
end
@/lua/vehicle/powertrain/electricMotor.lua
device.soundConfiguration[reference].blendFile = samplePath
obj:queueGameEngineLua(string.format("core_sounds.initEngineSound(%d,%d,%q,%s,%f,%f)", objectId, soundID, samplePath, serialize(engineNodeIDs), offLoadGain, onLoadGain))
device.soundConfiguration[reference].soundID = soundID
obj:queueGameEngineLua(string.format("core_sounds.setEngineSoundParameterList(%d,%d,%s)", objectId, soundID, serialize(params)))
end
@/lua/vehicle/powertrain/combustionEngine.lua
obj:queueGameEngineLua(string.format("core_sounds.initEngineSound(%d,%d,%q,%s,%f,%f)", objectId, soundID, samplePath, serialize(engineNodeIDs), offLoadGain, onLoadGain))
end
obj:queueGameEngineLua(string.format("core_sounds.initExhaustSound(%d,%d,%q,%s,%f,%f)", objectId, soundID, samplePath, serialize(exhaustNodeIDPairs), offLoadGain, onLoadGain))
end
obj:queueGameEngineLua(string.format("core_sounds.setExhaustSoundNodes(%d,%d,%s)", objectId, soundID, serialize(exhaustNodeIDPairs)))
end
params[paramName] = paramValue
obj:queueGameEngineLua(string.format("core_sounds.setEngineSoundParameter(%d,%d,%q,%f)", objectId, soundID, paramName, paramValue))
end
device.soundConfiguration[reference].soundID = soundID
obj:queueGameEngineLua(string.format("core_sounds.setEngineSoundParameterList(%d,%d,%s)", objectId, soundID, serialize(params)))
--local command = "obj:queueGameEngineLua(string.format('scenarios.getScenario().wheelDataCallback(%s)', serialize({wheels.wheels[0].absActive, wheels.wheels[0].angularVelocity, wheels.wheels[0].angularVelocityBrakeCouple}))"
@/lua/ge/extensions/editor/suspensionAudioDebug.lua
if editor.beginWindow(wndName, wndName) then
veh:queueLuaCommand('obj:queueGameEngineLua("editor_suspensionAudioDebug.beamSounds =" .. serialize(sounds.getBeamSounds()))')
@/lua/vehicle/extensions/utRecorder.lua
}
obj:queueGameEngineLua("extensions.test_utRecorder.onVehicleData(" .. obj:getId() .. "," .. serialize(d) .. ")")
end
@/lua/ge/extensions/core/checkpoints.lua
-- Queued for round trip to allow setpositionrotation to take effect
local callbackCommand = string.format('obj:queueGameEngineLua("if getObjectByID('..vehId..') then getObjectByID('..vehId..'):autoplace(false); core_checkpoints.completeReset(%u,%s) end")', vehId, "'"..vehicleName.."'")
vehicle:queueLuaCommand(callbackCommand)
@/lua/ge/extensions/tech/pythonExport.lua
local data = { rot = rot }
obj:queueGameEngineLua(
string.format('extensions.tech_pythonExport.getFullConfigVehicleCallback(%d, %q)', obj:getID(), lpack.encode(data))
@/lua/vehicle/extensions/escCalibration.lua
local function setMaxPhysicsSpeed(enable)
obj:queueGameEngineLua("be:setPhysicsSpeedFactor(" .. (enable and 1 or 0) .. ")")
end
@/lua/common/jbeam/sections/camera.lua
if obj then
obj:queueGameEngineLua("extensions.load('core_vehicleMirrors')")
else
@/lua/ge/extensions/career/modules/vehiclePerformance.lua
getObjectByID(vehId):queueLuaCommand('damageTracker.registerDamageUpdateCallback(function(damageData, damageDataDelta) obj:queueGameEngineLua("career_modules_vehiclePerformance.onVehicleDamaged(" .. serialize(damageData) .. ", " .. serialize(damageDataDelta) .. ")") end)')
@/lua/vehicle/beamstate.lua
local function sendObjectCouplingChange()
obj:queueGameEngineLua(string.format("onObjectCouplingChange(%s,%s)", objectId, serialize(attachedCouplers)))
end
obj:detachCoupler(val.cid, 0)
obj:queueGameEngineLua(string.format("onCouplerDetach(%s,%s)", obj:getId(), val.cid))
end
if objectId < obj2id then
obj:queueGameEngineLua(string.format("onCouplerAttached(%s,%s,%s,%s)", objectId, obj2id, nodeId, obj2nodeId))
end
if objectId < obj2id then
obj:queueGameEngineLua(string.format("onCouplerDetached(%s,%s,%s,%s)", objectId, obj2id, nodeId, obj2nodeId))
end
@/lua/vehicle/extensions/tech/techCore.lua
local cmd = 'extensions.hook("onVehicleInfoReady", ' .. tostring(obj:getID()) .. ', ' .. serialize(info) .. ')'
obj:queueGameEngineLua(cmd)
end
local cmd = 'extensions.hook("onVehicleConnectionReady", ' .. tostring(obj:getID()) .. ', ' .. tostring(port) .. ')'
obj:queueGameEngineLua(cmd)
end
cmd = 'getObjectByID(' .. obj:getID() .. '):setColor(' .. cmd .. ')'
obj:queueGameEngineLua(cmd)
request:sendACK('ColorSet')
local targetName = request['target']
obj:queueGameEngineLua('scenetree.findObjectById(' .. obj:getID() .. '):queueLuaCommand("ai.setTargetObjectID(" .. scenetree.findObject(\'' .. targetName .. '\'):getID() .. ")")')
request:sendACK('AiTargetSet')
@/lua/ge/extensions/flowgraph/nodes/vehicle/ai/scriptAI/followPath.lua
end
be:queueAllObjectLua('obj:queueGameEngineLua("extensions.hook(\\"onVehicleSubmitInfo\\","..tostring(objectId)..","..serialize(ai.scriptState())..",'..self.id..')")')
end
@/lua/vehicle/input.lua
if filter ~= M.lastFilterType then
obj:queueGameEngineLua(string.format('extensions.telemetry_core.startActivity("controlsUsed", {method = "%s"})', FILTER_NAME[filter]))
M.lastFilterType = filter
@/lua/vehicle/controller/tech/screens.lua
obj:queueGameEngineLua([[
extensions.load("tech_multiscreen")
tostring(screen.borderless))
obj:queueGameEngineLua(queueString)
end
@/lua/vehicle/extensions/gameplayInterfaceModules/interactAI.lua
BeamEngine:queueAllObjectLua('ai.setMode("stop")')
obj:queueGameEngineLua("extensions.gameplay_traffic.deactivate()")
obj:queueGameEngineLua('extensions.hook("trackAIAllVeh", "disabled")')
obj:queueGameEngineLua("extensions.gameplay_traffic.deactivate()")
obj:queueGameEngineLua('extensions.hook("trackAIAllVeh", "disabled")')
BeamEngine:queueAllObjectLuaExcept('ai.setRacing(false)', objectId)
BeamEngine:queueAllObjectLuaExcept('ai.setRacing(false)', objectId)
obj:queueGameEngineLua('extensions.hook("trackAIAllVeh", "random")')
BeamEngine:queueAllObjectLuaExcept('ai.setRacing(false)', objectId)
obj:queueGameEngineLua('extensions.hook("trackAIAllVeh", "flee")')
BeamEngine:queueAllObjectLuaExcept('ai.setRacing(false)', objectId)
obj:queueGameEngineLua('extensions.hook("trackAIAllVeh", "chase")')
BeamEngine:queueAllObjectLuaExcept('ai.setRacing(false)', objectId)
obj:queueGameEngineLua('extensions.hook("trackAIAllVeh", "follow")')
@/lua/ge/extensions/flowgraph/modules/vehicleModule.lua
-- instantly get the damage tracker
--veh:queueLuaCommand('damageTracker.registerDamageUpdateCallback(function(a,b) obj:queueGameEngineLua("core_flowgraphManager.getManagerByID('..self.mgr.id..'):broadcastCall(\'onVehiclePartDamageTracker\',"..obj:getId()..","..dumps(a)..","..dumps(b)..")") end)')
end
@/lua/vehicle/extensions/tech/idealRADARSensor.lua
obj:queueGameEngineLua(string.format("tech_sensors.updateIdealRADARLastReadings(%q)", lpack.encode(readingsData)))
local adHocData = { requestId = adHocRequestId, reading = data.readings }
obj:queueGameEngineLua(string.format("tech_sensors.updateIdealRADARAdHocRequest(%q)", lpack.encode(adHocData)))
end
@/lua/vehicle/extensions/escMeasurement.lua
--print(" === killswitch ===")
obj:queueGameEngineLua("util_calibrateESC.vehicleDone()")
end
local function watchdogHeartbeat()
obj:queueGameEngineLua("util_calibrateESC.heartbeat()")
end
speedFactor = enable and highSpeedFactor or 0
obj:queueGameEngineLua("be:setPhysicsSpeedFactor(" .. speedFactor .. ")")
end
@/lua/vehicle/controller/beamNavigator.lua
htmlTexture.create(screenMaterialName, htmlFilePath, textureWidth, textureHeight, textureFPS, "automatic")
obj:queueGameEngineLua(string.format("extensions.ui_uinavi.requestVehicleDashboardMap(%q, nil, %d)", screenMaterialName, obj:getID()))
if jbeamData.bootscreenImage then
@/lua/vehicle/extensions/tech/vehiclePOI.lua
numWheels = ctr - 1 }
obj:queueGameEngineLua(string.format("%s(%q)", callback, lpack.encode(cData)))
end
@/lua/vehicle/mapmgr.lua
obj:queueGameEngineLua("extensions.hook('onVehicleMapmgrUpdate', "..tostring(objectId)..")")
end
local function requestMap()
obj:queueGameEngineLua(string.format('map.request(%s,%s)', objectId, mapBuildSerial))
end
obj:queueGameEngineLua(buf)
local function enableTracking(name)
obj:queueGameEngineLua(stringFormat('map.setNameForId(%s, %s)', name and '"'..name..'"' or objectId, objectId))
M.sendTracking = sendTracking
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veGeneralData.lua
data.damage = beamstate.damage
obj:queueGameEngineLua("vEditor.generalData =" .. serialize(data))]])
@/lua/ge/extensions/editor/scriptAIEditor.lua
if editor.uiIconImageButton(editor.icons.stop, im.ImVec2(21, 21), nil, nil, nil, 'stopRecordingScript') then
scenetree.findObject(veh.vid):queueLuaCommand('obj:queueGameEngineLua("extensions.hook(\\"onVehicleSubmitRecording\\","..tostring(objectId)..","..serialize(ai.stopRecording())..")")')
stopExecute()
@/lua/vehicle/scriptai.lua
obj:requestReset(RESET_PHYSICS)
obj:queueGameEngineLua("getObjectByID(" .. tostring(obj:getId()) .. "):resetBrokenFlexMesh()")
local rot = quatFromDir(dir:cross(up):cross(up), up)
local rot = quatFromDir(dir:cross(up):cross(up), up)
obj:queueGameEngineLua("getObjectByID(" .. obj:getId() .. "):autoplace(false);vehicleSetPositionRotation(" .. obj:getId() .. "," .. pos.x .. "," .. pos.y .. "," .. pos.z .. "," .. rot.x .. "," .. rot.y .. "," .. rot.z .. "," .. rot.w .. ")")
end
@/lua/vehicle/recovery.lua
local rot = quatFromDir(dirFront, dirUp)
obj:queueGameEngineLua("spawn.safeTeleport(getObjectByID("..obj:getId().."), vec3("..recPoint.pos.x..","..recPoint.pos.y..","..recPoint.pos.z.."), quat("..rot.x..","..rot.y..","..rot.z..","..rot.w.."), nil, nil, " .. tostring(moveTraffic) .. ")")
else
end
obj:queueGameEngineLua("vehicleSetPositionRotation("..obj:getId()..","..recPoint.pos.x..","..recPoint.pos.y..","..recPoint.pos.z..","..rot.x..","..rot.y..","..rot.z..","..rot.w..")")
end
obj:requestReset(RESET_PHYSICS) -- fix vehicle + reset velocity
obj:queueGameEngineLua('getObjectByID('..tostring(obj:getId())..'):resetBrokenFlexMesh()')
setRecoveryPoint(M.homePoint, true, moveTraffic)
--obj:setMeshNameAlpha(1, "", true) -- show everything again
obj:queueGameEngineLua('getObjectByID('..tostring(obj:getId())..'):resetBrokenFlexMesh()')
obj:queueGameEngineLua('be.nodeGrabber:clearVehicleFixedNodes('..tostring(obj:getId())..')')
obj:queueGameEngineLua('getObjectByID('..tostring(obj:getId())..'):resetBrokenFlexMesh()')
obj:queueGameEngineLua('be.nodeGrabber:clearVehicleFixedNodes('..tostring(obj:getId())..')')
setRecoveryPoint(lastRecoveryPoint, true)
if not isFreeCamActive then
obj:queueGameEngineLua("commands.setGameCamera()")
end
rewindPosition = true
obj:queueGameEngineLua('be:queueObjectLua('..tostring(obj:getId())..', "if recovery.getFreeCamActiveFlag() ~= nil then recovery.setFreeCamActiveFlag(" .. tostring(commands.isFreeCamera()) .. ") end") commands.setFreeCamera()')
snapshotTimeSmoother:set(1)
camRot:setFromDir(tempVec, upVector)
obj:queueGameEngineLua("core_camera.setPosRot(0, "..camPos.x..","..camPos.y..","..camPos.z..","..camRot.x..","..camRot.y..","..camRot.z..","..camRot.w..")")
end
@/lua/vehicle/extensions/tech/mesh.lua
local adHocData = { requestId = adHocRequestId, reading = latestReading }
obj:queueGameEngineLua(string.format("tech_sensors.updateMeshAdHocRequest(%q)", lpack.encode(adHocData)))
end
@/lua/ge/extensions/editor/engineAudioDebug.lua
names = serialize(names);
obj:queueGameEngineLua(string.format('editor_engineAudioDebug.engine.engineSoundData = %s; editor_engineAudioDebug.engine.engineNameStrings = %s', data, names))]])
end
names = serialize(names);
obj:queueGameEngineLua(string.format('editor_engineAudioDebug.engine.engineSoundData = %s; editor_engineAudioDebug.engine.engineNameStrings = %s', data, names))]])
veh:showEngineDirection(selectedEngineData.data.soundID, showExhaustDirection[0])
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veAeroDebug.lua
vEditor.vehicle:queueLuaCommand('obj:queueGameEngineLua("vEditor.aeroData =" .. serialize(extensions.aeroDebug.getAeroData()))')
@/lua/vehicle/extensions/tech/roadsSensor.lua
obj:queueGameEngineLua(string.format("tech_sensors.updateRoadsSensorLastReadings(%q)", lpack.encode(readingsData)))
local adHocData = { requestId = adHocRequestId, reading = data.readings }
obj:queueGameEngineLua(string.format("tech_sensors.updateRoadsSensorAdHocRequest(%q)", lpack.encode(adHocData)))
end
@/lua/vehicle/extensions/tech/advancedIMU.lua
local rawReadingsData = { sensorId = sensorId, reading = data.rawReadings }
obj:queueGameEngineLua(string.format("tech_sensors.updateAdvancedIMULastReadings(%q)", lpack.encode(rawReadingsData)))
local adHocData = { requestId = adHocRequestId, reading = data.rawReadings }
obj:queueGameEngineLua(string.format("tech_sensors.updateAdvancedIMUAdHocRequest(%q)", lpack.encode(adHocData)))
end
@/lua/vehicle/extensions/tech/vehicleSearcher.lua
local cData = { wheels = whData, electrics = elData, powertrain = pProc }
obj:queueGameEngineLua(string.format("editor_cosimulationSignalEditor.updateCollectedVehicleData(%q)", lpack.encode(cData)))
end
@/lua/vehicle/extensions/tech/platooning.lua
local vehiclesData = {leaderID = leaderID, vehicleID = vid}
obj:queueGameEngineLua(string.format("tech_platoonFunctions.removeVehicleFromPlatoon(%q)", lpack.encode(vehiclesData)))
ai.setMode('manual')
@/ui/ui-vue/mockdata/inputBindings.js
"onUp": "recovery.stopRecovering()",
"onDown": "obj:queueGameEngineLua('extensions.hook(\"trackVehReset\")') recovery.startRecovering()",
"order": 2,
"onUp": "recovery.stopRecovering()",
"onDown": "obj:queueGameEngineLua('extensions.hook(\"trackVehReset\")') recovery.startRecovering(true)",
"order": 3,
"title": "ui.inputActions.gameplay.loadHome.title",
"onDown": "obj:queueGameEngineLua('extensions.hook(\"trackVehReset\")') recovery.loadHome()",
"order": 91,
@/lua/ge/extensions/flowgraph/nodes/vehicle/ai/getAIMode.lua
function C:getCmd()
return 'obj:queueGameEngineLua("local n = core_flowgraphManager.getManagerGraphNode('..self.mgr.id..', '..self.graph.id..', '..self.id..') if n then n:getAIMode(\'"..ai.getState().mode.."\') end")'
end
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/vePowerTrain.lua
vEditor.vehicle:queueLuaCommand([[
obj:queueGameEngineLua("vEditor.powertrainDevices =" .. powertrain.serializeDevicesInfo())]])
if vEditor.powertrainDevices and not tableIsEmpty(vEditor.powertrainDevices) then
vEditor.powertrainDevices = nil
vEditor.vehicle:queueLuaCommand('obj:queueGameEngineLua("vEditor.resetDeviceString = true")')
end
@/lua/vehicle/controller/sbrGauges.lua
htmlTexture.call(gaugesScreenName, "setUnits", {unitType = unitType})
obj:queueGameEngineLua(string.format('extensions.ui_uiNavi.requestVehicleDashboardMap(%q, "initMap", %d)', gaugesScreenName, obj:getID()))
else
@/lua/common/guihooks.lua
local command = string.format('extensions.hook("onGeLuaStreamsFromVehicleTest", %q)', lpack.encode(streams))
obj:queueGameEngineLua(command)
end
@/lua/vehicle/extensions/gameplayStatistic.lua
local function metricAdd(name,value,aggregate)
obj:queueGameEngineLua("gameplay_statistic.metricAdd("..dumps(name)..","..tostring(value)..","..tostring(aggregate)..")")
end
local function metricSet(name,value,aggregate)
obj:queueGameEngineLua("gameplay_statistic.metricSet("..dumps(name)..","..tostring(value)..","..tostring(aggregate)..")")
end
@/lua/ge/extensions/editor/scriptAIManager.lua
local function stopRecording(bo, vehId)
bo:queueLuaCommand('obj:queueGameEngineLua("extensions.hook(\\"onVehicleSubmitRecording\\","..tostring(objectId)..","..serialize(ai.stopRecording())..")")')
vehState[vehId] = 'idle'
if editor.beginWindow(toolWindowName, "Script AI Manager") then
be:queueAllObjectLua('obj:queueGameEngineLua("extensions.hook(\\"onVehicleSubmitInfo\\","..tostring(objectId)..","..serialize(ai.scriptState())..")")')
local objMax = be:getObjectCount()-1
@/lua/vehicle/extensions/core/quickAccess.lua
obj:queueGameEngineLua("core_quickAccess.vehicleItemsCallback(" .. objectId .. "," .. serialize(level) .. "," .. serialize(menuTreeCopy) .. ")")
return true
if actionCallbackCountdown <= 0 then
obj:queueGameEngineLua("core_quickAccess.vehicleItemSelectCallback(" .. obj:getId() .. "," .. serialize(actionCallbackArgs) .. ")")
actionCallbackCountdown = nil
end
obj:queueGameEngineLua("core_quickAccess.vehicleItemSelectCallback(" .. objectId .. "," .. serialize(args) .. ")")
end
@/lua/ge/extensions/flowgraph/modules/aiRecordingModule.lua
-- schedule the recording to be stopped and be sent from the vehicle to this module
veh:queueLuaCommand('obj:queueGameEngineLua("extensions.hook(\\"onVehicleSubmitRecordingForMission\\","..tostring(objectId)..","..serialize(ai.stopRecording())..")")')
end
@/lua/vehicle/controller/gauges/customModules/navigationData.lua
gaugeHTMLTexture = htmlTexture
obj:queueGameEngineLua(string.format('extensions.ui_uiNavi.requestVehicleDashboardMap(%q, "initMap", %d)', gaugeHTMLTexture.webViewTag, obj:getID()))
end
@/lua/vehicle/extensions/dynoClient.lua
local l = "getObjectByID("..objId.."):queueJSUITexture('"..textureName.."', '"..jsFunc.."(" .. js .. ");')"
obj:queueGameEngineLua(l)
end
@/lua/vehicle/partCondition.lua
local paintDataCmd = string.format("getObjectByID(%d):setMeshPaintData(%q, ColorI(%d,%d,%d,%d), ColorI(%d,%d,%d,%d), ColorI(%d,%d,%d,%d))", objectId, split[3], paintData1Roughness * 255, paintData1Metallic * 255, paintData1Clearcoat * 255, paintData1ClearcoatRoughness * 255, paintData2Roughness * 255, paintData2Metallic * 255, paintData2Clearcoat * 255, paintData2ClearcoatRoughness * 255, paintData3Roughness * 255, paintData3Metallic * 255, paintData3Clearcoat * 255, paintData3ClearcoatRoughness * 255)
obj:queueGameEngineLua(colorCmd)
obj:queueGameEngineLua(paintDataCmd)
obj:queueGameEngineLua(colorCmd)
obj:queueGameEngineLua(paintDataCmd)
end
@/lua/vehicle/extensions/gameplayInterface.lua
local cmdString = string.format("%s(%d, %d, %q)", callbackString, objectId, requestId, serialize(data))
obj:queueGameEngineLua(cmdString)
end
@/lua/ge/extensions/career/modules/inventory.lua
inventoryIdAfterUpdatingPartConditions = inventoryId
vehicle:queueLuaCommand(string.format("if not partCondition.getConditions() then partCondition.initConditions() end obj:queueGameEngineLua('career_modules_inventory.updatePartConditions(%d, %d)')", vehId, inventoryId))
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veJBeamPicker.lua
local vehCmdString = '"editor_vehicleEditor_liveEditor_veJBeamPicker.nodeDataFromVELua[' .. id .. '].' .. varName .. ' =" .. ' .. luaFunction
be:queueObjectFastLua(vEditor.vehicle:getID(), "obj:queueGameEngineLua(" .. vehCmdString .. ")")
end
local vehCmdString = '"editor_vehicleEditor_liveEditor_veJBeamPicker.beamDataFromVELua[' .. id .. '].' .. varName .. ' =" .. ' .. luaFunction
be:queueObjectFastLua(vEditor.vehicle:getID(), "obj:queueGameEngineLua(" .. vehCmdString .. ")")
end
@/lua/ge/extensions/campaign/exploration.lua
veh:setTransform(transform)
veh:queueLuaCommand('obj:queueGameEngineLua("if getObjectByID('..playerId..') then getObjectByID('..playerId..'):autoplace(false) end")')
simTimeAuthority.set(1)
@/lua/ge/extensions/flowgraph/nodes/vehicle/special/customVehicleGetter.lua
function C:getCmd()
return 'obj:queueGameEngineLua("local n = core_flowgraphManager.getManagerGraphNode('..self.mgr.id..', '..self.graph.id..', '..self.id..') if n then n:returnValue(\'"..serialize('..self.data.fun..').."\') end")'
end
@/lua/vehicle/sounds.lua
local function updateCabinFilter()
obj:queueGameEngineLua(string.format("core_sounds.setCabinFilterStrength(%d, %f)", obj:getID(), clamp(cabinFilterCoef, 0, 1)))
-- print(string.format("%d: Setting Cabin Filter -> %f", objectId, clamp(cabinFilterCoef, 0, 1)))
@/lua/vehicle/extensions/test/ffbCalibration.lua
local function finish()
obj:queueGameEngineLua("be:setPhysicsSpeedFactor(0)")
if data ~= nil then
end
obj:queueGameEngineLua(string.format("test_ffbCalibration.onFFBCalibrationFinished(%q)", lpack.encode(data)))
data = nil
if fastmotion then
obj:queueGameEngineLua("be:setPhysicsSpeedFactor(100)")
end