From 32f2c43deced93825bbefd368dcfb12e5040d89a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 21 十月 2024 11:45:25 +0800
Subject: [PATCH] 10281 【越南】【英语】【砍树】【tqxbqy】时装、坐骑幻化、称号新增纯战力
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 8 ++++++--
PySysDB/PySysDBPY.h | 2 ++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoat.py | 3 +++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDienstgrad.py | 3 +++
4 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/PySysDB/PySysDBPY.h b/PySysDB/PySysDBPY.h
index 5e44e2a..9b8ef4f 100644
--- a/PySysDB/PySysDBPY.h
+++ b/PySysDB/PySysDBPY.h
@@ -8,6 +8,7 @@
list LightType; //点亮属性类型
list LightAttribute; //点亮属性值
list Skills; //被动技能
+ DWORD InitFightPower; //初始战力
};
//称号升星表
@@ -2608,6 +2609,7 @@
DWORD MaxLV; //最大星级
list CostItemCnt; //材料数量
dict StarAttr; //属性
+ DWORD InitFightPower; //初始战力
};
//时装柜升级表
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 7a6c149..38f8cf0 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -40,6 +40,7 @@
("list", "LightType", 0),
("list", "LightAttribute", 0),
("list", "Skills", 0),
+ ("DWORD", "InitFightPower", 0),
),
"TitleStarUp":(
@@ -2032,6 +2033,7 @@
("DWORD", "MaxLV", 0),
("list", "CostItemCnt", 0),
("dict", "StarAttr", 0),
+ ("DWORD", "InitFightPower", 0),
),
"CoatChestUp":(
@@ -2519,7 +2521,8 @@
def GetExpireTime(self): return self.attrTuple[2] # 有效时间 DWORD
def GetLightType(self): return self.attrTuple[3] # 点亮属性类型 list
def GetLightAttribute(self): return self.attrTuple[4] # 点亮属性值 list
- def GetSkills(self): return self.attrTuple[5] # 被动技能 list
+ def GetSkills(self): return self.attrTuple[5] # 被动技能 list
+ def GetInitFightPower(self): return self.attrTuple[6] # 初始战力 DWORD
# 称号升星表
class IPY_TitleStarUp():
@@ -5501,7 +5504,8 @@
def GetUnlockItemID(self): return self.attrTuple[3] # 材料物品ID DWORD
def GetMaxLV(self): return self.attrTuple[4] # 最大星级 DWORD
def GetCostItemCnt(self): return self.attrTuple[5] # 材料数量 list
- def GetStarAttr(self): return self.attrTuple[6] # 属性 dict
+ def GetStarAttr(self): return self.attrTuple[6] # 属性 dict
+ def GetInitFightPower(self): return self.attrTuple[7] # 初始战力 DWORD
# 时装柜升级表
class IPY_CoatChestUp():
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoat.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoat.py
index 2cfa3b2..e068582 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoat.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoat.py
@@ -170,6 +170,7 @@
# @param allAttrList 属性列表
# @return None
def CalcClothesCoatSkinAttr(curPlayer):
+ initFPAdd = 0 #初始战力
allAttrList = [{} for _ in range(4)]
ipyMgr = IpyGameDataPY.IPY_Data()
for i in xrange(ipyMgr.GetCoatCount()):
@@ -178,6 +179,7 @@
skinLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ClothesSkinLV % coatID)
if not skinLV:
continue
+ initFPAdd += ipyData.GetInitFightPower()
starAttrDict = ipyData.GetStarAttr()
if str(skinLV) not in starAttrDict:
continue
@@ -191,6 +193,7 @@
PlayerControl.CalcAttrDict_Type(int(attrID), attrValue, allAttrList)
# 保存计算值
+ curPlayer.SetDict(ChConfig.Def_PlayerKey_MFPEx % ShareDefine.Def_MFPType_Coat, initFPAdd)
PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_Coat, allAttrList)
return
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDienstgrad.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDienstgrad.py
index b2d9218..bc73a86 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDienstgrad.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDienstgrad.py
@@ -529,6 +529,7 @@
allAttrList = [{} for i in range(4)]
allAttrListStar = [{} for _ in range(4)]
+ initFPAdd = 0 #初始战力
dienstgradManager = curPlayer.GetDienstgradManager()
gradCnt = dienstgradManager.GetCount()
for i in xrange(gradCnt):
@@ -539,6 +540,7 @@
if curDienstgradData == None:
continue
+ initFPAdd += curDienstgradData.GetInitFightPower()
attrTypeList = curDienstgradData.GetLightType()
attrValueList = curDienstgradData.GetLightAttribute()
@@ -555,6 +557,7 @@
PlayerControl.CalcAttrDict_Type(attrID, attrValue, allAttrListStar)
# 保存计算值
+ curPlayer.SetDict(ChConfig.Def_PlayerKey_MFPEx % ShareDefine.Def_MFPType_Dienstgrad, initFPAdd)
PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_Dienstgrad, allAttrList)
PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_TitleStar, allAttrListStar)
return
--
Gitblit v1.8.0