From 2df1f14875b84da3bc57e7e9d3448ff852fb487e Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 09 十月 2019 15:51:20 +0800 Subject: [PATCH] 8299 【恺英】【开发】新增每日直购(增加每日免费直购礼包领取支持) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Boss.py | 44 ++++++++++++++++++++++++++++---------------- 1 files changed, 28 insertions(+), 16 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Boss.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Boss.py index 4be72f3..950f6b9 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Boss.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Boss.py @@ -12,7 +12,7 @@ # @change: "2013-01-16 19:00" wdb 防范死亡的召唤兽被reborn # @change: "2014-10-29 23:30" hxp 增加可刷新标识点刷新的世界boss #------------------------------------------------------------------------------ -"""Version = 2014-10-29 23:30""" +#"""Version = 2014-10-29 23:30""" #--------------------------------------------------------------------- # 模块详细说明 @@ -23,6 +23,7 @@ import NPCCommon import ShareDefine import IpyGameDataPY +import CrossRealmPlayer #--------------------------------------------------------------------- #全局变量 #--------------------------------------------------------------------- @@ -40,21 +41,32 @@ mapID = GameWorld.GetMap().GetMapID() dataList = IpyGameDataPY.GetIpyGameDataByCondition('BOSSInfo', {"MapID":mapID}, returnList=True) - if not dataList: - return - for ipyData in dataList: - bossID = ipyData.GetNPCID() - if not bossID: - continue - - key = ShareDefine.Def_Notify_WorldKey_GameWorldBossReborn % bossID - GameWorld.GetGameWorld().SetGameWorldDict(key, 1) - - bossKey = ChConfig.Map_NPC_WorldBossLastReBornTick % bossID - GameWorld.GetGameFB().SetGameFBDict(bossKey, 0) - - bossKey = ChConfig.Map_NPC_WorldBossLastReBornTick % ipyData.GetStoneNPCID() - GameWorld.GetGameFB().SetGameFBDict(bossKey, 0) + if dataList: + for ipyData in dataList: + bossID = ipyData.GetNPCID() + if not bossID: + continue + + if mapID in ChConfig.Def_CrossZoneMapTableName: + tableName = ChConfig.Def_CrossZoneMapTableName[mapID] + realMapID = GameWorld.GetGameWorld().GetRealMapID() + copyMapID = GameWorld.GetGameWorld().GetCopyMapID() + zoneIpyData = IpyGameDataPY.GetIpyGameData(tableName, realMapID, mapID, copyMapID) + if not zoneIpyData: + continue + zoneID = zoneIpyData.GetZoneID() + key = ShareDefine.Def_Notify_WorldKey_GameWorldBossRebornCross % (zoneID, bossID) + else: + key = ShareDefine.Def_Notify_WorldKey_GameWorldBossReborn % bossID + GameWorld.GetGameWorld().SetGameWorldDict(key, 1) + + bossKey = ChConfig.Map_NPC_WorldBossLastReBornTick % bossID + GameWorld.GetGameFB().SetGameFBDict(bossKey, 0) + + bossKey = ChConfig.Map_NPC_WorldBossLastReBornTick % ipyData.GetStoneNPCID() + GameWorld.GetGameFB().SetGameFBDict(bossKey, 0) + + GameWorld.GetGameFB().SetGameFBDict(ChConfig.Map_NPC_ActivityBossRebornCount % ipyData.GetRefreshMark(), 0) gameNPCManager = GameWorld.GetNPCManager() tick = GameWorld.GetGameWorld().GetTick() -- Gitblit v1.8.0