From 1e3f8cd83080ab4f140f862b2b2a0e60282b521e Mon Sep 17 00:00:00 2001 From: xdh <xiefantasy@qq.com> Date: 星期四, 30 八月 2018 20:11:31 +0800 Subject: [PATCH] fix:3106 【后端】新增守卫人皇参与奖励 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FamilyRobBoss.py | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FamilyRobBoss.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FamilyRobBoss.py index 63e03d9..d6f129b 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FamilyRobBoss.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FamilyRobBoss.py @@ -244,9 +244,11 @@ npcFamilyHisHurtDict = hurtMgr.familyHisHurtDict.get(key, {}) npcFamilyPlayerIDDict = hurtMgr.familyPlayerIDDict.get(key, {}) + ownerFamilyName = "" if ownerFamilyID in npcFamilyHisHurtDict: ownerFamilyHisHurt = npcFamilyHisHurtDict[ownerFamilyID] - PlayerControl.WorldNotify(0, "FairyGrabBossDead", [ownerFamilyHisHurt.name, bossID]) + ownerFamilyName = ownerFamilyHisHurt.name + PlayerControl.WorldNotify(0, "FairyGrabBossDead", [ownerFamilyName, bossID]) # 击杀结算前强制排序历史玩家伤血 npcHisHurtPlayerList = npcPlayerHisHurtDict.values() @@ -258,7 +260,7 @@ curNPCPlayerOrderAwardDict = ownerFamilyPlayerOrderAwardDict.get(bossID, {}) maxOrder = max(curNPCPlayerOrderAwardDict) if curNPCPlayerOrderAwardDict else 0 curOrder = 0 - #orderPlayerNameList = [] + orderPlayerNameList = [] for hurtPlayer in npcHisHurtPlayerList: # 只算归属仙盟的 if hurtPlayer.familyID != ownerFamilyID: @@ -268,13 +270,14 @@ batchPlayerIDList.append([hurtPlayer.objID]) batchAddItemList.append(awardItemList) batchParamList.append([bossID, curOrder]) - #orderPlayerNameList.append(hurtPlayer.name) + orderPlayerNameList.append(hurtPlayer.name) GameWorld.Log(" 归属仙盟第%s名额外奖励: %s" % (curOrder, awardItemList)) if curOrder >= maxOrder: break if batchPlayerIDList: PlayerControl.SendMailBatch("FairyGrabBoss2", batchPlayerIDList, batchAddItemList, batchParamList) - #PlayerControl.WorldNotify(0, "FairyGrabBossRank", orderPlayerNameList + [bossID]) + orderPlayerName = ShareDefine.Def_Space.join(orderPlayerNameList) + PlayerControl.WorldNotify(0, "FairyGrabBossRank", [orderPlayerName, bossID]) # 参与仙盟历史伤血奖励, 算历史伤血 joinAwardNeedHurtHPPer = IpyGameDataPY.GetFuncCfg("FairyGrabBoss", 2) @@ -303,6 +306,10 @@ if curPlayer: NetPackCommon.SendFakePack(curPlayer, hurtPack) + # 击杀时主动同步进度 + syncMsg = str({bossID:[0, maxHP, ownerFamilyID, ownerFamilyName]}) + GameWorld.GetPlayerManager().GameServer_QueryPlayerResult(0, 0, 0, "FamilyOwnerBossInfo", syncMsg, len(syncMsg)) + # 伤血在NPCCommon统一清 return -- Gitblit v1.8.0