From 6f39d0dbfb8d019f16ad69151189cb4dc1f0af96 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期四, 04 七月 2019 20:43:10 +0800
Subject: [PATCH] 7839 【后端】【主干】仙盟boss两只boss开出配置,分开配置 仙盟boss掉落表现加上橙装假掉落

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_AllFamilyBoss.py |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_AllFamilyBoss.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_AllFamilyBoss.py
index 55ba478..865ea0f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_AllFamilyBoss.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_AllFamilyBoss.py
@@ -387,12 +387,13 @@
             familyID = hurtInfo[0]
             memberIDList = hurtInfo[1][2]
             memberCnt = len(memberIDList)
-            familyAuctionItemList, menberItemList = __GetFamilyBossAward(rank, worldLV)
+            familyAuctionItemList, menberItemList = __GetFamilyBossAward(bossID, rank, worldLV)
             GameWorld.Log('rank=%s,worldLV=%s,familyAuctionItemList=%s,menberItemList=%s,memberCnt=%s' % (rank, worldLV, familyAuctionItemList, menberItemList, memberCnt), familyID)
-            
+            extraVirtualItemList = [] #额外展示假掉落的物品
             overDict = {FBCommon.Over_rank:rank, 'memberCnt':len(memberIDList)}
             if memberCnt >= needMemberCnt and familyAuctionItemList:  #仙盟拍品
                 familyAuctionItemDict[familyID] = [memberIDList, familyAuctionItemList]
+                extraVirtualItemList = familyAuctionItemList
                 overDict['AuctionItem'] = FBCommon.GetJsonItemList(familyAuctionItemList)
             if menberItemList:  #成员奖励
                 overDict[FBCommon.Over_itemInfo] = FBCommon.GetJsonItemList(menberItemList)
@@ -402,7 +403,7 @@
                 member = playerManager.FindPlayerByID(memberID)
                 if member:
                     if menberItemList:
-                        NPCCommon.DoGiveItemByVirtualDrop(member, menberItemList, bossID, dropPosX, dropPosY, mailTypeKey='LeagueBOSS1')
+                        NPCCommon.DoGiveItemByVirtualDrop(member, menberItemList, bossID, dropPosX, dropPosY, False, 'LeagueBOSS1', extraVirtualItemList)
                         #ItemControler.GivePlayerItemOrMail(member, menberItemList, 'LeagueBOSS1', event)
                     member.Sync_TimeTick(IPY_GameWorld.tttLeaveMap, 0, leaveTick, True)
                     FBCommon.NotifyFBOver(member, ChConfig.Def_FBMapID_AllFamilyBoss, lineID, isPass, overDict)
@@ -431,13 +432,15 @@
     return
 
 
-def __GetFamilyBossAward(rank, worldLV):
+def __GetFamilyBossAward(bossID, rank, worldLV):
     familyAuctionItemList, menberItemList = [], []
     awardRateList = []
     awardPieRateDict = {}
-    ipyMgr = IpyGameDataPY.IPY_Data()
-    for i in xrange(ipyMgr.GetFamilyBossAwardCount()):
-        ipyData = ipyMgr.GetFamilyBossAwardByIndex(i)
+    ipyDataList = IpyGameDataPY.GetIpyGameDataList('FamilyBossAward', bossID)
+    if not ipyDataList:
+        return familyAuctionItemList, menberItemList
+    
+    for ipyData in ipyDataList:
         worldLVList = ipyData.GetWorldLV()
         if worldLV < worldLVList[0] or worldLV > worldLVList[1]:
             continue

--
Gitblit v1.8.0