ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_HorsePetBoss.py
@@ -26,7 +26,7 @@
import ShareDefine
import PlayerActivity
import NPCCustomRefresh
import ItemControler
import PlayerWeekParty
import EventReport
import NPCCommon
import GameObj
@@ -105,7 +105,7 @@
    if not state:
        if GameWorld.GetGameFB().GetFBStep() == FB_Step_Fighting:
            GameWorld.GetGameFB().SetGameFBDict(FBDict_IsOver, tick)
            __DoLogicHorsePetBossOver(0, tick)
            __DoLogicHorsePetBossOver(0, tick, 0, 0)
    return
## 进副本
@@ -131,6 +131,7 @@
    if not hadDelTicket:
        FBCommon.SetHadDelTicket(curPlayer)
        PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_HorsePetBoss, 1)
        PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_HorsePetBoss, 1)
        EventReport.WriteEvent_FB(curPlayer, ChConfig.Def_FBMapID_HorsePetBoss, 0, ChConfig.CME_Log_Start)
        EventShell.EventRespons_HorsePetBoss(curPlayer)
        if fbStep == FB_Step_Open:
@@ -312,7 +313,7 @@
    return playerHurtList
def __DoLogicHorsePetBossOver(isPass, tick):
def __DoLogicHorsePetBossOver(isPass, tick, dropPosX, dropPosY):
    #结算
    FBCommon.SetFBStep(FB_Step_Over, tick)
    
@@ -338,7 +339,7 @@
            auctionItemList, itemList = __GetHorsePetBossAward(lineID, rank, worldLV)
        else:
            auctionItemList, itemList = [], []
        GameWorld.Log('auctionItemList=%s,itemList=%s'%(auctionItemList, itemList))
        GameWorld.Log('auctionItemList=%s,itemList=%s, rank=%s'%(auctionItemList, itemList, rank), playerID)
        giveItemList = auctionItemList+itemList
        player = playerManager.FindPlayerByID(playerID)
        if player:
@@ -348,8 +349,8 @@
            if itemList:
                overDict[FBCommon.Over_itemInfo] = FBCommon.GetJsonItemList(itemList)
            if giveItemList:
                NPCCommon.DoGiveItemByVirtualDrop(player, giveItemList, bossID, mailTypeKey='QCBOSS1')
                #ItemControler.GivePlayerItemOrMail(player, giveItemList, 'QCBOSS1', event)
                NPCCommon.DoGiveItemByVirtualDrop(player, giveItemList, bossID, dropPosX, dropPosY, mailTypeKey='QCBOSS1')
            player.Sync_TimeTick(IPY_GameWorld.tttLeaveMap, 0, leaveTick, True)
            FBCommon.NotifyFBOver(player, ChConfig.Def_FBMapID_HorsePetBoss, lineID, isPass, overDict)
        elif giveItemList:
@@ -387,21 +388,24 @@
        if len(itemInfo) != 3:
            GameWorld.ErrLog('骑宠Boss奖励表 配置错误 itemInfo=%s' % itemInfo)
            continue
        if not itemInfo[0]:
            continue
        if itemInfo[2]:
            auctionItemList.append(itemInfo)
        else:
            itemList.append(itemInfo)
    
    for doCnt, awardPieRateList in awardPieRateDict.items():
        for _ in xrange(doCnt):
            resultItem = GameWorld.GetResultByRandomList(awardPieRateList)
            if len(resultItem) != 3:
                GameWorld.ErrLog('骑宠Boss奖励表配置错误 itemInfo=%s' % resultItem)
                continue
            if resultItem[2]:
                auctionItemList.append(resultItem)
            else:
                itemList.append(resultItem)
    for awardPieRateList in awardPieRateDict:
        resultItem = GameWorld.GetResultByRandomList(awardPieRateList)
        if len(resultItem) != 3:
            GameWorld.ErrLog('骑宠Boss奖励表配置错误 itemInfo=%s' % resultItem)
            continue
        if not resultItem[0]:
            continue
        if resultItem[2]:
            auctionItemList.append(resultItem)
        else:
            itemList.append(resultItem)
    return auctionItemList, itemList
@@ -419,11 +423,13 @@
    if curNPC.GetNPCID() != bossID:
        return
    dropPosX, dropPosY = curNPC.GetPosX(), curNPC.GetPosY()
    #结束 设置BOSS死亡
    FBCommon.NotifyCopyMapPlayerFBHelp(tick, DoFBHelp, 0)
    GameWorld.DebugLog('结束 设置BOSS死亡 lineID=%s' % lineID)
    
    __DoLogicHorsePetBossOver(1, tick)
    __DoLogicHorsePetBossOver(1, tick, dropPosX, dropPosY)
    GameWorld.GetGameFB().SetGameFBDict(FBDict_IsOver, tick)
    return