Exemplo n.º 1
0
 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
Exemplo n.º 2
0
 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
Exemplo n.º 3
0
 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