VE Lua Documentation

Press F to search!

initConditions

Definition


-- @/lua/vehicle/partCondition.lua:515

local function initConditions(partsCondition, fallbackOdometer, fallbackIntegrityValue, fallbackVisualValue, defaultPaints)
  if not hasExecutedInitWork then
    preparePartData()
  end

  if not partsCondition then
    log("I", "partCondition.initConditions", "Parts condition not provided for vehicle, assuming fresh vehicle state for vehicle Id: " .. dumps(objectId))
    for partId, _ in pairs(activeParts) do
      initCondition(partId, fallbackOdometer or 0, fallbackIntegrityValue or 1, fallbackVisualValue or 1, defaultPaints)
    end
    createConditionSnapshot("reset")
    setResetSnapshotKey("reset")
    return
  end
  for partId in pairs(activeParts) do
    local odometer, integrity, visual
    local partCondition = partsCondition[partId]
    if partCondition then
      odometer = partCondition.odometer
      local integrityValue = partCondition.integrityValue
      local visualValue = partCondition.visualValue
      local integrityState = partCondition.integrityState
      local visualState = partCondition.visualState
      --odometer, integrityValue, visualValue, integrityState, visualState = unpack(partCondition, 1, table.maxn(partCondition))
      integrity = integrityState or integrityValue
      visual = visualState or visualValue
    end

    odometer = odometer or fallbackOdometer or 0
    integrity = integrity or fallbackIntegrityValue or 1
    visual = visual or fallbackVisualValue or 1
    if odometer and integrity --[[and visual--]] then
      initCondition(partId, odometer, integrity, visual, defaultPaints)
    else
      log("E", "partCondition.initConditions", "Missing odometer, integrityValue or visualValue for part name " .. dumps(partId) .. " in vehicle " .. dumps(objectId) .. ": " .. dumps(partCondition))
    end
  end

  createConditionSnapshot("reset")
  setResetSnapshotKey("reset")
end

Callers

@/lua/ge/extensions/career/modules/delivery/vehicleOfferManager.lua
      offer.vehicle.vehId = vehId
      veh:queueLuaCommand(string.format("partCondition.initConditions(nil, %d, nil, %f)", mileage, career_modules_vehicleShopping.getVisualValueFromMileage(mileage)))
      -- turn vehicle off
@/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/extensions/career/modules/partInventory.lua
    core_vehicles.replaceVehicle(carModelToLoad, vehicleData, vehicleObj)
    queueCallbackInVehicle(vehicleObj, "career_modules_partInventory.initConditionsCallback", "partCondition.initConditions(" .. serialize(partConditions) .. ")", inventoryId)
  else
@/lua/ge/extensions/career/modules/inspectVehicle.lua
  core_vehicleBridge.executeAction(newVeh, 'setFreeze', true)
  newVeh:queueLuaCommand(string.format("partCondition.initConditions(nil, %d, nil, %f)", vehicleInfo.Mileage, career_modules_vehicleShopping.getVisualValueFromMileage(vehicleInfo.Mileage)))
  return newVeh
@/lua/vehicle/partCondition.lua
  hasSetPartCondition = {}
  M.initConditions(snapshotData)
end
  if tableIsEmpty(hasSetPartCondition) then
    initConditions(nil, fallbackOdometer, fallbackIntegrityValue, fallbackVisualValue)
  end
  hasSetPartCondition = {} --kill data from last init to avoid dual init warning
  M.initConditions(nil, 812812000, 1, 1)
end
  hasSetPartCondition = {} --kill data from last init to avoid dual init warning
  M.initConditions(data, 0, 1, 1)
end
  if tableIsEmpty(hasSetPartCondition) then
    M.initConditions(nil, 812812000, 1, 0.5)
  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/vehicle/extensions/gameplayInterfaceModules/interactPartCondition.lua

local function initConditions(params)
  local dataTypeCheck, dataTypeError = checkTableDataTypes(params, {"optional:table", "optional:number", "optional:number", "optional:number", "optional:table"})
  local defaultPaints = params[5]
  partCondition.initConditions(conditions, fallbackOdometer, fallbackIntegrityValue, fallbackVisualValue, defaultPaints)
end