diff --git a/behavior_pack_v8jz0zSR/Script_NeteaseModousIY5aSF/ceshi/service/CookingService.py b/behavior_pack_v8jz0zSR/Script_NeteaseModousIY5aSF/ceshi/service/CookingService.py index c1581e2..bd19047 100644 --- a/behavior_pack_v8jz0zSR/Script_NeteaseModousIY5aSF/ceshi/service/CookingService.py +++ b/behavior_pack_v8jz0zSR/Script_NeteaseModousIY5aSF/ceshi/service/CookingService.py @@ -62,7 +62,7 @@ class CookingService(BlueFoxServerSystem): def __init__(self, namespace, systemName): super(CookingService, self).__init__(namespace, systemName) print "===== CookingService init =====" - self.stirData = {} # 翻炒数据字典 + self.stirData = {} self.ListenEvent() def Destroy(self): @@ -102,11 +102,9 @@ class CookingService(BlueFoxServerSystem): return # 从内存或方块数据加载翻炒进度 - stirInfo = self.stirData.get(key) - if stirInfo is None: - stirInfo = self.loadStirData(playerId, pos, dim, recipe) - if stirInfo: - self.stirData[key] = stirInfo + stirInfo = self.stirData.get(key, {}) + if stirInfo: + self.stirData[key] = stirInfo if recipe.get("needFinished") is True and not stirInfo.get("finished"): return @@ -272,40 +270,13 @@ class CookingService(BlueFoxServerSystem): # ==================== 翻炒数据持久化 ==================== def loadStirData(self, playerId, pos, dim, recipe): - """从方块上读取之前保存的翻炒进度""" - try: - blockComp = comp.CreateBlockInfo(playerId) - blockData = blockComp.GetBlockEntityData(pos, dim) - if blockData and "rtdd_sc" in blockData: - return { - "count": blockData.get("rtdd_sc", 0), - "lastTime": blockData.get("rtdd_slt", 0.0), - "finished": blockData.get("rtdd_sf", False), - "dropIfDone": recipe.get("dropIfDone", []), - "dropIfNot": recipe.get("dropIfNot", []), - } - except: - pass return {} def saveStirData(self, playerId, pos, dim, data): - """把翻炒进度保存到方块上,退游戏再进也不会丢""" - try: - comp.CreateBlockInfo(playerId).SetBlockEntityData(pos, dim, { - "rtdd_sc": data["count"], - "rtdd_slt": data["lastTime"], - "rtdd_sf": data["finished"], - }) - except: - pass + pass def clearStirData(self, key, playerId, pos, dim): - """清除内存和方块上的翻炒数据""" self.stirData.pop(key, None) - try: - comp.CreateBlockInfo(playerId).SetBlockEntityData(pos, dim, {}) - except: - pass # ==================== 拆方块处理 ====================