From a7ab0247c7b8eff06ad104bee39bc035384ca43e Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 23 七月 2025 12:08:22 +0800
Subject: [PATCH] 80 【常规】背包-服务端(增加背包购买格子;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |  161 +++++++++++++++++++++++++++++++----------------------
 1 files changed, 94 insertions(+), 67 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 7ccbec3..e39ca0d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -68,6 +68,7 @@
                         ("WORD", "DefInheritPer", 0),
                         ("WORD", "HPInheritPer", 0),
                         ("dict", "BatAttrDict", 0),
+                        ("list", "FetterIDList", 0),
                         ),
 
                 "HeroTalent":(
@@ -104,6 +105,13 @@
                         ("list", "AttrValueList", 0),
                         ),
 
+                "HeroLineupHalo":(
+                        ("WORD", "Country", 1),
+                        ("BYTE", "NeedHeroCount", 0),
+                        ("list", "AttrIDList", 0),
+                        ("list", "AttrValueList", 0),
+                        ),
+
                 "HeroSkin":(
                         ("DWORD", "SkinID", 1),
                         ("list", "WearAttrIDList", 0),
@@ -114,7 +122,6 @@
 
                 "HeroQuality":(
                         ("DWORD", "Quality", 1),
-                        ("list", "UPCostItem", 0),
                         ("list", "InitTalentWeight", 0),
                         ("BYTE", "InitStarUpper", 0),
                         ("DWORD", "InitAddPer", 0),
@@ -138,6 +145,17 @@
                         ("DWORD", "Quality", 1),
                         ("DWORD", "AwakeLV", 1),
                         ("list", "UPCostItem", 0),
+                        ),
+
+                "HeroQualityLV":(
+                        ("DWORD", "Quality", 1),
+                        ("DWORD", "HeroLV", 1),
+                        ("list", "UPCostItem", 0),
+                        ),
+
+                "PlayerAttr":(
+                        ("DWORD", "AttrID", 1),
+                        ("char", "Parameter", 0),
                         ),
 
                 "MainChapter":(
@@ -692,33 +710,9 @@
                 "PlayerLV":(
                         ("WORD", "LV", 1),
                         ("DWORD", "Exp", 0),
-                        ("BYTE", "TalentPoint", 0),
-                        ("DWORD", "ReExp", 0),
-                        ("DWORD", "ReMaxHP", 0),
-                        ("DWORD", "ReAtk", 0),
-                        ("DWORD", "ReDef", 0),
-                        ("DWORD", "ReHit", 0),
-                        ("DWORD", "ReMiss", 0),
-                        ("DWORD", "ReAtkSpeed", 0),
-                        ("DWORD", "ReSkillAtkRate", 0),
-                        ("DWORD", "ReDamagePer", 0),
-                        ("DWORD", "ReDamReduce", 0),
-                        ("DWORD", "ReIgnoreDefRate", 0),
-                        ("DWORD", "ReLuckyHitRate", 0),
-                        ("DWORD", "ReLuckyHit", 0),
-                        ("DWORD", "ReBleedDamage", 0),
-                        ("DWORD", "ReIceAtk", 0),
-                        ("DWORD", "ReIceDef", 0),
-                        ("DWORD", "RePetAtk", 0),
-                        ("DWORD", "RePetSkillAtkRate", 0),
-                        ("DWORD", "RePetDamPer", 0),
-                        ("DWORD", "ReFinalHurt", 0),
-                        ("DWORD", "ReFinalHurtReduce", 0),
-                        ("DWORD", "RePotionReply", 0),
-                        ("DWORD", "RePotionCD", 0),
-                        ("DWORD", "AttackEff", 0),
-                        ("DWORD", "ReFightPower", 0),
-                        ("DWORD", "IceLodeFightPower", 0),
+                        ("DWORD", "MaxHP", 0),
+                        ("DWORD", "Atk", 0),
+                        ("DWORD", "Def", 0),
                         ),
 
                 "SpecMapPlayerAttrFormat":(
@@ -2863,7 +2857,8 @@
     def GetAtkInheritPer(self): return self.attrTuple[7] # 攻击继承 WORD
     def GetDefInheritPer(self): return self.attrTuple[8] # 防御继承 WORD
     def GetHPInheritPer(self): return self.attrTuple[9] # 生命继承 WORD
-    def GetBatAttrDict(self): return self.attrTuple[10] # 其他战斗属性字典 {"属性ID":值, ...} dict
+    def GetBatAttrDict(self): return self.attrTuple[10] # 其他战斗属性字典 {"属性ID":值, ...} dict
+    def GetFetterIDList(self): return self.attrTuple[11] # 羁绊ID列表 list
 
 # 武将星级天赋表
 class IPY_HeroTalent():
@@ -2919,6 +2914,18 @@
     def GetAttrIDList(self): return self.attrTuple[2] #  属性ID列表 list
     def GetAttrValueList(self): return self.attrTuple[3] #  属性值列表 list
 
+# 阵容光环表
+class IPY_HeroLineupHalo():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetCountry(self): return self.attrTuple[0] # 国家 WORD
+    def GetNeedHeroCount(self): return self.attrTuple[1] #  所需武将数 BYTE
+    def GetAttrIDList(self): return self.attrTuple[2] #  属性ID列表 list
+    def GetAttrValueList(self): return self.attrTuple[3] #  属性值列表 list
+
 # 皮肤表
 class IPY_HeroSkin():
     
@@ -2940,17 +2947,16 @@
         return
         
     def GetQuality(self): return self.attrTuple[0] # 品质 DWORD
-    def GetUPCostItem(self): return self.attrTuple[1] #  升级消耗道具 list
-    def GetInitTalentWeight(self): return self.attrTuple[2] #  初始天赋数权重 list
-    def GetInitStarUpper(self): return self.attrTuple[3] #  初始星级上限 BYTE
-    def GetInitAddPer(self): return self.attrTuple[4] #  上阵初始加成万分率 DWORD
-    def GetLVAddPer(self): return self.attrTuple[5] #  上阵每等级加成 DWORD
-    def GetBreakLVAddPer(self): return self.attrTuple[6] #  上阵每突破等级加成 DWORD
-    def GetStarAddPer(self): return self.attrTuple[7] #  上阵每星级加成 DWORD
-    def GetBookActAwardMoney(self): return self.attrTuple[8] #  图鉴激活奖励货币 类型|值 list
-    def GetBookInitAddPer(self): return self.attrTuple[9] #  图鉴初始加成 DWORD
-    def GetBookStarAddPer(self): return self.attrTuple[10] #  图鉴每星级加成 DWORD
-    def GetBookBreakLVAddPer(self): return self.attrTuple[11] #  图鉴每突破等级加成 DWORD
+    def GetInitTalentWeight(self): return self.attrTuple[1] #  初始天赋数权重 list
+    def GetInitStarUpper(self): return self.attrTuple[2] #  初始星级上限 BYTE
+    def GetInitAddPer(self): return self.attrTuple[3] #  上阵初始加成万分率 DWORD
+    def GetLVAddPer(self): return self.attrTuple[4] #  上阵每等级加成 DWORD
+    def GetBreakLVAddPer(self): return self.attrTuple[5] #  上阵每突破等级加成 DWORD
+    def GetStarAddPer(self): return self.attrTuple[6] #  上阵每星级加成 DWORD
+    def GetBookActAwardMoney(self): return self.attrTuple[7] #  图鉴激活奖励货币 类型|值 list
+    def GetBookInitAddPer(self): return self.attrTuple[8] #  图鉴初始加成 DWORD
+    def GetBookStarAddPer(self): return self.attrTuple[9] #  图鉴每星级加成 DWORD
+    def GetBookBreakLVAddPer(self): return self.attrTuple[10] #  图鉴每突破等级加成 DWORD
 
 # 武将品质突破表
 class IPY_HeroQualityBreak():
@@ -2974,6 +2980,27 @@
     def GetQuality(self): return self.attrTuple[0] # 品质 DWORD
     def GetAwakeLV(self): return self.attrTuple[1] # 觉醒等级 DWORD
     def GetUPCostItem(self): return self.attrTuple[2] #  觉醒到下级消耗道具 list
+
+# 品质武将升级表
+class IPY_HeroQualityLV():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetQuality(self): return self.attrTuple[0] # 品质 DWORD
+    def GetHeroLV(self): return self.attrTuple[1] # 武将等级 DWORD
+    def GetUPCostItem(self): return self.attrTuple[2] #  升级到下级消耗道具 list
+
+# 属性条目表
+class IPY_PlayerAttr():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetAttrID(self): return self.attrTuple[0] # 属性ID DWORD
+    def GetParameter(self): return self.attrTuple[1] # 属性名、参数名 char
 
 # 主线章节表
 class IPY_MainChapter():
@@ -3833,33 +3860,9 @@
         
     def GetLV(self): return self.attrTuple[0] # 玩家等级 WORD
     def GetExp(self): return self.attrTuple[1] # 升级所需经验 DWORD
-    def GetTalentPoint(self): return self.attrTuple[2] # 等级获得的天赋点 BYTE
-    def GetReExp(self): return self.attrTuple[3] # 等级经验效率(second) DWORD
-    def GetReMaxHP(self): return self.attrTuple[4] # 生命 DWORD
-    def GetReAtk(self): return self.attrTuple[5] # 攻击 DWORD
-    def GetReDef(self): return self.attrTuple[6] # 防御 DWORD
-    def GetReHit(self): return self.attrTuple[7] # 命中 DWORD
-    def GetReMiss(self): return self.attrTuple[8] # 闪避 DWORD
-    def GetReAtkSpeed(self): return self.attrTuple[9] # 攻速 DWORD
-    def GetReSkillAtkRate(self): return self.attrTuple[10] # 技能伤害比例 DWORD
-    def GetReDamagePer(self): return self.attrTuple[11] # 增加伤害 DWORD
-    def GetReDamReduce(self): return self.attrTuple[12] # 减少伤害 DWORD
-    def GetReIgnoreDefRate(self): return self.attrTuple[13] # 无视防御比例 DWORD
-    def GetReLuckyHitRate(self): return self.attrTuple[14] # 会心一击率 DWORD
-    def GetReLuckyHit(self): return self.attrTuple[15] # 会心一击伤害 DWORD
-    def GetReBleedDamage(self): return self.attrTuple[16] # 流血伤害增加 DWORD
-    def GetReIceAtk(self): return self.attrTuple[17] # 真实伤害 DWORD
-    def GetReIceDef(self): return self.attrTuple[18] # 真实抵御 DWORD
-    def GetRePetAtk(self): return self.attrTuple[19] # 灵宠攻击 DWORD
-    def GetRePetSkillAtkRate(self): return self.attrTuple[20] # 灵宠技能 DWORD
-    def GetRePetDamPer(self): return self.attrTuple[21] # 灵宠伤害增加 DWORD
-    def GetReFinalHurt(self): return self.attrTuple[22] # 固定伤害增加 DWORD
-    def GetReFinalHurtReduce(self): return self.attrTuple[23] # 固定伤害减少 DWORD
-    def GetRePotionReply(self): return self.attrTuple[24] # 血瓶恢复量 DWORD
-    def GetRePotionCD(self): return self.attrTuple[25] # 血瓶CD DWORD
-    def GetAttackEff(self): return self.attrTuple[26] # 挂机效率 DWORD
-    def GetReFightPower(self): return self.attrTuple[27] # 战斗力 DWORD
-    def GetIceLodeFightPower(self): return self.attrTuple[28] # 冰晶矿脉扫荡战斗力 DWORD
+    def GetMaxHP(self): return self.attrTuple[2] # 生命 DWORD
+    def GetAtk(self): return self.attrTuple[3] # 攻击 DWORD
+    def GetDef(self): return self.attrTuple[4] # 防御 DWORD
 
 # 特殊地图玩家属性公式表
 class IPY_SpecMapPlayerAttrFormat():
@@ -7086,10 +7089,13 @@
         self.__LoadFileData("HeroBreak", onlyCheck)
         self.__LoadFileData("HeroAwake", onlyCheck)
         self.__LoadFileData("HeroFetter", onlyCheck)
+        self.__LoadFileData("HeroLineupHalo", onlyCheck)
         self.__LoadFileData("HeroSkin", onlyCheck)
         self.__LoadFileData("HeroQuality", onlyCheck)
         self.__LoadFileData("HeroQualityBreak", onlyCheck)
         self.__LoadFileData("HeroQualityAwake", onlyCheck)
+        self.__LoadFileData("HeroQualityLV", onlyCheck)
+        self.__LoadFileData("PlayerAttr", onlyCheck)
         self.__LoadFileData("MainChapter", onlyCheck)
         self.__LoadFileData("MainLevel", onlyCheck)
         self.__LoadFileData("NPCLineup", onlyCheck)
@@ -7633,6 +7639,13 @@
         self.CheckLoadData("HeroFetter")
         return self.ipyHeroFetterCache[index]
 
+    def GetHeroLineupHaloCount(self):
+        self.CheckLoadData("HeroLineupHalo")
+        return self.ipyHeroLineupHaloLen
+    def GetHeroLineupHaloByIndex(self, index):
+        self.CheckLoadData("HeroLineupHalo")
+        return self.ipyHeroLineupHaloCache[index]
+
     def GetHeroSkinCount(self):
         self.CheckLoadData("HeroSkin")
         return self.ipyHeroSkinLen
@@ -7661,6 +7674,20 @@
         self.CheckLoadData("HeroQualityAwake")
         return self.ipyHeroQualityAwakeCache[index]
 
+    def GetHeroQualityLVCount(self):
+        self.CheckLoadData("HeroQualityLV")
+        return self.ipyHeroQualityLVLen
+    def GetHeroQualityLVByIndex(self, index):
+        self.CheckLoadData("HeroQualityLV")
+        return self.ipyHeroQualityLVCache[index]
+
+    def GetPlayerAttrCount(self):
+        self.CheckLoadData("PlayerAttr")
+        return self.ipyPlayerAttrLen
+    def GetPlayerAttrByIndex(self, index):
+        self.CheckLoadData("PlayerAttr")
+        return self.ipyPlayerAttrCache[index]
+
     def GetMainChapterCount(self):
         self.CheckLoadData("MainChapter")
         return self.ipyMainChapterLen

--
Gitblit v1.8.0