From 986730e2725816f2eb9ad6fd645c513de931aa41 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 21 一月 2026 11:52:04 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(命格技能七杀、皇灵、贪狼、司命、破军、天机;增加绝对闪避及抗性属性 81 82;格挡buff支持层级;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 35 ++++++++++++++++++++++++++++++-----
1 files changed, 30 insertions(+), 5 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 4ed6ad9..1cbd2e2 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -146,6 +146,12 @@
("DWORD", "FightPower", 0),
),
+ "PresetUnlock":(
+ ("BYTE", "PresetType", 1),
+ ("BYTE", "UnlockType", 0),
+ ("DWORD", "UnlockValue", 0),
+ ),
+
"Hero":(
("DWORD", "HeroID", 1),
("char", "Name", 0),
@@ -612,6 +618,7 @@
("DWORD", "DefBase", 0),
("DWORD", "HPBase", 0),
("DWORD", "AtkSpeedBase", 0),
+ ("dict", "BatAttrBaseDict", 0),
),
"MGGuayuQuality":(
@@ -620,7 +627,6 @@
("float", "DefPlus", 0),
("float", "HPPlus", 0),
("float", "AtkSpeedPlus", 0),
- ("BYTE", "AttrLibCnt", 0),
("list", "AttrRange", 0),
("dict", "AttrRangeDict", 0),
),
@@ -2440,6 +2446,17 @@
def GetBuffRetain(self): return self.attrTuple[40] # Buff保留规则 BYTE
def GetFightPower(self): return self.attrTuple[41] # 技能战斗力 DWORD
+# 预设解锁
+class IPY_PresetUnlock():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetPresetType(self): return self.attrTuple[0] # 预设类型 BYTE
+ def GetUnlockType(self): return self.attrTuple[1] # 解锁类型 BYTE
+ def GetUnlockValue(self): return self.attrTuple[2] # 解锁所需值 DWORD
+
# 武将表
class IPY_Hero():
@@ -3126,7 +3143,8 @@
def GetAtkBase(self): return self.attrTuple[2] # 攻击基础值 DWORD
def GetDefBase(self): return self.attrTuple[3] # 防御基础值 DWORD
def GetHPBase(self): return self.attrTuple[4] # 生命基础值 DWORD
- def GetAtkSpeedBase(self): return self.attrTuple[5] # 先攻基础值 DWORD
+ def GetAtkSpeedBase(self): return self.attrTuple[5] # 先攻基础值 DWORD
+ def GetBatAttrBaseDict(self): return self.attrTuple[6] # 其他战斗属性基础值字典,{属性ID:基础值, ...} dict
# 卦玉品质表
class IPY_MGGuayuQuality():
@@ -3140,9 +3158,8 @@
def GetDefPlus(self): return self.attrTuple[2] # 防御加成 float
def GetHPPlus(self): return self.attrTuple[3] # 生命加成 float
def GetAtkSpeedPlus(self): return self.attrTuple[4] # 先攻加成 float
- def GetAttrLibCnt(self): return self.attrTuple[5] # 库属性条数 BYTE
- def GetAttrRange(self): return self.attrTuple[6] # 通用属性范围,下限|上限 list
- def GetAttrRangeDict(self): return self.attrTuple[7] # 指定属性范围字典,{指定属性ID:[范围下限, 上限], ...} dict
+ def GetAttrRange(self): return self.attrTuple[5] # 其他属性通用加成范围,下限|上限 list
+ def GetAttrRangeDict(self): return self.attrTuple[6] # 其他指定属性加成范围字典,{指定属性ID:[范围下限, 上限], ...} dict
# 卦玉类型表
class IPY_MGGuayuType():
@@ -5782,6 +5799,7 @@
self.__LoadFileData("NPC", onlyCheck)
self.__LoadFileData("NPCStronger", onlyCheck)
self.__LoadFileData("Skill", onlyCheck)
+ self.__LoadFileData("PresetUnlock", onlyCheck)
self.__LoadFileData("Hero", onlyCheck)
self.__LoadFileData("HeroTalent", onlyCheck)
self.__LoadFileData("HeroBreak", onlyCheck)
@@ -6268,6 +6286,13 @@
self.CheckLoadData("Skill")
return self.ipySkillCache[index]
+ def GetPresetUnlockCount(self):
+ self.CheckLoadData("PresetUnlock")
+ return self.ipyPresetUnlockLen
+ def GetPresetUnlockByIndex(self, index):
+ self.CheckLoadData("PresetUnlock")
+ return self.ipyPresetUnlockCache[index]
+
def GetHeroCount(self):
self.CheckLoadData("Hero")
return self.ipyHeroLen
--
Gitblit v1.8.0