Beispiel #1
0
 def __init__(self, tankman):
     self.__tankman = tankman
     restorePrice, _ = getTankmenRestoreInfo(tankman)
     super(TankmanRestore, self).__init__(tankman, (plugins.TankmanLockedValidator(tankman),
      plugins.TankmanOperationConfirmator('restoreTankman', tankman),
      plugins.BarracksSlotsValidator(berthsNeeded=1),
      plugins.MoneyValidator(restorePrice),
      plugins.IsLongDisconnectedFromCenter()))
Beispiel #2
0
 def __init__(self, tankman):
     raise tankman is not None or AssertionError('tankman must be given')
     self.__tankman = tankman
     restorePrice, _ = getTankmenRestoreInfo(tankman)
     super(TankmanRestore, self).__init__(tankman, [plugins.TankmanOperationConfirmator('restoreTankman', tankman),
      plugins.BarracksSlotsValidator(berthsNeeded=1),
      plugins.MoneyValidator(restorePrice),
      plugins.IsLongDisconnectedFromCenter()])
     return
Beispiel #3
0
 def __init__(self, tankman):
     vehicle = None
     if tankman.vehicleInvID > 0:
         vehicle = self.itemsCache.items.getVehicle(tankman.vehicleInvID)
     confirmator = plugins.TankmanOperationConfirmator('protectedDismissTankman', tankman)
     super(TankmanDismiss, self).__init__(tankman, [plugins.TankmanLockedValidator(tankman), confirmator, plugins.VehicleValidator(vehicle, isEnabled=tankman.vehicleInvID > 0)])
     deletedTankmen = self.restore.getTankmenBeingDeleted()
     if deletedTankmen and tankman.isRestorable():
         self.addPlugin(plugins.BufferOverflowConfirmator({'dismissed': tankman,
          'deleted': deletedTankmen[0]}))
     return
Beispiel #4
0
 def __init__(self, tankman):
     vehicle = None
     if tankman.vehicleInvID > 0:
         vehicle = self.itemsCache.items.getVehicle(tankman.vehicleInvID)
     confirmator = plugins.TankmanOperationConfirmator(
         'protectedDismissTankman', tankman)
     super(TankmanDismiss, self).__init__(tankman, [
         plugins.TankmanLockedValidator(tankman), confirmator,
         plugins.VehicleValidator(vehicle,
                                  isEnabled=tankman.vehicleInvID > 0)
     ])
     deletedTankmen = self.restore.getTankmenBeingDeleted()
     if deletedTankmen and tankman.isRestorable():
         self.addPlugin(
             plugins.BufferOverflowConfirmator({
                 'dismissed': tankman,
                 'deleted': deletedTankmen[0]
             }))
     self.__compensationPriceObject = None
     self.__compensationRequired = False
     lobbyContext = dependency.instance(ILobbyContext)
     equippedSkinID = tankman.skinID
     if equippedSkinID != NO_CREW_SKIN_ID and lobbyContext.getServerSettings(
     ).isCrewSkinsEnabled():
         crewSkinItem = self.itemsCache.items.getCrewSkin(equippedSkinID)
         self.__compensationPriceObject = crewSkinItem.getBuyPrice()
         self.__compensationRequired = not crewSkinItem.isStorageAvailable()
         self.addPlugin(
             plugins.CrewSkinsCompensationDialogConfirmator(
                 'crewSkins/skinWillBeDeleted',
                 plugins.CrewSkinsRemovalCompensationDialogMeta.
                 OUT_OF_STORAGE_SUFFIX,
                 ctx={
                     'price': self.__compensationPriceObject,
                     'action': None,
                     'items': [crewSkinItem]
                 },
                 isEnabled=self.__compensationRequired))
     return