From b4b72d0c241ffc26dbbbd7a047578f1f4fead2f4 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 09 十二月 2021 16:11:53 +0800
Subject: [PATCH] 9341 【BT5】【主干】【后端】情缘系统(Couple命令增加添加喜糖宴会;修复多个喜糖宴会同时存在时吃喜糖同步错误bug)
---
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