383 【武将】武将宿缘-服务端(增加所需品质支持;)
| | |
| | | BYTE _FatesLV; //宿缘等级
|
| | | BYTE NeedStarTotal; // 升到该级所需总星数
|
| | | BYTE NeedHeroCnt; // 所需品质武将数
|
| | | BYTE NeedQuality; // 所需武将品质
|
| | | };
|
| | |
|
| | | //属性条目表
|
| | |
| | | ("BYTE", "FatesLV", 1),
|
| | | ("BYTE", "NeedStarTotal", 0),
|
| | | ("BYTE", "NeedHeroCnt", 0),
|
| | | ("BYTE", "NeedQuality", 0),
|
| | | ),
|
| | |
|
| | | "PlayerAttr":(
|
| | |
| | | def GetFatesQuality(self): return self.attrTuple[0] # 宿缘品质 BYTE
|
| | | def GetFatesLV(self): return self.attrTuple[1] # 宿缘等级 BYTE
|
| | | def GetNeedStarTotal(self): return self.attrTuple[2] # 升到该级所需总星数 BYTE
|
| | | def GetNeedHeroCnt(self): return self.attrTuple[3] # 所需品质武将数 BYTE |
| | | def GetNeedHeroCnt(self): return self.attrTuple[3] # 所需品质武将数 BYTE
|
| | | def GetNeedQuality(self): return self.attrTuple[4] # 所需武将品质 BYTE |
| | | |
| | | # 属性条目表 |
| | | class IPY_PlayerAttr(): |
| | |
| | | return
|
| | | needStarTotal = qualityLVIpyData.GetNeedStarTotal()
|
| | | needHeroCnt = qualityLVIpyData.GetNeedHeroCnt()
|
| | | needQuality = qualityLVIpyData.GetNeedQuality()
|
| | |
|
| | | costItemList = []
|
| | | heroStarDict = {}
|
| | |
| | |
|
| | | # 材料卡
|
| | | if index in useIndexList:
|
| | | if __checkHeroFatesLVUPItem(olPlayer, fatesQuality, index, heroItem, heroID):
|
| | | if __checkHeroFatesLVUPItem(olPlayer, needQuality, index, heroItem, heroID):
|
| | | costItemList.append(heroItem)
|
| | |
|
| | | if heroID not in heroIDList:
|
| | |
| | | RefreshLordAttr(curPlayer) # 宿缘
|
| | | return
|
| | |
|
| | | def __checkHeroFatesLVUPItem(olPlayer, fatesQuality, itemIndex, heroItem, heroID):
|
| | | def __checkHeroFatesLVUPItem(olPlayer, needQuality, itemIndex, heroItem, heroID):
|
| | | ## 检查宿缘材料卡可否使用
|
| | | heroIpyData = IpyGameDataPY.GetIpyGameData("Hero", heroID)
|
| | | if not heroIpyData:
|
| | | return
|
| | |
|
| | | quality = heroIpyData.GetQuality()
|
| | | if quality != fatesQuality:
|
| | | GameWorld.DebugLog(" 与宿缘品质不同的卡无法使用: itemIndex=%s,heroID=%s,quality=%s != %s" % (itemIndex, heroID, quality, fatesQuality))
|
| | | if quality != needQuality:
|
| | | GameWorld.DebugLog(" 与宿缘所需品质不同的卡无法使用: itemIndex=%s,heroID=%s,quality=%s != %s" % (itemIndex, heroID, quality, needQuality))
|
| | | return
|
| | |
|
| | | #未生效、未上阵、未锁定、未进行过升级、突破、升星、觉醒
|