From 37238ec592a619664e098e934d9e6cb621533886 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期五, 26 四月 2019 11:02:45 +0800
Subject: [PATCH] 6597 【后端】【2.0】缥缈仙域事件刷新类型做限制(配置0代表不限制)

---
 ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFairyDomain.py                      |    8 +++++++-
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFairyDomain.py |    8 ++++++--
 2 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFairyDomain.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFairyDomain.py
index 30b8ac2..5a76642 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFairyDomain.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFairyDomain.py
@@ -87,10 +87,12 @@
 
 def __ResetFairyDomainCnt(resetType):
     curLimitEventIDList = []
+    delCnt = 0
     universalRecMgr = GameWorld.GetUniversalRecMgr()
     recTypeListData = universalRecMgr.GetTypeList(RecType)
     for index in xrange(recTypeListData.Count()):
-        recData = recTypeListData.At(index)
+        dataIndex = index - delCnt
+        recData = recTypeListData.At(dataIndex)
         if resetType == 1:
             recData.SetValue2(0)
         elif resetType == 2:
@@ -102,6 +104,10 @@
         if not ipyData:
             continue
         hourCntLimit, dayCntLimit = ipyData.GetHourCntPubLimit(), ipyData.GetDayCntPubLimit()
+        if not hourCntLimit and not dayCntLimit:
+            recTypeListData.Delete(dataIndex)
+            delCnt +=1
+            continue
         if hourAppearCnt >= hourCntLimit or dayAppearCnt >= dayCntLimit:
             curLimitEventIDList.append(curID)
     #同步地图
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFairyDomain.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFairyDomain.py
index 74a3504..40c6617 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFairyDomain.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFairyDomain.py
@@ -250,8 +250,12 @@
         eventID = ipyData.GetID()
         appearCntInfo = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_FairyDomainEventAppearCnt % eventID)
         hourAppearCntPri, dayAppearCntPri = appearCntInfo % 1000, appearCntInfo / 1000
-        if hourAppearCntPri >= ipyData.GetHourCntPriLimit() or dayAppearCntPri >= ipyData.GetDayCntPriLimit():
-            #超过今日或本小时个人可出现次数上限
+        hourCntPriLimit, dayCntPriLimit = ipyData.GetHourCntPriLimit(), ipyData.GetDayCntPriLimit()
+        if hourCntPriLimit and hourAppearCntPri >= hourCntPriLimit:
+            #超过本小时个人可出现次数上限
+            continue
+        if dayCntPriLimit and dayAppearCntPri >= dayCntPriLimit:
+            #超过今日个人可出现次数上限
             continue
         if eventID in PyGameData.g_fairyDomainLimit:
             #超过全服可出现次数

--
Gitblit v1.8.0