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
def __onSyncDataReceived(self, data): data['sellPriceModif'] = data['sellPriceFactor'] self.__cache = data self.__isSynchronizing = False if self.__isFirstSync: self.__isFirstSync = False else: events.onShopResync()
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
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