From ce185c6150887f187a7bbe3266cc2bd57286e380 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 28 十二月 2018 15:59:08 +0800
Subject: [PATCH] 5424 【后端】【1.4】跨服竞技场开发(增加段位匹配范围字段)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGatherSoul.py | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGatherSoul.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGatherSoul.py
index 8aa7baf..3fe517e 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGatherSoul.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGatherSoul.py
@@ -68,9 +68,9 @@
exp = eval(IpyGameDataPY.GetFuncCompileCfg('GatherSoulLevelUp'))
g_GatherSoulLVExpDict[lv] = exp
- qualityPerDict = IpyGameDataPY.GetFuncEvalCfg('GatherSoulLevelUp', 2, {})
- if itemColor in qualityPerDict:
- exp *= float(qualityPerDict[itemColor])
+ qualityPerDict = IpyGameDataPY.GetFuncEvalCfg('GatherSoulLevelUp', 2, {}).get(str(itemData.GetType()), {})
+ if str(itemColor) in qualityPerDict:
+ exp *= float(qualityPerDict[str(itemColor)])
attrTypeCnt = len(ipyData.GetAttrType())
specialPer = IpyGameDataPY.GetFuncEvalCfg('GatherSoulLevelUp', 3, {}).get(attrTypeCnt, 1)
@@ -78,7 +78,7 @@
soulGrade = ipyData.GetSoulGrade()
exp *= float(IpyGameDataPY.GetFuncEvalCfg('GatherSoulLevelUp', 5, {}).get(soulGrade, 1))
- return exp
+ return int(exp)
## 获取聚魂属性数值
@@ -345,6 +345,8 @@
totalSoulDust += soulDust
delPlaceDict[place] = [GatherSoulData, soulidList, int(soulDust), soulSplinters, soulCore]
+ if not delPlaceDict:
+ return
if delPlaceDict:
ItemCommon.DelVPackItem(curPlayer, packIndex, delPlaceDict.keys(), ChConfig.ItemDel_GatherSoul)
addDataDict = {"delPlaceDict":delPlaceDict, "isAuto":isAuto}
@@ -371,6 +373,8 @@
for itemID, itemCnt in giveMaterialDict.items():
ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, 0, [ShareDefine.rptGatherSoul])
GameWorld.DebugLog("聚魂分解: isAuto=%s,PlaceIndexList=%s, delPlaceDict=%s, giveMaterialDict=%s" % (isAuto, placeList, delPlaceDict, giveMaterialDict))
+ if not isAuto:
+ curPlayer.Sync_MakeItemAnswer(ShareDefine.Def_mitGatherSoulDecompose, 1)
return
@@ -489,6 +493,7 @@
RefreshGatherSoulAttr(curPlayer)
PlayerControl.PlayerControl(curPlayer).RefreshPlayerAttrState()
#返还多余魂尘
+ totalPoint = int(totalPoint)
if totalPoint > 0:
PlayerControl.GiveMoney(curPlayer, ShareDefine.TYPE_Price_SoulDust, totalPoint)
#给新物品
--
Gitblit v1.8.0