예제 #1
0
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
예제 #2
0
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