From 593c79cbe45d9a6722f57d0e0287de3b11a79917 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期日, 09 十月 2022 16:26:58 +0800 Subject: [PATCH] 9687 【后端】【越南】【主干】【BT7】野外根据境界动态刷怪(修复切分线境界难度刷怪异常bug) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCRealmRefresh.py | 17 +++++++++++------ 1 files changed, 11 insertions(+), 6 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCRealmRefresh.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCRealmRefresh.py index 7073fd2..faf9446 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCRealmRefresh.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCRealmRefresh.py @@ -72,10 +72,12 @@ def GetTagNPCRefresh(curNPC): realmDiff = curNPC.GetSightLevel() refreshID = curNPC.GetDictByKey(ChConfig.Def_NPC_Dict_SummonRefreshID) + lineID = GameWorld.GetGameWorld().GetLineID() + key = (lineID, realmDiff) obj = None - if realmDiff in PyGameData.g_realmDiffNPCRefresh: - mapNPCRefresh = PyGameData.g_realmDiffNPCRefresh[realmDiff] + if key in PyGameData.g_realmDiffNPCRefresh: + mapNPCRefresh = PyGameData.g_realmDiffNPCRefresh[key] if refreshID in mapNPCRefresh: obj = mapNPCRefresh[refreshID] else: @@ -88,8 +90,11 @@ ''' 加载本地图 tagNPCRefresh.txt 刷怪规则 ''' - if realm in PyGameData.g_realmDiffNPCRefresh: - return PyGameData.g_realmDiffNPCRefresh[realm] + lineID = GameWorld.GetGameWorld().GetLineID() + key = (lineID, realm) + + if key in PyGameData.g_realmDiffNPCRefresh: + return PyGameData.g_realmDiffNPCRefresh[key] filePath = os.path.join(ChConfig.GetDBPath(), "SysDB", "tagNPCRefresh.txt") if not os.path.isfile(filePath): @@ -139,8 +144,8 @@ GameWorld.ErrLog("tagNPCRefresh.txt line(%s) error." % (line + 1)) continue - PyGameData.g_realmDiffNPCRefresh[realm] = mapNPCRefresh - GameWorld.Log("LoadMapRealmNPCRefresh mapID=%s,realm=%s,refreshIDList=%s" % (curMapID, realm, mapNPCRefresh.keys())) + PyGameData.g_realmDiffNPCRefresh[key] = mapNPCRefresh + GameWorld.Log("LoadMapRealmNPCRefresh mapID=%s,lineID=%s,realm=%s,refreshIDList=%s" % (curMapID, lineID, realm, mapNPCRefresh.keys())) return mapNPCRefresh def ProcessRealmNPCRefresh(gameWorld, tick): -- Gitblit v1.8.0