Exemplo n.º 1
0
 def onStartBattle(self):
     BigWorld.player().arena.onVehicleKilled += self.onVehicleKilled
     collection = vos_collections.VehiclesInfoCollection().iterator(self.sessionProvider.getArenaDP())
     for vInfoVO in collection:
         vehicleID = vInfoVO.vehicleID
         self.__hpCache[vehicleID] = {'current': self.getVehicleHealth(vehicleID), 'max': vInfoVO.vehicleType.maxHealth}
         self.setHPField(vehicleID)
Exemplo n.º 2
0
    def invalidateVehiclesInfo(self, arenaDP):
        collection = vos_collections.VehiclesInfoCollection()
        self.__deadAllies.clear()
        self.__deadEnemies.clear()
        for vInfoVO in collection.iterator(arenaDP):
            if not vInfoVO.isAlive():
                self.__registerDeadVehicle(vInfoVO, arenaDP)

        self.__checkHasAlive(arenaDP)
Exemplo n.º 3
0
    def invalidateUsersTags(self):
        arenaDP = self._battleCtx.getArenaDP()
        exchange = self._exchangeBroker.getUsersTagsExchange()
        collection = vos_collections.VehiclesInfoCollection()
        for vInfoVO in collection.iterator(arenaDP):
            with exchange.getCollectedComponent(self.__isEnemyTeam(arenaDP, vInfoVO.team)) as item:
                item.addVehicleInfo(vInfoVO)

        data = exchange.get()
        if data:
            self.as_setUserTagsS(data)
    def __initializeVehiclesInfo(self):
        arenaDP = self.__battleCtx.getArenaDP()
        collection = vos_collections.VehiclesInfoCollection()
        self.__clear()
        for vInfoVO in collection.iterator(arenaDP):
            if not vInfoVO.isAlive():
                self.__registerDeadVehicle(vInfoVO, arenaDP)
            self.__registerAliveVehicle(vInfoVO, arenaDP)

        self.__updateDeadVehicles()
        self.__updateVehiclesHealth()
Exemplo n.º 5
0
    def invalidateUsersTags(self):
        """New list of chat rosters has been received."""
        arenaDP = self._battleCtx.getArenaDP()
        isEnemyTeam = arenaDP.isEnemyTeam
        exchange = self._exchangeBroker.getUsersTagsExchange()
        collection = vos_collections.VehiclesInfoCollection()
        for vInfoVO in collection.iterator(arenaDP):
            with exchange.getCollectedComponent(isEnemyTeam(vInfoVO.team)) as item:
                item.addVehicleInfo(vInfoVO)

        data = exchange.get()
        if data:
            self.as_setUserTagsS(data)
Exemplo n.º 6
0
    def invalidateVehiclesInfo(self, arenaDP):
        self.__updatePersonalPrebattleID(arenaDP)
        self.__updateSquadRestrictions()
        exchange = self._exchangeBroker.getVehiclesInfoExchange()
        collection = vos_collections.VehiclesInfoCollection()
        for vInfoVO in collection.iterator(arenaDP):
            if vInfoVO.isObserver():
                continue
            isEnemy, overrides = self.__getTeamOverrides(vInfoVO, arenaDP)
            with exchange.getCollectedComponent(isEnemy) as item:
                item.addVehicleInfo(vInfoVO, overrides)

        exchange.addSortIDs(arenaDP, False, True)
        data = exchange.get()
        if data:
            self.as_setVehiclesDataS(data)
Exemplo n.º 7
0
    def invalidateVehiclesInfo(self, arenaDP):
        """New list of vehicles has been received.
        :param arenaDP: instance of ArenaDataProvider.
        """
        self.__updatePersonalPrebattleID(arenaDP)
        self.__updateSquadRestrictions()
        exchange = self._exchangeBroker.getVehiclesInfoExchange()
        collection = vos_collections.VehiclesInfoCollection()
        isPlayerObserver = self._battleCtx.isPlayerObserver()
        for vInfoVO in collection.iterator(arenaDP):
            if vInfoVO.isObserver() and isPlayerObserver:
                continue
            isEnemy, overrides = self.__getTeamOverrides(vInfoVO, arenaDP)
            with exchange.getCollectedComponent(isEnemy) as item:
                item.addVehicleInfo(vInfoVO, overrides)

        exchange.addSortIDs(arenaDP, False, True)
        data = exchange.get()
        if data:
            self.as_setVehiclesDataS(data)
Exemplo n.º 8
0
 def addSortIDs(self, isEnemy, arenaDP):
     self._items = vos_collections.VehiclesInfoCollection().ids(arenaDP)