getPartCondition
Definition
-- @/lua/vehicle/powertrain.lua:1032
local function getPartCondition(partTypeData)
local canProvideIntegrityCondition = false
local canProvideVisualCondition = false
local powertrainCondition = {integrityValue = 1, integrityState = {}, visualValue = 1, visualState = {}}
--skip any powertrain wear/damage for the time being, reenable later
local relevantDevices = getPartRelevantDevices(partTypeData)
for _, deviceData in ipairs(relevantDevices) do
local device = M.getDevice(deviceData.device)
if device and device.getPartCondition then
local deviceIntegrityValue, deviceIntegrityState = device:getPartCondition(deviceData.subSystem)
powertrainCondition.integrityState[deviceData.device] = deviceIntegrityState
powertrainCondition.integrityValue = min(powertrainCondition.integrityValue, deviceIntegrityValue)
canProvideIntegrityCondition = true
end
end
return powertrainCondition, canProvideIntegrityCondition, canProvideVisualCondition
end
Callers
@/lua/vehicle/powertrain/supercharger.lua
local function getPartCondition()
local integrityState = {
@/lua/vehicle/powertrain/cvtGearbox.lua
local function getPartCondition(device)
local integrityState = {damageFrictionCoef = device.damageFrictionCoef, isBroken = device.isBroken}
@/lua/vehicle/powertrain/sequentialGearbox.lua
local function getPartCondition(device)
local integrityState = {damageFrictionCoef = device.damageFrictionCoef, isBroken = device.isBroken}
@/lua/vehicle/powertrain/shaft.lua
local function getPartCondition(device)
local integrityState = {damageFrictionCoef = device.damageFrictionCoef, isBroken = device.isBroken}
@/lua/vehicle/powertrain/hydraulicPump.lua
local function getPartCondition(device)
local integrityState = {isBroken = device.isBroken}
@/lua/vehicle/partCondition.lua
local powertrainCondition, canProvidePowertrainIntegrityCondition, canProvidePowertrainVisualCondition = powertrain.getPartCondition(partData)
local energyStorageCondition, canProvideEnergyStorageIntegrityCondition, canProvideEnergyStorageVisualCondition = energyStorage.getPartCondition(partData)
local powertrainCondition, canProvidePowertrainIntegrityCondition, canProvidePowertrainVisualCondition = powertrain.getPartCondition(partData)
local energyStorageCondition, canProvideEnergyStorageIntegrityCondition, canProvideEnergyStorageVisualCondition = energyStorage.getPartCondition(partData)
local jbeamCondition, canProvideBeamstateCondition = beamstate.getPartCondition(partId, partData)
local energyStorageCondition, canProvideEnergyStorageIntegrityCondition, canProvideEnergyStorageVisualCondition = energyStorage.getPartCondition(partData)
local jbeamCondition, canProvideBeamstateCondition = beamstate.getPartCondition(partId, partData)
local paintCondition, canProvidePaintCondition = getPaintCondition(partId, partData)
@/lua/vehicle/energyStorage/pressureTank.lua
local function getPartCondition(storage)
local integrityState = {
@/lua/vehicle/energyStorage.lua
local function getPartCondition(partTypeData)
local relevantStorages = getPartRelevantStorages(partTypeData)
if storage and storage.getPartCondition then
local storageIntegrityValue, storageIntegrityState = storage:getPartCondition()
energyStorageCondition.integrityState[relevantStorage] = storageIntegrityState
@/lua/vehicle/powertrain/splitShaft.lua
local function getPartCondition(device)
local integrityState = {
@/lua/vehicle/controller/gauges/genericGauges.lua
local function getPartCondition(storage)
local integrityState = {
@/lua/vehicle/powertrain/differential.lua
local function getPartCondition(device)
local integrityState = {
@/lua/vehicle/powertrain/automaticGearbox.lua
local function getPartCondition(device)
local integrityState = {
@/lua/vehicle/powertrain/combustionEngine.lua
local function getPartCondition(device, subSystem)
if not subSystem then
elseif subSystem == "turbocharger" then
local integrityValue, integrityState = device.turbocharger.getPartCondition()
return integrityValue, integrityState
-- elseif subSystem == "supercharger" then
-- local integrityValue, integrityState = device.supercharger.getPartCondition()
-- return integrityValue, integrityState
@/lua/vehicle/powertrain/linearActuator.lua
local function getPartCondition(device)
local integrityState = {damageFrictionCoef = device.damageFrictionCoef, isBroken = device.isBroken}
@/lua/vehicle/energyStorage/fuelTank.lua
local function getPartCondition(storage)
local integrityState = {
@/lua/vehicle/powertrain/electricWinch.lua
local function getPartCondition(device)
local integrityState = {damageFrictionCoef = device.damageFrictionCoef, isBroken = device.isBroken}
@/lua/vehicle/energyStorage/electricBattery.lua
local function getPartCondition(storage)
local integrityState = {
@/lua/vehicle/powertrain/manualGearbox.lua
local function getPartCondition(device)
local integrityState = {
@/lua/vehicle/powertrain/rangeBox.lua
local function getPartCondition(device)
local integrityState = {damageFrictionCoef = device.damageFrictionCoef, isBroken = device.isBroken}
@/lua/vehicle/powertrain/torqueConverter.lua
local function getPartCondition(device)
local integrityState = {damageLockupClutchTorqueCoef = device.damageLockupClutchTorqueCoef}
@/lua/vehicle/powertrain/hydraulicAccumulator.lua
local function getPartCondition(device)
local integrityState = {isBroken = device.isBroken}
@/lua/vehicle/powertrain/frictionClutch.lua
local function getPartCondition(device)
local integrityState = {
@/lua/vehicle/energyStorage/n2oTank.lua
local function getPartCondition(storage)
local integrityState = {
@/lua/vehicle/powertrain.lua
if device and device.getPartCondition then
local deviceIntegrityValue, deviceIntegrityState = device:getPartCondition(deviceData.subSystem)
powertrainCondition.integrityState[deviceData.device] = deviceIntegrityState
@/lua/vehicle/powertrain/centrifugalClutch.lua
local function getPartCondition(device)
local integrityState = {
@/lua/vehicle/powertrain/dctGearbox.lua
local function getPartCondition(device)
local integrityState = {
@/lua/vehicle/powertrain/turbocharger.lua
local function getPartCondition()
local integrityState = {
@/lua/vehicle/powertrain/compressor.lua
local function getPartCondition(device)
local integrityState = {isBroken = device.isBroken}
@/lua/vehicle/beamstate.lua
local function getPartCondition(partId, partTypeData)
local canProvideCondition = false