From ec19547ca0985de3f1c4045411ee6c171204e535 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 21 十月 2025 19:00:45 +0800
Subject: [PATCH] 297 【常规】坊市系统-服务端(坊市、公会、将魂)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |  104 ++++++++++++++++++++++++----------------------------
 1 files changed, 48 insertions(+), 56 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index c38bb47..84b5b01 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -1154,25 +1154,16 @@
                 "Store":(
                         ("DWORD", "ID", 1),
                         ("DWORD", "ShopType", 0),
-                        ("BYTE", "OperationActionShop", 0),
                         ("DWORD", "ItemID", 0),
                         ("WORD", "ItemCnt", 0),
-                        ("BYTE", "IsBind", 0),
                         ("list", "ItemListEx", 0),
-                        ("DWORD", "MainItemID", 0),
-                        ("list", "JobItem", 0),
-                        ("BYTE", "RefreshLimit", 0),
-                        ("BYTE", "RefreshType", 0),
-                        ("list", "LimitVIPLV", 0),
-                        ("DWORD", "LimitLV", 0),
-                        ("list", "LimitCnt", 0),
-                        ("DWORD", "ServerLimitCnt", 0),
+                        ("BYTE", "ResetType", 0),
+                        ("DWORD", "LimitCnt", 0),
                         ("BYTE", "MoneyType", 0),
                         ("DWORD", "MoneyNum", 0),
                         ("DWORD", "MoneyOriginal", 0),
-                        ("DWORD", "LimitValue", 0),
-                        ("char", "NotifyMark", 0),
-                        ("char", "MailKey", 0),
+                        ("BYTE", "UnlockType", 0),
+                        ("DWORD", "UnlockValue", 0),
                         ),
 
                 "ActSpringSale":(
@@ -1458,6 +1449,7 @@
                         ("list", "GridItemRateList1", 0),
                         ("list", "GridItemRateList2", 0),
                         ("dict", "GridItemRateList3", 0),
+                        ("list", "GridItemRateList4", 0),
                         ("dict", "LuckyItemRateInfo", 0),
                         ),
 
@@ -2213,11 +2205,6 @@
                         ("list", "AwardItemList", 0),
                         ),
 
