| | |
| | | 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:
|
| | | #超过全服可出现次数
|
| | |
| | | GameLogic_CrossGrassland.DoResetCrossGrassland(curPlayer, ipyData.GetEventType(), fdeventID)
|
| | |
|
| | | elif state == FDEventState_Visited:
|
| | | if curState != FDEventState_Visiting:
|
| | | GameWorld.Log('缥缈仙域事件状态设置错误,fdeventID=%s, state=%s, curState=%s' % (fdeventID, state, curState))
|
| | | return
|
| | | #设置结束,暂不做限制,防止异常导致无法结束
|
| | | # if curState != FDEventState_Visiting:
|
| | | # GameWorld.Log('缥缈仙域事件状态设置错误,fdeventID=%s, state=%s, curState=%s' % (fdeventID, state, curState))
|
| | | # return
|
| | | EventShell.EventRespons_FairyDomain(curPlayer)
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FairyDomainEventState % fdeventID, state)
|
| | | NotifyVisitFairyDomainInfo(curPlayer, [fdeventID], 0)
|