From 7a07e584581d05c65759e64f97ebf7946f116759 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期五, 26 四月 2019 16:00:08 +0800
Subject: [PATCH] 6607 【2.0】【后端】技能升级功能改版(StateSkillLV=需要基础属性ID*100000+需要属性点)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py | 13 ++++++++-----
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py | 2 +-
2 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py
index 18ebf1b..cec492f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py
@@ -106,4 +106,4 @@
g_crossPlayerServerGroupIDInfo = {} #跨服玩家服务器组ID缓存,副本线路关闭时才释放,所以支持离线跨服玩家 {copyMapID:{playerID:serverGroupID, ...}, ...}
g_fbBuyBuffTimeDict = {} # 副本购买buff时间缓存{playerID:{moneyCnt:time}}
g_fairyDomainLimit = [] #全服已限制的缥缈仙域事件
-g_elemntSkillDict = {} #{skillID:[attrID*10000+needValue,..]}
\ No newline at end of file
+g_elemntSkillDict = {} #{skillID:[attrID*100000+needValue,..]}
\ No newline at end of file
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
index 7f720e3..d298435 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
@@ -2017,8 +2017,8 @@
return False
#玩家属性点要求
- stateSkillLV = curSkill.GetStateSkillLV() #需要基础属性ID*10000+需要属性点
- needBaseAttrID, needBaseAttrValue = stateSkillLV /10000, stateSkillLV%10000
+ stateSkillLV = curSkill.GetStateSkillLV() #需要基础属性ID*100000+需要属性点
+ needBaseAttrID, needBaseAttrValue = GetSkillUpNeedAttr(stateSkillLV)
if needBaseAttrID and needBaseAttrValue:
baseAttrDict = {
ShareDefine.Def_Effect_Metal:PlayerControl.GetMetal(curPlayer),
@@ -2036,6 +2036,8 @@
return False
return True
+## 获取技能升级属性需求 rutrun attrID, attrvalue
+def GetSkillUpNeedAttr(stateSkillLV):return stateSkillLV /100000, stateSkillLV%100000
#// A5 16 选择技能五行专精 #tagCMSelectSkillElement
#
@@ -2094,7 +2096,7 @@
maxSkillLV = len(limitInfoList)
updSkillLV = 0
for i, limitInfo in enumerate(limitInfoList):
- needAttrID, needAttrValue = limitInfo /10000, limitInfo%10000
+ needAttrID, needAttrValue = GetSkillUpNeedAttr(limitInfo)
curAttrValue = baseAttrDict.get(needAttrID, 0)
if curAttrValue >= needAttrValue:
updSkillLV = maxSkillLV - i
@@ -2130,7 +2132,8 @@
continue
if curElementSkillID not in PyGameData.g_elemntSkillDict:
continue
- if PyGameData.g_elemntSkillDict[curElementSkillID][0] /10000 not in attrIDList:
+ attrID = GetSkillUpNeedAttr(PyGameData.g_elemntSkillDict[curElementSkillID][0])[0]
+ if attrID not in attrIDList:
continue
if RefreshElementSkill(curPlayer, curElementSkillID):
isRefresh = True
@@ -2158,7 +2161,7 @@
return cnt
def __InitElementSkillInfo():
- #缓存技能专精信息{skillID:[attrID*10000+needValue,..]}
+ #缓存技能专精信息{skillID:[attrID*100000+needValue,..]}
if not PyGameData.g_elemntSkillDict:
ipyMgr = IpyGameDataPY.IPY_Data()
for i in xrange(ipyMgr.GetSkillElementCount()):
--
Gitblit v1.8.0