| | |
| | | import ShareDefine
|
| | | import ChPyNetSendPack
|
| | | import NetPackCommon
|
| | | import EventShell
|
| | | import IpyGameDataPY
|
| | | import PlayerWing
|
| | | import Operate_EquipStone
|
| | | import OpenServerCampaign
|
| | | import PassiveBuffEffMng
|
| | |
| | | if itemClassLV == GetEquipFacadeClassLV(curPlayer):
|
| | | #穿当前外观阶的套装
|
| | | ChangeEquipfacadeByClassLV(curPlayer, itemClassLV)
|
| | | |
| | | if not endureReduceType:
|
| | | EventShell.EventRespons_EquipByPlace(curPlayer, itemClassLV, equipPlace)
|
| | | #记录橙装、红装
|
| | | #===========================================================================
|
| | | # if itemQuality in [ChConfig.Def_Quality_Orange, ChConfig.Def_Quality_Red]:
|
| | | # classLV = ItemCommon.GetItemClassLV(curItem)
|
| | | # EventReport.WriteEvent_orange_equip(curPlayer, changeItemEquipPlace, classLV, itemQuality)
|
| | | #===========================================================================
|
| | |
|
| | | #特殊装备, 不需要刷属性
|
| | | if changeItemEquipPlace in ChConfig.EquipItemNoRefreshState:
|
| | |
| | | Sync_LingQiTrainData(curPlayer, equipPlace)
|
| | |
|
| | | return
|
| | |
|
| | | ## 刷新所有装备对人物属性的改变
|
| | | # @param self 类实例
|
| | | # @return 返回值无意义
|
| | | # @remarks 刷新装备对人物属性的改变
|
| | | #===============================================================================
|
| | | # def __RefreshPlayerAllEquipBuff(curPlayer):
|
| | | # #初始化人物装备buff
|
| | | # curPlayer.GetEquipBuff().Clear()
|
| | | # |
| | | # packType = IPY_GameWorld.rptEquip
|
| | | # |
| | | # equipPackList = [IPY_GameWorld.rptEquip, IPY_GameWorld.rptHorseEquip]
|
| | | # |
| | | # #stoneLVCntList = []
|
| | | # #===========================================================================
|
| | | # orangeQualityCnt = 0 #橙色装备数量(包含橙色品质以上的装备数量)
|
| | | # for packIndex in equipPackList:
|
| | | # equipPack = curPlayer.GetItemManager().GetPack(packIndex)
|
| | | # |
| | | # for equipIndex in range(0, equipPack.GetCount()):
|
| | | # |
| | | # #备用装备栏不处理
|
| | | # if packIndex == IPY_GameWorld.rptEquip and equipIndex not in ShareDefine.RoleEquipType:
|
| | | # continue
|
| | | # |
| | | # curEquip = equipPack.GetAt(equipIndex)
|
| | | # |
| | | # if curEquip.IsEmpty():
|
| | | # continue
|
| | | # |
| | | # if not ItemCommon.CheckItemCanUseByExpireTime(curEquip):
|
| | | # # 过期
|
| | | # continue
|
| | | # |
| | | # #装备触发的技能 (全身)
|
| | | # CalcCurEquip_SkillBuff(curPlayer, curEquip)
|
| | | # |
| | | # |
| | | # |
| | | # # 后面的为角色装备专用处理
|
| | | # #===================================================================
|
| | | # # if packIndex != IPY_GameWorld.rptEquip:
|
| | | # # continue
|
| | | # # |
| | | # # if isSuite or curEquip.GetItemTypeID() in ReadChConfig.GetEvalChConfig("AddSuiteNumEquitList"):
|
| | | # # suiteEquipCnt += 1
|
| | | # #===================================================================
|
| | | # |
| | | # #套装加buff 根据装备现有的套装的个数字典 |
| | | # #===============================================================================
|
| | | # # #全身橙色装备数量触发相关
|
| | | # # OnOrangeQualityCntChange(curPlayer, orangeQualityCnt)
|
| | | # # |
| | | # # # 重置激活提示类型为None
|
| | | # # curPlayer.SetDict(ChConfig.Def_PlayerKey_AttrActivatyNotify, ChConfig.Def_AttrActivatyNotify_None)
|
| | | # #===============================================================================
|
| | | # |
| | | # # 装备内层buff
|
| | | # allAttrListEquip = [{} for i in range(4)] # 不包含翅膀及装备上镶嵌的宝石
|
| | | # SkillShell.CalcCurBuffer_Effect(curPlayer.GetEquipBuff(), curPlayer, allAttrListEquip)
|
| | | # PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_EquipBuff, allAttrListEquip)
|
| | | # |
| | | # # 装备外层buff属性,此buff算战力
|
| | | # allAttrListEquptBuffs = [{} for i in range(4)]
|
| | | # SkillShell.CalcCurBuffer_Effect(curPlayer.GetEquipBuff(), curPlayer, |
| | | # allAttrListEquptBuffs, [], ChConfig.CalcBuffLevel_1)
|
| | | # PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_EquipBuff1, allAttrListEquptBuffs)
|
| | | # |
| | | # return
|
| | | #===============================================================================
|
| | |
|
| | |
|
| | | #===============================================================================
|
| | | # #//07 03 人物装备物品#tagCEquipItem
|
| | |
| | | lqAttrValue = lingQiAttrValueList[lqIndex]
|
| | |
|
| | | PlayerControl.CalcAttrDict_Type(lqAttrID, lqAttrValue, lingQiAttrList)
|
| | | |
| | | #灵器各部位其他属性
|
| | | #if equipPlace == ShareDefine.retWing:
|
| | | # PlayerWing.CalcWingAttrEx(curPlayer, curEquip, allAttrList)
|
| | |
|
| | | # 新培养属性
|
| | | guardTrainAttrList = [{} for _ in range(4)]
|
| | |
| | | activateInfo.SuiteActivateStateInfo = activateStateList
|
| | | activateInfo.Count = len(activateInfo.SuiteActivateStateInfo)
|
| | | NetPackCommon.SendFakePack(curPlayer, activateInfo)
|
| | | return
|
| | |
|
| | | ##全身橙色装备数量触发相关(包含橙色品质以上的装备数量)
|
| | | def OnOrangeQualityCntChange(curPlayer, orangeQualityCnt):
|
| | | notifyType = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_AttrActivatyNotify)
|
| | | if notifyType == ChConfig.Def_AttrActivatyNotify_Equip:
|
| | | EventShell.EventRespons_OrangeQualityCnt(curPlayer, orangeQualityCnt)
|
| | | return
|
| | |
|
| | |
|