def onUnitUpdate(self, unitMgrID, packedUnit, packedOps): LOG_DEBUG('onUnitUpdate: unitMgrID=%s, packedUnit=%r, packedOps=%r' % (unitMgrID, packedUnit, packedOps)) if self.id != unitMgrID: prevMgrID = self.id self.id = unitMgrID self.battleID = None self._clearUnit() if not self.id and prevMgrID: self.onUnitLeft(prevMgrID) if packedUnit: unit = ClientUnit(packedUnit=packedUnit) self._clearUnit() self.__unit = unit if 'battleID' in unit._extras: self.battleID = unit._extras['battleID'] self.onUnitJoined(self.id, unit.getPrebattleType()) if packedOps: unit = self.__unit if unit is not None: unit.lock() unit.unpackOps(packedOps) unit.unlock() unit.onUnitUpdated() return
def onUnitUpdate(self, unitMgrID, packedUnit, packedOps): LOG_DEBUG('onUnitUpdate: unitMgrID=%s, packedUnit=%r, packedOps=%r' % (unitMgrID, packedUnit, packedOps)) if not unitMgrID: unitIdx = 0 else: unitIdx = 1 if self.id != unitMgrID: prevMgrID = self.id prevUnitIdx = self.unitIdx self.id = unitMgrID self.unitIdx = unitIdx self.battleID = None self._clearUnits() if not self.id and prevMgrID: self.onUnitLeft(prevMgrID, prevUnitIdx) if packedUnit: unit = ClientUnit(packedUnit=packedUnit) if unitIdx in self.units: self.units[unitIdx].destroy() self.units[unitIdx] = unit if 'battleID' in unit._extras: self.battleID = unit._extras['battleID'] self.onUnitJoined(self.id, self.unitIdx, unit.getPrebattleType()) if packedOps: unit = self.units.get(unitIdx) if unit: unit.lock() unit.unpackOps(packedOps) unit.unlock() unit.onUnitUpdated() return
def onUnitUpdate(self, unitMgrID, packedUnit, packedOps): LOG_DEBUG('onUnitUpdate: unitMgrID=%s, packedUnit=%r, packedOps=%r' % (unitMgrID, packedUnit, packedOps)) if not unitMgrID: unitIdx = 0 else: unitIdx = 1 if self.id != unitMgrID: prevMgrID = self.id prevUnitIdx = self.unitIdx self.id = unitMgrID self.unitIdx = unitIdx self.battleID = None self._clearUnits() if not self.id and prevMgrID: self.onUnitLeft(prevMgrID, prevUnitIdx) if packedUnit: unit = ClientUnit(packedUnit=packedUnit) if unitIdx in self.units: self.units[unitIdx].destroy() self.units[unitIdx] = unit if 'battleID' in unit._extras: self.battleID = unit._extras['battleID'] self.onUnitJoined(self.id, self.unitIdx) if packedOps: unit = self.units.get(unitIdx) if unit: unit.lock() unit.unpackOps(packedOps) unit.unlock() unit.onUnitUpdated() return