def _getRentData(self, vehicle, vehiclePricesActionData): result = [] rentPackages = vehicle.rentPackages for rentPackage in rentPackages: days = rentPackage['days'] actionRentPrice = None if rentPackage['rentPrice'] != rentPackage['defaultRentPrice']: actionRentPrice = packItemRentActionTooltipData( vehicle, rentPackage) result.append({ 'itemId': days, 'label': i18n.makeString(MENU.SHOP_MENU_VEHICLE_RENT_DAYS, days=days), 'price': rentPackage['rentPrice'].toMoneyTuple(), 'enabled': vehicle.maxRentDuration - vehicle.rentLeftTime >= days * time_utils.ONE_DAY, 'actionPrice': actionRentPrice }) result = self._addPriceBlock(result, vehicle, vehiclePricesActionData) selectedId = -1 for ddItem in result: if ddItem['enabled']: selectedId = ddItem['itemId'] break return {'data': result, 'selectedId': selectedId}
def _getRentData(self, vehicle, vehiclePricesActionData): result = [] rentPackages = vehicle.rentPackages for rentPackage in rentPackages: days = rentPackage['days'] actionRentPrice = None if rentPackage['rentPrice'] != rentPackage['defaultRentPrice']: actionRentPrice = packItemRentActionTooltipData(vehicle, rentPackage) result.append({'itemId': days, 'label': i18n.makeString(MENU.SHOP_MENU_VEHICLE_RENT_DAYS, days=days), 'price': rentPackage['rentPrice'], 'enabled': vehicle.maxRentDuration - vehicle.rentLeftTime >= days * time_utils.ONE_DAY, 'actionPrice': actionRentPrice}) result.append({'itemId': -1, 'label': i18n.makeString(MENU.SHOP_MENU_VEHICLE_RENT_FOREVER), 'price': vehicle.buyPrice, 'enabled': not vehicle.isDisabledForBuy and not vehicle.isHidden, 'actionPrice': vehiclePricesActionData}) selectedId = -1 for ddItem in result: if ddItem['enabled']: selectedId = ddItem['itemId'] break return {'data': result, 'selectedId': selectedId}
def _getVehicleData(self, node, item): nodeCD = node['id'] tags = item.tags credits, gold = item.minRentPrice or item.buyPrice status, statusLevel = self._getRentStatus(item) action = None minRentPricePackage = item.getRentPackage() if item.buyPrice != item.defaultPrice and not minRentPricePackage: action = packItemActionTooltipData(item) elif minRentPricePackage: if minRentPricePackage['rentPrice'] != minRentPricePackage['defaultRentPrice']: action = packItemRentActionTooltipData(item, minRentPricePackage) return {'id': nodeCD, 'state': node['state'], 'type': item.itemTypeName, 'nameString': item.shortUserName, 'primaryClass': self._vClassInfo.getInfoByTags(tags), 'level': item.level, 'longName': item.longUserName, 'iconPath': item.icon, 'smallIconPath': item.iconSmall, 'earnedXP': node['earnedXP'], 'shopPrice': (credits, gold, action), 'displayInfo': node['displayInfo'], 'unlockProps': node['unlockProps']._makeTuple(), 'status': status, 'statusLevel': statusLevel, 'isRemovable': item.isRented, 'isPremiumIGR': item.isPremiumIGR}
def _getRentData(self, vehicle, vehiclePricesActionData): result = [] rentPackages = vehicle.rentPackages for rentPackage in rentPackages: days = rentPackage['days'] actionRentPrice = None if rentPackage['rentPrice'] != rentPackage['defaultRentPrice']: actionRentPrice = packItemRentActionTooltipData(vehicle, rentPackage) result.append({'itemId': days, 'label': i18n.makeString(MENU.SHOP_MENU_VEHICLE_RENT_DAYS, days=days), 'price': rentPackage['rentPrice'], 'enabled': vehicle.maxRentDuration - vehicle.rentLeftTime >= days * time_utils.ONE_DAY, 'actionPrice': actionRentPrice}) result.append({'itemId': -1, 'label': i18n.makeString(MENU.SHOP_MENU_VEHICLE_RENT_FOREVER), 'price': vehicle.buyPrice, 'enabled': not vehicle.isDisabledForBuy and not vehicle.isHidden, 'actionPrice': vehiclePricesActionData}) selectedId = -1 for ddItem in result: if ddItem['enabled']: selectedId = ddItem['itemId'] break return {'data': result, 'selectedId': selectedId}
def _getVehicleData(self, node, item): nodeCD = node['id'] tags = item.tags credits, gold = item.minRentPrice or item.buyPrice status, statusLevel = self._getRentStatus(item) action = None minRentPricePackage = item.getRentPackage() if item.buyPrice != item.defaultPrice and not minRentPricePackage: action = packItemActionTooltipData(item) elif minRentPricePackage: if minRentPricePackage['rentPrice'] != minRentPricePackage[ 'defaultRentPrice']: action = packItemRentActionTooltipData(item, minRentPricePackage) return { 'id': nodeCD, 'state': node['state'], 'type': item.itemTypeName, 'nameString': item.shortUserName, 'primaryClass': self._vClassInfo.getInfoByTags(tags), 'level': item.level, 'longName': item.longUserName, 'iconPath': item.icon, 'smallIconPath': item.iconSmall, 'earnedXP': node['earnedXP'], 'shopPrice': (credits, gold, action), 'displayInfo': node['displayInfo'], 'unlockProps': node['unlockProps']._makeTuple(), 'status': status, 'statusLevel': statusLevel, 'isRemovable': item.isRented, 'isPremiumIGR': item.isPremiumIGR }
def _getItemData(self, node, item, rootItem): nodeCD = node['id'] vClass = {'name': ''} extraInfo = None status = statusLevel = '' minRentPricePackage = None vehicleBtnLabel = '' if item.itemTypeID == GUI_ITEM_TYPE.VEHICLE: vClass = self._vClassInfo.getInfoByTags(item.tags) status, statusLevel = self._getRentStatus(item) minRentPricePackage = item.getRentPackage() if item.isInInventory: vehicleBtnLabel = '#menu:research/labels/button/showInHangar' else: vehicleBtnLabel = '#menu:research/showInPreviewBtn/label' else: if item.itemTypeID == GUI_ITEM_TYPE.GUN and item.isClipGun( rootItem.descriptor): extraInfo = CLIP_ICON_PATH vClass.update({'name': item.itemTypeName}) credits, gold = item.minRentPrice or item.buyPrice action = None if item.buyPrice != item.defaultPrice and not minRentPricePackage: action = packItemActionTooltipData(item) elif minRentPricePackage: if minRentPricePackage['rentPrice'] != minRentPricePackage[ 'defaultRentPrice']: action = packItemRentActionTooltipData(item, minRentPricePackage) return { 'id': nodeCD, 'nameString': item.shortUserName, 'primaryClass': vClass, 'level': item.level, 'longName': item.longUserName, 'iconPath': item.icon, 'smallIconPath': item.iconSmall, 'earnedXP': node['earnedXP'], 'state': node['state'], 'shopPrice': (credits, gold, action), 'displayInfo': node['displayInfo'], 'unlockProps': node['unlockProps']._makeTuple(), 'extraInfo': extraInfo, 'status': status, 'statusLevel': statusLevel, 'isPremiumIGR': item.isPremiumIGR, 'showVehicleBtnLabel': i18n.makeString(vehicleBtnLabel), 'showVehicleBtnEnabled': item.isInInventory or item.isPreviewAllowed() }
def _getRentData(self, vehicle, vehiclePricesActionData): result = [] rentPackages = vehicle.rentPackages for rentPackage in rentPackages: rentID = rentPackage['rentID'] rentType, packageID = parseRentID(rentID) if rentType == constants.RentType.TIME_RENT: label = i18n.makeString(MENU.SHOP_MENU_VEHICLE_RENT_DAYS, days=packageID) enabled = isWithinMaxRentTime(vehicle.maxRentDuration, vehicle.rentLeftTime, packageID) elif rentType == constants.RentType.SEASON_RENT: seasonType = rentPackage['seasonType'] label = i18n.makeString(MENU.SHOP_MENU_VEHICLE_RENT_SEASON, season=packageID, seasonType=seasonType) enabled = True elif rentType == constants.RentType.SEASON_CYCLE_RENT: seasonType = rentPackage['seasonType'] label = i18n.makeString(MENU.SHOP_MENU_VEHICLE_RENT_CYCLE, cycle=packageID, seasonType=seasonType) enabled = True else: raise SoftException( 'Unknown rentType=[{}] in rentPackages ID [{}]!'.format( rentType, rentID)) actionRentPrice = None if rentPackage['rentPrice'] != rentPackage['defaultRentPrice']: actionRentPrice = packItemRentActionTooltipData( vehicle, rentPackage) result.append({ 'itemId': rentID, 'label': label, 'price': rentPackage['rentPrice'].toMoneyTuple(), 'enabled': enabled, 'actionPrice': actionRentPrice }) result = self._addPriceBlock(result, vehicle, vehiclePricesActionData) selectedId = -1 for ddItem in result: if ddItem['enabled']: selectedId = ddItem['itemId'] break return {'data': result, 'selectedId': selectedId}
def _getItemData(self, node, item, rootItem): nodeCD = node['id'] vClass = {'name': ''} extraInfo = None status = statusLevel = '' minRentPricePackage = None vehicleBtnLabel = '' if item.itemTypeID == GUI_ITEM_TYPE.VEHICLE: vClass = self._vClassInfo.getInfoByTags(item.tags) status, statusLevel = self._getRentStatus(item) minRentPricePackage = item.getRentPackage() if item.isInInventory: vehicleBtnLabel = '#menu:research/labels/button/showInHangar' else: vehicleBtnLabel = '#menu:research/showInPreviewBtn/label' else: if item.itemTypeID == GUI_ITEM_TYPE.GUN and item.isClipGun(rootItem.descriptor): extraInfo = CLIP_ICON_PATH vClass.update({'name': item.itemTypeName}) credits, gold = item.minRentPrice or item.buyPrice action = None if item.buyPrice != item.defaultPrice and not minRentPricePackage: action = packItemActionTooltipData(item) elif minRentPricePackage: if minRentPricePackage['rentPrice'] != minRentPricePackage['defaultRentPrice']: action = packItemRentActionTooltipData(item, minRentPricePackage) return {'id': nodeCD, 'nameString': item.shortUserName, 'primaryClass': vClass, 'level': item.level, 'longName': item.longUserName, 'iconPath': item.icon, 'smallIconPath': item.iconSmall, 'earnedXP': node['earnedXP'], 'state': node['state'], 'shopPrice': (credits, gold, action), 'displayInfo': node['displayInfo'], 'unlockProps': node['unlockProps']._makeTuple(), 'extraInfo': extraInfo, 'status': status, 'statusLevel': statusLevel, 'isPremiumIGR': item.isPremiumIGR, 'showVehicleBtnLabel': i18n.makeString(vehicleBtnLabel), 'showVehicleBtnEnabled': item.isInInventory or item.isPreviewAllowed()}