From 610b80d69baa0583b19559a4daf6fbb22ab90f07 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期日, 23 二月 2020 12:23:32 +0800
Subject: [PATCH] 8380 【主干】【后端】优化境界压制(大境界不足时无法获得归属)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py |   26 ++++++++++++++++++--------
 1 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
index 51748dc..3d4f0dd 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
@@ -4484,10 +4484,15 @@
                     dropPlayer = curPlayer
                     
                 if isGameBoss and curPlayer.GetOfficialRank() < GetRealmLV(curNPC):
-                    GameWorld.Log("玩家境界不足,无法获得Boss归属奖励! playerRealmLV=%s,npcID=%s,npcRealmLV=%s" 
-                                  % (curPlayer.GetOfficialRank(), npcID, GetRealmLV(curNPC)), curPlayer.GetPlayerID())
-                    continue
-                
+                    playerRealmIpyData = IpyGameDataPY.GetIpyGameDataNotLog("Realm", curPlayer.GetOfficialRank())
+                    npcRealmIpyData = IpyGameDataPY.GetIpyGameDataNotLog("Realm", GetRealmLV(curNPC))
+                    playerRealmLVLarge = playerRealmIpyData.GetLvLarge() if playerRealmIpyData else 0
+                    npcRealmLVLarge = npcRealmIpyData.GetLvLarge() if npcRealmIpyData else 0
+                    if npcRealmLVLarge > playerRealmLVLarge:
+                        GameWorld.Log("玩家大境界不足,无法获得Boss归属奖励! playerRealmLVLarge=%s,npcID=%s,npcRealmLVLarge=%s" 
+                                      % (playerRealmLVLarge, npcID, npcRealmLVLarge), curPlayer.GetPlayerID())
+                        continue
+                    
                 self.__KilledByPlayerSetPrize(curPlayer)
                 ownerPlayerList.append(curPlayer)
             self.__ownerPlayerList = ownerPlayerList
@@ -4866,10 +4871,15 @@
         #遍历队伍,半径为一屏半的距离内的所有队伍/团队成员,可以获得经验
         for curPlayer in playerlist:
             if isGameBoss and curPlayer.GetOfficialRank() < GetRealmLV(curNPC):
-                GameWorld.Log("队员境界不足,无法获得Boss归属奖励! playerRealmLV=%s,npcID=%s,npcRealmLV=%s" 
-                              % (curPlayer.GetOfficialRank(), npcID, GetRealmLV(curNPC)), curPlayer.GetPlayerID())
-                continue
-            
+                playerRealmIpyData = IpyGameDataPY.GetIpyGameDataNotLog("Realm", curPlayer.GetOfficialRank())
+                npcRealmIpyData = IpyGameDataPY.GetIpyGameDataNotLog("Realm", GetRealmLV(curNPC))
+                playerRealmLVLarge = playerRealmIpyData.GetLvLarge() if playerRealmIpyData else 0
+                npcRealmLVLarge = npcRealmIpyData.GetLvLarge() if npcRealmIpyData else 0
+                if npcRealmLVLarge > playerRealmLVLarge:
+                    GameWorld.Log("队员玩家大境界不足,无法获得Boss归属奖励! playerRealmLVLarge=%s,npcID=%s,npcRealmLVLarge=%s" 
+                                  % (playerRealmLVLarge, npcID, npcRealmLVLarge), curPlayer.GetPlayerID())
+                    continue
+                
             curPlayerLV = curPlayer.GetLV()
             if teamMaxLV < curPlayerLV:
                 teamMaxLV = curPlayerLV

--
Gitblit v1.8.0