From 89cd1373014cea5337624c82d25fa6f84c7fe7c7 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期四, 25 四月 2019 17:38:48 +0800
Subject: [PATCH] 6607 【2.0】【后端】技能升级功能改版
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py | 166 ++++++++++++++++++++++++++-----------------------------
1 files changed, 79 insertions(+), 87 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
index c711dae..709d0fe 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
@@ -459,8 +459,8 @@
classLV = GetItemClassLV(curItem)
color = curItem.GetItemColor()
- itemQuality = curItem.GetItemQuality()
- gsParamIpyData = IpyGameDataPY.GetIpyGameData("EquipGSParam", classLV, color, itemQuality)
+ isSuit = 1 if curItem.GetSuiteID() > 0 else 0
+ gsParamIpyData = IpyGameDataPY.GetIpyGameData("EquipGSParam", classLV, color, isSuit)
# 传奇属性
legendAttrIDCnt = curItem.GetUserAttrCount(ShareDefine.Def_IudetLegendAttrID)
legendAttrValueCnt = curItem.GetUserAttrCount(ShareDefine.Def_IudetLegendAttrValue)
@@ -479,48 +479,55 @@
IceAtk = attrDict.get(ShareDefine.Def_Effect_IceAtk, 0)
IceDef = attrDict.get(ShareDefine.Def_Effect_IceDef, 0)
- AtkPer = attrDict.get(ShareDefine.Def_Effect_AddAtkByPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetAtkPerC())
- DamagePer = attrDict.get(ShareDefine.Def_Effect_DamagePer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDamagePerC())
- SuperHitRate = attrDict.get(ShareDefine.Def_Effect_SuperHitRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSuperHitRateC())
+ BaseEquipMaxHPAddPer = attrDict.get(ShareDefine.Def_Effect_BaseEquipMaxHPAddPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetBaseEquipMaxHPAddPerC())
+ BaseEquipAtkAddPer = attrDict.get(ShareDefine.Def_Effect_BaseEquipAtkAddPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetBaseEquipAtkAddPerC())
+ AtkPer = 0#attrDict.get(ShareDefine.Def_Effect_AddAtkByPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetAtkPerC())
+ DamagePer = 0#attrDict.get(ShareDefine.Def_Effect_DamagePer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDamagePerC())
+ SuperHitRate = 0#attrDict.get(ShareDefine.Def_Effect_SuperHitRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSuperHitRateC())
+ SuperHit = attrDict.get(ShareDefine.Def_Effect_SuperHit, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSuperHitC())
SuperHitPer = attrDict.get(ShareDefine.Def_Effect_SuperHitPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSuperHitPerC())
- DamReducePer = attrDict.get(ShareDefine.Def_Effect_DamReducePer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDamReducePerC())
- MaxHPPer = attrDict.get(ShareDefine.Def_Effect_MaxHPPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetMaxHPPerC())
- DefPer = attrDict.get(ShareDefine.Def_Effect_DefPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDefPerC())
+ DamReducePer = 0#attrDict.get(ShareDefine.Def_Effect_DamReducePer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDamReducePerC())
+ MaxHPPer = 0#attrDict.get(ShareDefine.Def_Effect_MaxHPPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetMaxHPPerC())
+ DefPer = 0#attrDict.get(ShareDefine.Def_Effect_DefPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDefPerC())
LuckyHitRate = attrDict.get(ShareDefine.Def_Effect_LuckyHitRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetLuckyHitRateC())
- PetDamPer = attrDict.get(ShareDefine.Def_Effect_PetDamPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetPetDamPerC())
+ LuckyHitRateReduce = attrDict.get(ShareDefine.Def_Effect_LuckyHitRateReduce, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetLuckyHitRateReduceC())
+ LuckyHit = attrDict.get(ShareDefine.Def_Effect_LuckyHit, 0)
+ LuckyHitReduce = attrDict.get(ShareDefine.Def_Effect_LuckyHitReduce, 0)
+ LuckPer = attrDict.get(ShareDefine.Def_Effect_LuckPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetLuckPerC())
+ PetDamPer = 0#attrDict.get(ShareDefine.Def_Effect_PetDamPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetPetDamPerC())
PerLVAtk = attrDict.get(ShareDefine.Def_Effect_PerLVAtk, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetPerLVAtkC())
- MissRate = attrDict.get(ShareDefine.Def_Effect_MissRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetMissRateC())
- HitRate = attrDict.get(ShareDefine.Def_Effect_HitRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetHitRateC())
- DamBackPer = attrDict.get(ShareDefine.Def_Effect_DamBackPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDamBackPerC())
+ MissRate = 0#attrDict.get(ShareDefine.Def_Effect_MissRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetMissRateC())
+ HitRate = 0#attrDict.get(ShareDefine.Def_Effect_HitRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetHitRateC())
+ DamBackPer = 0#attrDict.get(ShareDefine.Def_Effect_DamBackPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDamBackPerC())
PerLVMaxHP = attrDict.get(ShareDefine.Def_Effect_PerLVMaxHP, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetPerLVMaxHPC())
- DropEquipPer = attrDict.get(ShareDefine.Def_Effect_DropEquipPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDropEquipPerC())
+ DropEquipPer = 0#attrDict.get(ShareDefine.Def_Effect_DropEquipPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDropEquipPerC())
DropMoneyPer = attrDict.get(ShareDefine.Def_Effect_DropMoneyPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDropMoneyPerC())
- IgnoreDefRateReduce = attrDict.get(ShareDefine.Def_Effect_IgnoreDefRateReduce, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetIgnoreDefRateReduceC())
- DamChanceDef = attrDict.get(ShareDefine.Def_Effect_DamChanceDef, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDamChanceDefC())
+ IgnoreDefRateReduce = 0#attrDict.get(ShareDefine.Def_Effect_IgnoreDefRateReduce, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetIgnoreDefRateReduceC())
+ DamChanceDef = 0#attrDict.get(ShareDefine.Def_Effect_DamChanceDef, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetDamChanceDefC())
SuperHitReduce = attrDict.get(ShareDefine.Def_Effect_SuperHitReduce, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSuperHitReduceC())
- SkillAtkRate = attrDict.get(ShareDefine.Def_Effect_SkillAtkRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAtkRateC())
- SpeedPer = attrDict.get(ShareDefine.Def_Effect_SpeedPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSpeedPerC())
- SkillAtkRateReduce = attrDict.get(ShareDefine.Def_Effect_SkillAtkRateReduce, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAtkRateReduceC())
+ SkillAtkRate = 0#attrDict.get(ShareDefine.Def_Effect_SkillAtkRate, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAtkRateC())
+ SpeedPer = 0#attrDict.get(ShareDefine.Def_Effect_SpeedPer, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSpeedPerC())
+ SkillAtkRateReduce = 0#attrDict.get(ShareDefine.Def_Effect_SkillAtkRateReduce, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAtkRateReduceC())
Hit = attrDict.get(ShareDefine.Def_Effect_Hit, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetHitC())
Miss = attrDict.get(ShareDefine.Def_Effect_Miss, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetMissC())
- SkillAddPerA = attrDict.get(ShareDefine.Def_Effect_SkillAddPer1, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer1C())
- SkillAddPerB = attrDict.get(ShareDefine.Def_Effect_SkillAddPer2, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer2C())
- SkillAddPerC = attrDict.get(ShareDefine.Def_Effect_SkillAddPer3, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer3C())
- SkillAddPerD = attrDict.get(ShareDefine.Def_Effect_SkillAddPer4, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer4C())
- SkillAddPerE = attrDict.get(ShareDefine.Def_Effect_SkillAddPer5, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer5C())
- SkillAddPerF = attrDict.get(ShareDefine.Def_Effect_SkillAddPer6, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer6C())
- SkillAddPerG = attrDict.get(ShareDefine.Def_Effect_SkillAddPer7, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer7C())
- SkillReducePerA = attrDict.get(ShareDefine.Def_Effect_SkillReducePer1, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer1C())
- SkillReducePerB = attrDict.get(ShareDefine.Def_Effect_SkillReducePer2, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer2C())
- SkillReducePerC = attrDict.get(ShareDefine.Def_Effect_SkillReducePer3, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer3C())
- SkillReducePerD = attrDict.get(ShareDefine.Def_Effect_SkillReducePer4, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer4C())
- SkillReducePerE = attrDict.get(ShareDefine.Def_Effect_SkillReducePer5, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer5C())
- SkillReducePerF = attrDict.get(ShareDefine.Def_Effect_SkillReducePer6, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer6C())
- SkillReducePerG = attrDict.get(ShareDefine.Def_Effect_SkillReducePer7, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer7C())
+ SkillAddPerA = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer1, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer1C())
+ SkillAddPerB = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer2, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer2C())
+ SkillAddPerC = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer3, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer3C())
+ SkillAddPerD = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer4, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer4C())
+ SkillAddPerE = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer5, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer5C())
+ SkillAddPerF = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer6, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer6C())
+ SkillAddPerG = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer7, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer7C())
+ SkillReducePerA = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer1, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer1C())
+ SkillReducePerB = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer2, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer2C())
+ SkillReducePerC = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer3, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer3C())
+ SkillReducePerD = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer4, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer4C())
+ SkillReducePerE = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer5, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer5C())
+ SkillReducePerF = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer6, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer6C())
+ SkillReducePerG = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer7, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer7C())
# 攻速不默认乘,仅作为参数提供策划使用
- AtkSpeed = attrDict.get(ShareDefine.Def_Effect_AtkSpeed, 0)
- AtkSpeedC = 1 if not gsParamIpyData else gsParamIpyData.GetAtkSpeedC()
+ AtkSpeed = 0#attrDict.get(ShareDefine.Def_Effect_AtkSpeed, 0)
+ AtkSpeedC = 1#1 if not gsParamIpyData else gsParamIpyData.GetAtkSpeedC()
# 绝版
outOfPrintAttrIDCnt = curItem.GetUserAttrCount(ShareDefine.Def_IudetOutOfPrintAttrID)
@@ -562,7 +569,7 @@
# @return True or False
# @remarks 函数详细说明.
def CheckItemByEffectID(curPlayer, curItem, effectList):
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
return False
if not ItemControler.CheckItemUseLV(curPlayer, curItem, False):
@@ -623,7 +630,7 @@
for i in range(backPack.GetCount()):
curItem = backPack.GetAt(i)
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
if curItem.GetItemTypeID() != findItemID:
@@ -908,32 +915,15 @@
return
#---------------------------------------------------------------------
-#此函数验证当前职业阶可用(向下兼容),同CheckJob区分使用
-def JobUseable(curPlayer, curItem):
- '''判断物品是否职业可用
- 物品表中职业限制规则: 0为通用;非0百位代表职业,十位和个位为职业阶数, 职业阶向下兼容,高阶可使用低阶物品
- '''
- itemJobLimit = curItem.GetJobLimit()
- if not itemJobLimit:
- return True
-
- # 取消限制的物品
- if curItem.GetUserAttr(ShareDefine.Def_IudetCancelUseLimit) == 1:
- return CheckJob(curPlayer, curItem)
-
- if curPlayer.GetJob() == itemJobLimit / 100 and PlayerControl.GetJobRank(curPlayer) >= itemJobLimit % 100:
- return True
- return False
-
-#此函数验证当前职业系可用,同JobUseable区分使用
+#此函数验证当前职业系可用
def CheckJob(curPlayer, curItem):
'''判断物品是否职业系可用
- 物品表中职业限制规则: 0为通用;非0百位代表职业,十位和个位为职业阶数, 职业阶向下兼容,高阶可使用低阶物品
+ 物品表中职业限制规则: 0为通用;非0百位代表职业
'''
itemJobLimit = curItem.GetJobLimit()
if not itemJobLimit:
return True
- if curPlayer.GetJob() == itemJobLimit / 100:
+ if curPlayer.GetJob() == itemJobLimit:
return True
return False
@@ -1004,22 +994,6 @@
return isExpireItem, remainingTime
return isExpireItem, remainingTime
-
-##检查该物品是否合法,类型验证
-# @param curItem 物品实例
-# @param checkType 物品类型
-# @return 布尔值(物品是否合法)
-# @remarks 检查该物品是否合法,类型验证
-def CheckItemByType(curItem, checkType):
- #验证材料
- if not CheckItemCanUse(curItem):
- return False
-
- #类型不符合
- if curItem.GetType() != checkType:
- return False
-
- return True
## 检查装备是否有镶嵌宝石
# @param curItem 装备对象
@@ -1197,7 +1171,7 @@
for i in range(curItemPack.GetCount()):
findItem = curItemPack.GetAt(i)
- if not CheckItemCanUse(findItem):
+ if not CheckItemCanUse(findItem) or ItemControler.GetIsAuctionItem(findItem):
continue
#不使用绑定的材料
@@ -1240,7 +1214,7 @@
for i in range(curItemPack.GetCount()):
curItem = curItemPack.GetAt(i)
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
#不使用绑定的材料
@@ -1279,7 +1253,7 @@
for i in range(curItemPack.GetCount()):
curItem = curItemPack.GetAt(i)
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
if curItem.GetItemTypeID() != findItemID:
@@ -1321,7 +1295,7 @@
for i in range(itemPack.GetCount()):
curItem = itemPack.GetAt(i)
#过滤不符合其他条件的物品
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
if curItem.GetItemTypeID() != findItemID:
@@ -1363,7 +1337,7 @@
for i in range(itemPack.GetCount()):
curItem = itemPack.GetAt(i)
#过滤不符合其他条件的物品
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
if curItem.GetItemTypeID() != findItemID:
@@ -1409,7 +1383,7 @@
for i in range(itemPack.GetCount()):
curItem = itemPack.GetAt(i)
#过滤不符合其他条件的物品
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
if curItem.GetItemTypeID() != findItemID:
@@ -1453,7 +1427,7 @@
curPack = curPlayer.GetItemManager().GetPack(packType)
for i in range(0, curPack.GetCount()):
curItem = curPack.GetAt(i)
- if not curItem:
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
if curItem.GetItemTypeID() != itemID:
@@ -1556,7 +1530,7 @@
for i in xrange(itemPack.GetCount()):
curItem = itemPack.GetAt(i)
#过滤不符合其他条件的物品
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
curItemID = curItem.GetItemTypeID()
if curItemID not in costItemDict:
@@ -1660,7 +1634,7 @@
for index in range(0, itemPack.GetCount()):
item = itemPack.GetAt(index)
- if not CheckItemCanUse(item):
+ if not CheckItemCanUse(item) or ItemControler.GetIsAuctionItem(item):
continue
itemTypeID = item.GetItemTypeID()
@@ -1861,7 +1835,7 @@
curItem = curItemPack.GetAt(i)
#检查物品
- if not CheckItemCanUse(curItem):
+ if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
continue
effect = curItem.GetEffectByIndex(0)
@@ -1995,7 +1969,7 @@
classLV = GetItemClassLV(curItem)
return maxStarDict[str(itemColor)].get(str(classLV), 0)
-## 获取物品阶级
+## 获取物品阶级或品级
def GetItemClassLV(curItem):
return curItem.GetLV()
@@ -2028,13 +2002,14 @@
if not curItem or curItem.IsEmpty():
return {}
+ isAuctionItem = ItemControler.GetIsAuctionItem(curItem)
if not CheckItemIsEquip(curItem):
- return [curItem.GetItemTypeID(), curItem.GetCount(), curItem.GetIsBind()]
+ return [curItem.GetItemTypeID(), curItem.GetCount(), isAuctionItem]
addItemDict = {}
addItemDict['ItemID'] = curItem.GetItemTypeID()
addItemDict['Count'] = curItem.GetCount()
- addItemDict['IsAuctionItem'] = curItem.GetIsBind()
+ addItemDict['IsAuctionItem'] = isAuctionItem
#addItemDict['IsBind'] = int(curItem.GetIsBind())
#addItemDict['EquipGS'] = GetEquipGearScore(curItem)
#addItemDict['ItemStarLV'] = curItem.GetItemStarLV()
@@ -2095,12 +2070,29 @@
itemDict["ItemID"] = itemInfo.GetItemTypeID()
if itemInfo.GetCount() > 1:
itemDict["Count"] = itemInfo.GetCount()
- if itemInfo.GetIsBind():
- itemDict["IsAuctionItem"] = int(itemInfo.GetIsBind())
+ if ItemControler.GetIsAuctionItem(itemInfo):
+ itemDict["IsAuctionItem"] = 1
if itemInfo.GetUserData():
itemDict["UserData"] = itemInfo.GetUserData()
return itemDict
+def GetWeightItemListByAlchemyDiffLV(curPlayer, weightList, alchemyDiffLV):
+ ## 根据炼丹等级差异等级过滤权重列表中不满足的物品,返回新的权重列表
+ resultWeightList = []
+ if alchemyDiffLV:
+ curAlchemyLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_AlchemyLV)
+ for itemInfo in weightList:
+ itemID = itemInfo[1][0]
+ itemData = GameWorld.GetGameData().GetItemByTypeID(itemID)
+ if not itemData:
+ continue
+ if GetItemClassLV(itemData) > curAlchemyLV + alchemyDiffLV:
+ continue
+ resultWeightList.append(itemInfo)
+ else:
+ resultWeightList = weightList
+ return resultWeightList
+
## =======================================================================================
def SyncMakeItemAnswer(curPlayer, makeType, isSuccess, makeItemID):
--
Gitblit v1.8.0