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)
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)
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()
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)
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)
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)
def addSortIDs(self, isEnemy, arenaDP): self._items = vos_collections.VehiclesInfoCollection().ids(arenaDP)