From 3d0d0fa39bc4e24094de982640720a49f4cf080b Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期六, 22 六月 2019 16:28:34 +0800
Subject: [PATCH] 6603 【后端】【2.0】增加新版的sp和被动技能 - 修复盾值

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py |   33 +++++++++++++++++++++++----------
 1 files changed, 23 insertions(+), 10 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py
index da3cbdf..5847a24 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py
@@ -56,6 +56,7 @@
 import PlayerFairyCeremony
 import PlayerNewFairyCeremony
 import Operate_EquipStone
+import OpenServerCampaign
 import PlayerWeekParty
 import PlayerFairyDomain
 import GameFuncComm
@@ -4333,7 +4334,8 @@
     value = int(curActionNode.GetAttribute("value"))
     curPlayerFreePoint = curPlayer.GetFreePoint()
     curPlayer.SetFreePoint(curPlayerFreePoint + value)
-    
+    # 更新开服活动灵根数据
+    OpenServerCampaign.UpdOpenServerCampaignLingGenData(curPlayer)
     DataRecordPack.DR_Freepoint(curPlayer, "Event", value, {"MissionID":curMission.GetMissionID()})
     return
 
@@ -5965,18 +5967,20 @@
     if questID != 0:
         curMission = curPlayer.FindMission(questID)
     classLV = GameWorld.ToIntDef(curActionNode.GetAttribute("classLV"), 0)
-    if not classLV:
-        return
+    equipMaxClasslv = IpyGameDataPY.GetFuncCfg('EquipMaxClasslv')
+    classlVList = [classLV] if classLV else range(1, equipMaxClasslv+1)
+
     needPlusLV = GameWorld.ToIntDef(curActionNode.GetAttribute("plusLV"), 0)
     totalCnt = 0
     equipPlaceList = ChConfig.Pack_EquipPart_CanPlusStar[IPY_GameWorld.rptEquip]
     for equipPlace in equipPlaceList:
-        ipyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap', classLV, equipPlace)
-        if not ipyData:
-            continue
-        partStarLV = ChEquip.GetEquipPartPlusLV(curPlayer, IPY_GameWorld.rptEquip, ipyData.GetGridIndex())
-        if partStarLV >= needPlusLV:
-            totalCnt += 1
+        for classLV in classlVList:
+            ipyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap', classLV, equipPlace)
+            if not ipyData:
+                continue
+            partStarLV = ChEquip.GetEquipPartPlusLV(curPlayer, IPY_GameWorld.rptEquip, ipyData.GetGridIndex())
+            if partStarLV >= needPlusLV:
+                totalCnt += 1
         
     curMission.SetProperty(key, totalCnt)
     return
@@ -7434,4 +7438,13 @@
 def ConditionType_Check_Xbxz(curPlayer, curMission, curActionNode):
     value = GameWorld.ToIntDef(curActionNode.GetAttribute("value"), 0)
     mwID = GameWorld.ToIntDef(curActionNode.GetAttribute("mwid"), 0)
-    return PlayerMagicWeapon.GetXBXZAwardProgress(curPlayer, mwID) >= value
\ No newline at end of file
+    return PlayerMagicWeapon.GetXBXZAwardProgress(curPlayer, mwID) >= value
+
+##商城表商品购买记录判断(只适用购买次数不重置的)
+# @param None
+# @return None <Check_Buyshopitem value="数量" index="商城表唯一ID"/>
+def ConditionType_Check_Buyshopitem(curPlayer, curMission, curActionNode):
+    value = GameWorld.ToIntDef(curActionNode.GetAttribute("value"), 0)
+    itemIndex = GameWorld.ToIntDef(curActionNode.GetAttribute("index"), 0)
+    curDayBuyCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ShopItemDayBuyCnt % itemIndex)
+    return curDayBuyCnt >= value
\ No newline at end of file

--
Gitblit v1.8.0