-                "MysteryShop":(
-                        ("list", "LVRange", 0),
-                        ("DWORD", "GoodsID", 0),
-                        ),
-
                 "EquipPlaceIndexMap":(
                         ("DWORD", "GridIndex", 0),
                         ("DWORD", "ClassLV", 1),
@@ -2419,6 +2406,15 @@
                         ("list", "EquipColorRateList", 0),
                         ("list", "EquipColorRateList1", 0),
                         ("list", "EquipColorRateList2", 0),
+                        ),
+
+                "LLMJ":(
+                        ("BYTE", "MJLV", 1),
+                        ("DWORD", "CostWarhammer", 0),
+                        ("BYTE", "ExpAddPer", 0),
+                        ("DWORD", "ExpExUpper", 0),
+                        ("BYTE", "DecomposeAddPer", 0),
+                        ("DWORD", "DecomposeExUpper", 0),
                         ),
 
                 "GoldRushCamp":(
@@ -4080,25 +4076,16 @@
         
     def GetID(self): return self.attrTuple[0] # ID DWORD
     def GetShopType(self): return self.attrTuple[1] # 商店类型 DWORD
-    def GetOperationActionShop(self): return self.attrTuple[2] # 是否运营活动商店 BYTE
-    def GetItemID(self): return self.attrTuple[3] # 物品ID DWORD
-    def GetItemCnt(self): return self.attrTuple[4] # 物品数量 WORD
-    def GetIsBind(self): return self.attrTuple[5] # 是否绑定 BYTE
-    def GetItemListEx(self): return self.attrTuple[6] # 扩展物品列表[[物品ID,个数,是否绑定],...] list
-    def GetMainItemID(self): return self.attrTuple[7] # 标的物品ID DWORD
-    def GetJobItem(self): return self.attrTuple[8] # 职业替换物品 list
-    def GetRefreshLimit(self): return self.attrTuple[9] # 是否限制刷新限购次数,即是否永久限购,包含活动也不重置 BYTE
-    def GetRefreshType(self): return self.attrTuple[10] # 刷新类型 0-不重置,1-onWeek0点,2-onWeek5点,3-OnDay0点,4-OnDay5点 BYTE
-    def GetLimitVIPLV(self): return self.attrTuple[11] # VIP限制 list
-    def GetLimitLV(self): return self.attrTuple[12] # 等级限制 DWORD
-    def GetLimitCnt(self): return self.attrTuple[13] # 个人限制数量 list
-    def GetServerLimitCnt(self): return self.attrTuple[14] # 全服限制数量 DWORD
-    def GetMoneyType(self): return self.attrTuple[15] # 金钱类型 BYTE
-    def GetMoneyNum(self): return self.attrTuple[16] # 金钱数量 DWORD
-    def GetMoneyOriginal(self): return self.attrTuple[17] # 原价 DWORD
-    def GetLimitValue(self): return self.attrTuple[18] # 限制条件 DWORD
-    def GetNotifyMark(self): return self.attrTuple[19] # 广播提示 char
-    def GetMailKey(self): return self.attrTuple[20] # 背包不足时邮件KEY char
+    def GetItemID(self): return self.attrTuple[2] # 物品ID DWORD
+    def GetItemCnt(self): return self.attrTuple[3] # 物品数量 WORD
+    def GetItemListEx(self): return self.attrTuple[4] # 扩展物品列表[[物品ID,个数,是否绑定],...] list
+    def GetResetType(self): return self.attrTuple[5] # 重置类型 BYTE
+    def GetLimitCnt(self): return self.attrTuple[6] # 个人限制数量 DWORD
+    def GetMoneyType(self): return self.attrTuple[7] # 金钱类型 BYTE
+    def GetMoneyNum(self): return self.attrTuple[8] # 金钱数量 DWORD
+    def GetMoneyOriginal(self): return self.attrTuple[9] # 原价 DWORD
+    def GetUnlockType(self): return self.attrTuple[10] # 解锁类型 BYTE
+    def GetUnlockValue(self): return self.attrTuple[11] # 解锁所需值 DWORD
 
 # 限时特惠表
 class IPY_ActSpringSale():
@@ -4519,7 +4506,8 @@
     def GetGridItemRateList1(self): return self.attrTuple[6] # 常规产出格子编号饼图 [[概率, 格子编号], ...] list
     def GetGridItemRateList2(self): return self.attrTuple[7] # 每满x次保底产出格子编号饼图 [[概率, 格子编号], ...] list
     def GetGridItemRateList3(self): return self.attrTuple[8] # 第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...} dict
-    def GetLuckyItemRateInfo(self): return self.attrTuple[9] # 幸运产出概率饼图 {"幸运值":[[概率, 格子编号], ...], ...} dict
+    def GetGridItemRateList4(self): return self.attrTuple[9] # 第x次x抽必出 list
+    def GetLuckyItemRateInfo(self): return self.attrTuple[10] # 幸运产出概率饼图 {"幸运值":[[概率, 格子编号], ...], ...} dict
 
 # 寻宝物品库
 class IPY_TreasureItemLib():
@@ -5698,16 +5686,6 @@
     def GetCTGAtleast(self): return self.attrTuple[3] # 至少充值RMB float
     def GetAwardItemList(self): return self.attrTuple[4] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
 
-# 神秘商店表
-class IPY_MysteryShop():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetLVRange(self): return self.attrTuple[0] # 等级范围 list
-    def GetGoodsID(self): return self.attrTuple[1] # 商城表ID DWORD
-
 # 装备位背包索引映射表
 class IPY_EquipPlaceIndexMap():
     
@@ -6046,6 +6024,20 @@
     def GetEquipColorRateList1(self): return self.attrTuple[4] # 精英产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
     def GetEquipColorRateList2(self): return self.attrTuple[5] # boss产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
 
+# 历练秘笈
+class IPY_LLMJ():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetMJLV(self): return self.attrTuple[0] # 秘笈等级 BYTE
+    def GetCostWarhammer(self): return self.attrTuple[1] # 消耗战锤 DWORD
+    def GetExpAddPer(self): return self.attrTuple[2] # 经验加成比例,百分比 BYTE
+    def GetExpExUpper(self): return self.attrTuple[3] # 经验加成每日上限 DWORD
+    def GetDecomposeAddPer(self): return self.attrTuple[4] # 分解加成比例,百分比 BYTE
+    def GetDecomposeExUpper(self): return self.attrTuple[5] # 结晶加成每日上限 DWORD
+
 # 淘金营地表
 class IPY_GoldRushCamp():
     
@@ -6362,7 +6354,6 @@
         self.__LoadFileData("LuckyTreasureTemplate", onlyCheck)
         self.__LoadFileData("CrossActCTGBillboardDabiao", onlyCheck)
         self.__LoadFileData("CrossActCTGBillboardOrder", onlyCheck)
-        self.__LoadFileData("MysteryShop", onlyCheck)
         self.__LoadFileData("EquipPlaceIndexMap", onlyCheck)
         self.__LoadFileData("EquipShenAttr", onlyCheck)
         self.__LoadFileData("EquipShenEvolve", onlyCheck)
@@ -6390,6 +6381,7 @@
         self.__LoadFileData("Xiangong", onlyCheck)
         self.__LoadFileData("TiandaoTree", onlyCheck)
         self.__LoadFileData("TreeLV", onlyCheck)
+        self.__LoadFileData("LLMJ", onlyCheck)
         self.__LoadFileData("GoldRushCamp", onlyCheck)
         self.__LoadFileData("GoldRushWorker", onlyCheck)
         self.__LoadFileData("GoldRushItem", onlyCheck)
@@ -8110,13 +8102,6 @@
         self.CheckLoadData("CrossActCTGBillboardOrder")
         return self.ipyCrossActCTGBillboardOrderCache[index]
 
-    def GetMysteryShopCount(self):
-        self.CheckLoadData("MysteryShop")
-        return self.ipyMysteryShopLen
-    def GetMysteryShopByIndex(self, index):
-        self.CheckLoadData("MysteryShop")
-        return self.ipyMysteryShopCache[index]
-
     def GetEquipPlaceIndexMapCount(self):
         self.CheckLoadData("EquipPlaceIndexMap")
         return self.ipyEquipPlaceIndexMapLen
@@ -8306,6 +8291,13 @@
         self.CheckLoadData("TreeLV")
         return self.ipyTreeLVCache[index]
 
+    def GetLLMJCount(self):
+        self.CheckLoadData("LLMJ")
+        return self.ipyLLMJLen
+    def GetLLMJByIndex(self, index):
+        self.CheckLoadData("LLMJ")
+        return self.ipyLLMJCache[index]
+
     def GetGoldRushCampCount(self):
         self.CheckLoadData("GoldRushCamp")
         return self.ipyGoldRushCampLen

--
Gitblit v1.8.0