hch
2019-04-16 732aa4f4a768027405d2f1b4051f13babd29b8e4
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -2602,62 +2602,64 @@
#@return 返回值无意义
#@remarks 客户端封包响应//04 02 获取鼠标左键点击之后对象的详细信息#tagCClickObjGetInfo
def __Func_PlayerClickOtherPlayerGetInfo(index, tick):
    curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
    sendPack = IPY_GameWorld.IPY_CClickObjGetInfo()
    sendPack_ID = sendPack.GetObjID()
    sendPack_Type = sendPack.GetObjType()
    tagObj = GameWorld.GetObj(sendPack_ID, sendPack_Type)
    if tagObj == None:
        #GameWorld.Log("玩家请求其他玩家的相貌信息失败, 对象不存在", curPlayer.GetPlayerID())
        return
    dist = GameWorld.GetDist(curPlayer.GetPosX(), curPlayer.GetPosY(), tagObj.GetPosX(), tagObj.GetPosY())
    #是否可以目标详细信息
    canGetDetail = (dist <= curPlayer.GetSight())
    #目标类型
    tagObjType = tagObj.GetGameObjType()
    #仅处理Player和NPC
    if tagObjType not in [IPY_GameWorld.gotPlayer, IPY_GameWorld.gotNPC]:
        return
    #---玩家处理---
    if tagObjType == IPY_GameWorld.gotPlayer:
        #获取玩家详细信息成功
        if canGetDetail:
            extendDataDict = {}
            extendDataDict['maxHP'] = tagObj.GetMaxHP()
            extendDataDict['maxMP'] = tagObj.GetMaxMP()
            extendDataDict['hit'] = tagObj.GetHit()
            extendDataDict['miss'] = tagObj.GetMiss()
            extendDataDict['atkSpeed'] = PlayerControl.GetAtkSpeed(tagObj)
            extendDataDict['superHitRate'] = tagObj.GetSuperHitRate()
            extendDataDict['superHit'] = tagObj.GetSuperHit()
            extendDataDict['luckyHitRate'] = tagObj.GetLuckyHitRate()
            extendDataDict['greatHitRate'] = tagObj.GetGreatHitRate()
            extendDataDict['ignoreDefRate'] = tagObj.GetIgnoreDefRate()
            extendDataDict['damageReduceRate'] = tagObj.GetDamageReduceRate()
            extendDataDict['damageBackRate'] = tagObj.GetDamageBackRate()
            extendData = str(extendDataDict)
            extendDataLen = len(extendData)
            curPlayer.PlayerClickOtherPlayerDetail(tagObj, extendDataLen, extendData)
            return
        #获取玩家详细信息失败
        curPlayer.Sync_GetPlayerInfoFail(sendPack_ID)
        return
    #---NPC处理---
    #获取NPC详细信息成功
    if canGetDetail:
        curPlayer.PlayerClickOtherNPCDetail(tagObj)
        return
    #===========================================================================
    # curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
    #
    # sendPack = IPY_GameWorld.IPY_CClickObjGetInfo()
    # sendPack_ID = sendPack.GetObjID()
    # sendPack_Type = sendPack.GetObjType()
    #
    # tagObj = GameWorld.GetObj(sendPack_ID, sendPack_Type)
    #
    # if tagObj == None:
    #    #GameWorld.Log("玩家请求其他玩家的相貌信息失败, 对象不存在", curPlayer.GetPlayerID())
    #    return
    #
    # dist = GameWorld.GetDist(curPlayer.GetPosX(), curPlayer.GetPosY(), tagObj.GetPosX(), tagObj.GetPosY())
    # #是否可以目标详细信息
    # canGetDetail = (dist <= curPlayer.GetSight())
    # #目标类型
    # tagObjType = tagObj.GetGameObjType()
    #
    # #仅处理Player和NPC
    # if tagObjType not in [IPY_GameWorld.gotPlayer, IPY_GameWorld.gotNPC]:
    #    return
    #
    # #---玩家处理---
    # if tagObjType == IPY_GameWorld.gotPlayer:
    #    #获取玩家详细信息成功
    #    if canGetDetail:
    #        extendDataDict = {}
    #        extendDataDict['maxHP'] = tagObj.GetMaxHP()
    #        extendDataDict['maxMP'] = tagObj.GetMaxMP()
    #        extendDataDict['hit'] = tagObj.GetHit()
    #        extendDataDict['miss'] = tagObj.GetMiss()
    #        extendDataDict['atkSpeed'] = PlayerControl.GetAtkSpeed(tagObj)
    #        extendDataDict['superHitRate'] = tagObj.GetSuperHitRate()
    #        extendDataDict['superHit'] = tagObj.GetSuperHit()
    #        extendDataDict['luckyHitRate'] = tagObj.GetLuckyHitRate()
    #        extendDataDict['greatHitRate'] = tagObj.GetGreatHitRate()
    #        extendDataDict['ignoreDefRate'] = tagObj.GetIgnoreDefRate()
    #        extendDataDict['damageReduceRate'] = tagObj.GetDamageReduceRate()
    #        extendDataDict['damageBackRate'] = tagObj.GetDamageBackRate()
    #
    #        extendData = str(extendDataDict)
    #        extendDataLen = len(extendData)
    #        curPlayer.PlayerClickOtherPlayerDetail(tagObj, extendDataLen, extendData)
    #        return
    #
    #    #获取玩家详细信息失败
    #    curPlayer.Sync_GetPlayerInfoFail(sendPack_ID)
    #    return
    #
    # #---NPC处理---
    #
    # #获取NPC详细信息成功
    # if canGetDetail:
    #    curPlayer.PlayerClickOtherNPCDetail(tagObj)
    #    return
    #
    #===========================================================================
    #获取NPC详细信息失败
    #暂不处理
    return