7273 【2.0】【后端】活跃令兑换支持青鸾之羽
| | |
| | | {
|
| | | DWORD _NPCID; //ID
|
| | | BYTE LineID;
|
| | | WORD KillTime; //击杀总时间秒
|
| | | };
|
| | |
|
| | | //副本鼓舞表
|
| | |
| | | {
|
| | | DWORD NPCID; //ID
|
| | | BYTE _LineID;
|
| | | WORD KillTime; //击杀总时间秒
|
| | | WORD RealmLV; //需要境界
|
| | | DWORD ZhuXianScore; //需要诛仙总评分
|
| | | };
|
| | |
| | | "SealDemon":(
|
| | | ("DWORD", "NPCID", 1),
|
| | | ("BYTE", "LineID", 0),
|
| | | ("WORD", "KillTime", 0),
|
| | | ),
|
| | |
|
| | | "FbEncourage":(
|
| | |
| | | "ZhuXianBoss":(
|
| | | ("DWORD", "NPCID", 0),
|
| | | ("BYTE", "LineID", 1),
|
| | | ("WORD", "KillTime", 0),
|
| | | ("WORD", "RealmLV", 0),
|
| | | ("DWORD", "ZhuXianScore", 0),
|
| | | ),
|
| | |
| | | |
| | | def __init__(self): |
| | | self.NPCID = 0
|
| | | self.LineID = 0
|
| | | self.KillTime = 0 |
| | | self.LineID = 0 |
| | | return |
| | | |
| | | def GetNPCID(self): return self.NPCID # ID
|
| | | def GetLineID(self): return self.LineID
|
| | | def GetKillTime(self): return self.KillTime # 击杀总时间秒 |
| | | def GetLineID(self): return self.LineID |
| | | |
| | | # 副本鼓舞表 |
| | | class IPY_FbEncourage(): |
| | |
| | | def __init__(self): |
| | | self.NPCID = 0
|
| | | self.LineID = 0
|
| | | self.KillTime = 0
|
| | | self.RealmLV = 0
|
| | | self.ZhuXianScore = 0 |
| | | return |
| | | |
| | | def GetNPCID(self): return self.NPCID # ID
|
| | | def GetLineID(self): return self.LineID
|
| | | def GetKillTime(self): return self.KillTime # 击杀总时间秒
|
| | | def GetRealmLV(self): return self.RealmLV # 需要境界
|
| | | def GetZhuXianScore(self): return self.ZhuXianScore # 需要诛仙总评分 |
| | | |
| | |
| | | eatItemIDList = clientData.ItemIDList
|
| | | givePoint = 0 #分解得到活跃令
|
| | | familyDonateDict = IpyGameDataPY.GetFuncEvalCfg('FamilyDonate', 1, {})
|
| | | familyDonateSpecialDict = IpyGameDataPY.GetFuncEvalCfg('FamilyDonate', 2, {})
|
| | | itemPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)
|
| | | for i, index in enumerate(eatIndexList):
|
| | | eatItem = itemPack.GetAt(index)
|
| | |
| | | if eatItem.GetEndureReduceType():
|
| | | GameWorld.DebugLog("有时效耐久物品,无法兑换!itemIndex=%s" % index)
|
| | | continue
|
| | | if not ItemCommon.CheckItemIsEquip(eatItem):
|
| | | GameWorld.DebugLog("非装备,无法兑换!itemIndex=%s" % index)
|
| | | continue
|
| | | itemColor = eatItem.GetItemColor()
|
| | | if str(itemColor) not in familyDonateDict:
|
| | | continue
|
| | | isSuite = eatItem.GetSuiteID()
|
| | | addPoint = familyDonateDict[str(itemColor)][1 if isSuite else 0]
|
| | | if eatItemID in familyDonateSpecialDict:
|
| | | addPoint = familyDonateSpecialDict[eatItemID]
|
| | | else:
|
| | | if not ItemCommon.CheckItemIsEquip(eatItem):
|
| | | GameWorld.DebugLog("非装备,无法兑换!itemIndex=%s" % index)
|
| | | continue
|
| | | itemColor = eatItem.GetItemColor()
|
| | | if str(itemColor) not in familyDonateDict:
|
| | | continue
|
| | | isSuite = eatItem.GetSuiteID()
|
| | | addPoint = familyDonateDict[str(itemColor)][1 if isSuite else 0]
|
| | | givePoint += addPoint
|
| | | ItemCommon.DelItem(curPlayer, eatItem, 1, True, ChConfig.ItemDel_ZhuXianDecompose, {'addPoint':addPoint}, True)
|
| | |
|