def __onSyncResponse(self, syncID, resultID, ext=None):
        ext = ext or {}
        if resultID == AccountCommands.RES_NON_PLAYER:
            return
        if syncID != self.__syncID:
            return
        if resultID < 0:
            LOG_ERROR('Shop synchronization failed. Repeating')
            self.resynchronize()
            return
        if resultID == AccountCommands.RES_CACHE:
            try:
                data = cPickle.loads(
                    zlib.decompress(self.__persistentCache.getData()))
            except Exception:
                self.resynchronize()
                return

            self.__onSyncDataReceived(data)
        elif resultID == AccountCommands.RES_SUCCESS:
            if self.__isFirstSync:
                self.__isFirstSync = False
            else:
                events.onShopResync()
        self.__isSynchronizing = False
示例#2
0
 def __onSyncDataReceived(self, data):
     data['sellPriceModif'] = data['sellPriceFactor']
     self.__cache = data
     self.__isSynchronizing = False
     if self.__isFirstSync:
         self.__isFirstSync = False
     else:
         events.onShopResync()
示例#3
0
 def __onSyncComplete(self, syncID, data):
     if syncID != self.__syncID:
         return
     elif data is None:
         return
     else:
         data['sellPriceModif'] = data['sellPriceFactor']
         self.__cache = data
         self.__isSynchronizing = False
         if self.__isFirstSync:
             self.__isFirstSync = False
         else:
             events.onShopResync()
         return
示例#4
0
 def __onSyncComplete(self, syncID, data):
     if syncID != self.__syncID:
         return
     elif data is None:
         return
     else:
         data['sellPriceModif'] = data['sellPriceFactor']
         self.__cache = data
         self.__isSynchronizing = False
         if self.__isFirstSync:
             self.__isFirstSync = False
         else:
             events.onShopResync()
         return
示例#5
0
文件: shop.py 项目: Infernux/Projects
 def __onSyncResponse(self, syncID, resultID, ext = {}):
     if resultID == AccountCommands.RES_NON_PLAYER:
         return 
     if syncID != self.__syncID:
         return 
     if resultID < 0:
         LOG_ERROR('Shop synchronization failed. Repeating')
         self.resynchronize()
         return 
     if resultID == AccountCommands.RES_CACHE:
         try:
             data = cPickle.loads(zlib.decompress(self.__persistentCache.getData()))
         except Exception:
             self.resynchronize()
             return 
         self.__onSyncDataReceived(data)
     elif resultID == AccountCommands.RES_SUCCESS:
         if self.__isFirstSync:
             self.__isFirstSync = False
         else:
             events.onShopResync()
     self.__isSynchronizing = False