From 043a9c0e0df19388055bb7ad3b15952d7da91506 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期六, 08 五月 2021 16:52:43 +0800 Subject: [PATCH] 8721 【主干】【BT2】【后端】H.活动-合服庆典(骑宠盛宴) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py | 19 ++++++++++++++++--- 1 files changed, 16 insertions(+), 3 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py index 31f12b4..cd6a3b0 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py @@ -328,6 +328,7 @@ __DoRefreshWorldBossCrossServer(npcRefresh, tick) return rebornLineID = 0 + assignLineID = 0 mapID = GameWorld.GetMap().GetMapID() refreshMark = npcRefresh.GetRefreshMark() lineID = GameWorld.GetGameWorld().GetLineID() @@ -364,6 +365,9 @@ relatedType = ipyData.GetRelatedType() relatedID = ipyData.GetRelatedID() isNeedShunt = ipyData.GetIsNeedShunt() + assignLineID = ipyData.GetRefreshLine() # 指定刷新的线路 + if assignLineID > 0: + rebornLineID = assignLineID - 1 if not bossID and not stoneNPCID: return gameFB = GameWorld.GetGameFB() @@ -379,8 +383,15 @@ # 关联运营活动,待扩展 elif relatedType == 2: - operationActionInfo = PyGameData.g_operationActionDict.get(relatedID, {}) - operationActionState = operationActionInfo.get(ShareDefine.ActKey_State, 0) + actNameInfo = relatedID.split("|") + actName = actNameInfo[0] + if actName in ShareDefine.MultiActNumOperationActNameList: + actNum = GameWorld.ToIntDef(actNameInfo[1] if len(actNameInfo) > 1 else "10") + actInfo = GameWorld.GetActInfo(actName, actNum) + operationActionState = actInfo.get(ShareDefine.ActKey_State, 0) + else: + operationActionInfo = PyGameData.g_operationActionDict.get(actName, {}) + operationActionState = operationActionInfo.get(ShareDefine.ActKey_State, 0) rebornBossState = 1 if operationActionState else 0 else: @@ -394,7 +405,9 @@ # 关联活动boss if relatedType: - rebornLineID = activityLineID # 活动boss只刷在活动线 + if assignLineID == 0: # 没有指定刷新线路的,活动boss固定刷在活动线 + rebornLineID = activityLineID # 活动boss只刷在活动线 + # 不是活动线 if rebornBossState and lineID != rebornLineID: rebornBossState = 0 -- Gitblit v1.8.0