def getFormattedParamsList(descriptor, parameters, excludeRelative=False): if vehicles.isVehicleDescr(descriptor): compactDescr = descriptor.type.compactDescr else: compactDescr = descriptor.compactDescr itemTypeIdx = getTypeOfCompactDescr(compactDescr) if itemTypeIdx == ITEM_TYPES.equipment: eqDescr = vehicles.getItemByCompactDescr(compactDescr) paramsList = ITEMS_PARAMS_LIST[itemTypeIdx].get(type(eqDescr), []) else: paramsList = ITEMS_PARAMS_LIST[itemTypeIdx] params = [] for paramName in paramsList: if excludeRelative and isRelativeParameter(paramName): continue paramValue = parameters.get(paramName) if paramValue: fmtValue = formatParameter(paramName, paramValue) if fmtValue: if paramName == 'autoReloadTime' and descriptor.gun.autoreloadHasBoost: paramName = 'autoReloadTimeBoost' elif paramName == CHASSIS_REPAIR_TIME and descriptor.isTrackWithinTrack: paramName = CHASSIS_REPAIR_TIME_YOH params.append((paramName, fmtValue)) return params
def _getParamsProvider(item, vehicleDescr=None): if vehicles.isVehicleDescr(item.descriptor): return _ITEM_TYPE_HANDLERS[ITEM_TYPES.vehicle](item) else: itemTypeIdx, _, _ = vehicles.parseIntCompactDescr( item.descriptor.compactDescr) return _ITEM_TYPE_HANDLERS[itemTypeIdx](item.descriptor, vehicleDescr)
def getFormattedParamsList(descriptor, parameters, excludeRelative=False): if vehicles.isVehicleDescr(descriptor): compactDescr = descriptor.type.compactDescr else: compactDescr = descriptor.compactDescr itemTypeIdx = getTypeOfCompactDescr(compactDescr) if itemTypeIdx == ITEM_TYPES.equipment: eqDescr = vehicles.getItemByCompactDescr(compactDescr) paramsList = ITEMS_PARAMS_LIST[itemTypeIdx].get(type(eqDescr), []) else: paramsList = ITEMS_PARAMS_LIST[itemTypeIdx] params = [] for paramName in paramsList: if excludeRelative and isRelativeParameter(paramName): continue paramValue = parameters.get(paramName) if paramValue: fmtValue = formatParameter(paramName, paramValue) if fmtValue: params.append((paramName, fmtValue)) return params