xdh
2019-05-25 e641855eb308bba24a5584511b92341731b18915
6779 【后端】【2.0】BOSS之家多图合一 批(掉落广播修改)
3个文件已修改
25 ■■■■ 已修改文件
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py
@@ -548,9 +548,9 @@
def OnKillBossDropGoodItem(msgList, tick):
    # playerName, mapID, npcID, itemID, userData
    if len(msgList) != 8:
    if len(msgList) != 10:
        return
    playerID, killerName, mapID, lineID, npcID, itemID, userData, weightValue, serverGroupID = msgList
    playerID, killerName, mapID, lineID, npcID, itemID, userData, weightValue, serverGroupID, playerLV = msgList
    GameWorld.DebugLog("击杀Boss掉落好物品: mapID=%s,npcID=%s,killerName=%s,itemID=%s, userData=%s, weightValue=%s, serverGroupID=%s" 
                       % (mapID, npcID, killerName, itemID, userData, weightValue, serverGroupID))
    maxRecordCnt = IpyGameDataPY.GetFuncCfg('DropRecordNum')
@@ -595,10 +595,10 @@
            if commonList and commonList[0][0] != -1:
                recordList.Delete(commonList[0][0])
        
    PlayerUniversalGameRec.MapServer_UniversalGameRec(None, recType, [mapID, npcID, itemID, playerID, weightValue],
                                                      [killerName, lineID, userData])
    PlayerUniversalGameRec.MapServer_UniversalGameRec(None, recType, [mapID*100+lineID, npcID, itemID, playerID, weightValue],
                                                      [killerName, '%s|%s'%(serverGroupID, playerLV), userData])
    
    msgList = [killerName, playerID, mapID, lineID, npcID, itemID, userData]
    msgList = [killerName, playerID, mapID, npcID, itemID, userData, serverGroupID, playerLV, lineID]
    PlayerControl.WorldNotify(0, 'DropRecord' , msgList)
    return
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
@@ -266,11 +266,9 @@
            return
        if dropItemNPCID:
            serverGroupID = PlayerControl.GetPlayerServerGroupID(curPlayer)
            mapID = GameWorld.GetGameWorld().GetMapID()
            lineID = 0 if GameWorld.GetMap().GetMapFBType() == IPY_GameWorld.fbtNull else PlayerControl.GetFBFuncLineID(curPlayer)
            NPCCommon.SendGameServerGoodItemRecord(mapID, lineID, dropItemNPCID, curPlayer.GetName(),
                                                   curPlayer.GetPlayerID(), curItemID, equipInfo, serverGroupID)
            NPCCommon.SendGameServerGoodItemRecord(curPlayer, mapID, lineID, dropItemNPCID, curItemID, equipInfo)
            
        # 不需要队伍提示
        #=======================================================================
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
@@ -660,8 +660,7 @@
            mailItemList.append(mailItem)
            
        if npcID:
            serverGroupID = PlayerControl.GetPlayerServerGroupID(curPlayer)
            SendGameServerGoodItemRecord(mapID, lineID, npcID, curPlayer.GetName(), playerID, itemID, equipInfo, serverGroupID)
            SendGameServerGoodItemRecord(curPlayer, mapID, lineID, npcID, itemID, equipInfo)
         
    # 放不下的发邮件   
    if mailItemList:
@@ -6171,7 +6170,7 @@
    NetPackCommon.SendFakePack(curPlayer, npcInfoPack)
    return
def SendGameServerGoodItemRecord(mapID, lineID, npcID, playerName, playerID, itemID, equipInfo=[], serverGroupID=0):
def SendGameServerGoodItemRecord(curPlayer, mapID, lineID, npcID, itemID, equipInfo=[]):
    # @param equipInfo: [equipPlace, itemClassLV, itemColor, itemQuality, itemUserData]
#    GameWorld.DebugLog("检查物品是否发送GameServer: mapID=%s, npcID=%s, playerName=%s, itemID=%s" 
#                       % (mapID, npcID, playerName, itemID))
@@ -6201,8 +6200,10 @@
                needRecord = True
    if not needRecord:
        return
    dropEquipMsg = str([playerID, playerName, mapID, lineID, npcID, itemID, itemUserData, weightValue, serverGroupID])
    playerID = curPlayer.GetID()
    playerName = curPlayer.GetName()
    serverGroupID = PlayerControl.GetPlayerServerGroupID(curPlayer)
    dropEquipMsg = str([playerID, playerName, mapID, lineID, npcID, itemID, itemUserData, weightValue, serverGroupID, curPlayer.GetLV()])
    GameWorld.GetPlayerManager().GameServer_QueryPlayerResult(0, 0, 0, 'BossDropGoodItem', dropEquipMsg, len(dropEquipMsg))
    GameWorld.DebugLog("发送GameServer记录拾取掉落好物品: %s" % dropEquipMsg, playerID)
    return