From 552f4ce1704ee326eded21f56f032c7db0e11f4f Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期六, 27 四月 2019 20:10:09 +0800 Subject: [PATCH] 6603 【后端】【2.0】增加新版的sp和被动技能 -- 删除废弃效果 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py | 56 ++++++++++++++++---------------------------------------- 1 files changed, 16 insertions(+), 40 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py index 302ea95..6e8e0f0 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py @@ -33,7 +33,7 @@ import PassiveBuffEffMng import ItemControler import PlayerActivity -import ChEquip +import FBCommon import PlayerVip import random @@ -324,9 +324,10 @@ for ipyData in ipyDataList: if not GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_PDict_XBXZAwardRecord, ipyData.GetID()): return - elif mwID != 101: #定海神针特殊 可直接获得 + elif mwID == 101: #定海神针特殊 可直接获得 + FBCommon.Notify_FB_Over(curPlayer, {FBCommon.Over_dataMapID:ChConfig.Def_FBMapID_MagicWeapon,FBCommon.Over_isPass:1}) + else: return - DoActiveMW(curPlayer, mwID) return @@ -346,47 +347,22 @@ conditionList = ipyData.GetCondition() cnt = 0 if curType == 1: - #角色防御到XX - cnt = PlayerControl.GetFuncDef(curPlayer) - - elif curType == 2: - #穿戴三阶橙色1星或四阶紫色1星以上头盔 + #穿戴X阶X颜色是否套装X部位装备 + cnt = 0 playerEquip = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptEquip) - SamboSpecialUnlock = IpyGameDataPY.GetFuncEvalCfg('SamboSpecialUnlock') - for equipIndex in xrange(playerEquip.GetCount()): - curEquip = playerEquip.GetAt(equipIndex) + for classlv, color, suite, place in conditionList: + equipIpyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap',classlv,place) + if not equipIpyData: + continue + gridIndex = equipIpyData.GetGridIndex() + curEquip = playerEquip.GetAt(gridIndex) if curEquip.IsEmpty(): continue - curClassLV = ItemCommon.GetItemClassLV(curEquip) - itemColor = curEquip.GetItemColor() - itemQuality = curEquip.GetItemQuality() - itemID = curEquip.GetItemTypeID() - for classlv, color, star, place in conditionList: - if equipIndex is place and itemID in SamboSpecialUnlock: - cnt = 1 - break - if equipIndex is place and curClassLV >= classlv and itemColor >= color and itemQuality >= star: - cnt = 1 - break - if cnt: + curItemColor = curEquip.GetItemColor() + curIsSuite = curEquip.GetSuiteID() + if curItemColor >= color and curIsSuite >= suite: + cnt = 1 break -# elif curType == 3: -# #全身装备X星 -# cnt = ChEquip.GetTotalEquipStars(curPlayer) - -# elif curType == 4: -# #X阶普通、强化套装 -# suiteCntDict = {} -# playerEquip = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptEquip) -# for equipIndex in xrange(playerEquip.GetCount()): -# curEquip = playerEquip.GetAt(equipIndex) -# if curEquip.IsEmpty(): -# continue -# suiteInfo = ChEquip.GetSuiteInfoByPlace(curPlayer, equipIndex, curEquip) -# for suitelv, suiteType in conditionList: -# if suiteInfo.get(suiteType, 0) >= suitelv: -# suiteCntDict[suiteType] = suiteCntDict.get(suiteType, 0)+1 -# cnt = max(suiteCntDict.values()) if suiteCntDict else 0 else: return -- Gitblit v1.8.0