Example #1
0
 def installItem(self, itemCD, rootCD, state):
     itemTypeID, nationID, itemID = vehicles.parseIntCompactDescr(itemCD)
     raise itemTypeID in GUI_ITEM_TYPE.VEHICLE_MODULES or AssertionError
     vehicle = self.itemsCache.items.getItemByCD(rootCD)
     if not vehicle.isInInventory:
         raise AssertionError('Vehicle must be in inventory')
         item = self.itemsCache.items.getItemByCD(itemCD)
         conflictedEqs = item.getConflictedEquipments(vehicle)
         RequestState.sent(state)
         if item.isInInventory:
             Waiting.show('applyModule')
             result = yield getInstallerProcessor(
                 vehicle,
                 item,
                 conflictedEqs=conflictedEqs,
                 skipConfirm=self.skipConfirm).request()
             processMsg(result)
             vehicle = result.success and item.itemTypeID in (
                 GUI_ITEM_TYPE.TURRET,
                 GUI_ITEM_TYPE.GUN) and self.itemsCache.items.getItemByCD(
                     vehicle.intCD)
             yield tryToLoadDefaultShellsLayout(vehicle)
         Waiting.hide('applyModule')
     RequestState.received(state)
     yield lambda callback=None: callback
     return
Example #2
0
 def installItem(self, itemCD, rootCD, state):
     itemTypeID, _, __ = vehicles.parseIntCompactDescr(itemCD)
     if itemTypeID not in GUI_ITEM_TYPE.VEHICLE_MODULES:
         raise SoftException(
             'Specified type (itemTypeID={}) is not type of module'.format(
                 itemTypeID))
     vehicle = self.itemsCache.items.getItemByCD(rootCD)
     if not vehicle.isInInventory:
         raise SoftException(
             'Vehicle (intCD={}) must be in inventory'.format(rootCD))
     item = self.itemsCache.items.getItemByCD(itemCD)
     conflictedEqs = item.getConflictedEquipments(vehicle)
     RequestState.sent(state)
     if item.isInInventory:
         Waiting.show('applyModule')
         result = yield getInstallerProcessor(
             vehicle,
             item,
             conflictedEqs=conflictedEqs,
             skipConfirm=self.skipConfirm).request()
         processMsg(result)
         if result.success and item.itemTypeID in (GUI_ITEM_TYPE.TURRET,
                                                   GUI_ITEM_TYPE.GUN):
             vehicle = self.itemsCache.items.getItemByCD(vehicle.intCD)
             yield tryToLoadDefaultShellsLayout(vehicle)
         Waiting.hide('applyModule')
     RequestState.received(state)
     yield lambda callback=None: callback
     return
Example #3
0
 def installItem(self, itemCD, rootCD, state):
     itemTypeID, nationID, itemID = vehicles.parseIntCompactDescr(itemCD)
     assert itemTypeID in GUI_ITEM_TYPE.VEHICLE_MODULES
     vehicle = g_itemsCache.items.getItemByCD(rootCD)
     assert vehicle.isInInventory, 'Vehicle must be in inventory'
     item = g_itemsCache.items.getItemByCD(itemCD)
     conflictedEqs = item.getConflictedEquipments(vehicle)
     RequestState.sent(state)
     if item.isInInventory:
         Waiting.show('applyModule')
         result = yield getInstallerProcessor(vehicle, item, conflictedEqs=conflictedEqs).request()
         processMsg(result)
         if result.success and item.itemTypeID in (GUI_ITEM_TYPE.TURRET, GUI_ITEM_TYPE.GUN):
             vehicle = g_itemsCache.items.getItemByCD(vehicle.intCD)
             yield tryToLoadDefaultShellsLayout(vehicle)
         Waiting.hide('applyModule')
     RequestState.received(state)
     yield lambda callback = None: callback
Example #4
0
 def _request(self, callback):
     RequestState.sent('unlock')
     BigWorld.player().stats.unlock(self.vehTypeCD, self.unlockIdx, lambda code: self._response(code, callback))
Example #5
0
 def _request(self, callback):
     RequestState.sent('unlock')
     BigWorld.player().stats.unlock(self.vehTypeCD, self.unlockIdx, lambda code: self._response(code, callback))