#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
#-------------------------------------------------------------------------------  
 | 
#  
 | 
##@package GM.Commands.PrintFightPower  
 | 
#  
 | 
# @todo:ÏÔʾսÁ¦Ã÷ϸ  
 | 
# @author hxp  
 | 
# @date 2018-01-31  
 | 
# @version 1.0  
 | 
#  
 | 
# ÏêϸÃèÊö: ÏÔʾսÁ¦Ã÷ϸ  
 | 
#  
 | 
#-------------------------------------------------------------------------------  
 | 
#"""Version = 2018-01-31 20:00"""  
 | 
#-------------------------------------------------------------------------------  
 | 
  
 | 
import ChConfig  
 | 
import GameWorld  
 | 
import ShareDefine  
 | 
import PlayerControl  
 | 
  
 | 
  
 | 
#Â߼ʵÏÖ  
 | 
## GMÃüÁîÖ´ÐÐÈë¿Ú  
 | 
#  @param curPlayer µ±Ç°Íæ¼Ò  
 | 
#  @param msgList ²ÎÊýÁÐ±í  
 | 
#  @return None  
 | 
#  @remarks º¯ÊýÏêϸ˵Ã÷.  
 | 
def OnExec(curPlayer, msgList):  
 | 
      
 | 
    mfpTypeName = {ShareDefine.Def_MFPType_Role:"½ÇÉ«",  
 | 
                   ShareDefine.Def_MFPType_Equip:"×°±¸",  
 | 
                   ShareDefine.Def_MFPType_Plus:"Ç¿»¯",  
 | 
                   ShareDefine.Def_MFPType_Stone:"±¦Ê¯",  
 | 
                   ShareDefine.Def_MFPType_Suit:"Ì××°",  
 | 
                   ShareDefine.Def_MFPType_Wing:"³á°ò",  
 | 
                   ShareDefine.Def_MFPType_Wash:"Ï´Á·",  
 | 
                   ShareDefine.Def_MFPType_Pet:"Áé³è",  
 | 
                   ShareDefine.Def_MFPType_Horse:"×øÆï",  
 | 
                   ShareDefine.Def_MFPType_Prestige:"¾³½ç",  
 | 
                   ShareDefine.Def_MFPType_GodWeapon:"Éñ±ø",  
 | 
                   ShareDefine.Def_MFPType_Dienstgrad:"³ÆºÅ",  
 | 
                   ShareDefine.Def_MFPType_Rune:"·ûÓ¡",  
 | 
                   ShareDefine.Def_MFPType_Horcrux:"»êÆ÷",  
 | 
                   ShareDefine.Def_MFPType_MagicWeapon1:"ÈË×å",  
 | 
                   ShareDefine.Def_MFPType_StoveYao:"µ¤Ò©",  
 | 
                   ShareDefine.Def_MFPType_MagicWeapon2:"ħ×å",  
 | 
                   ShareDefine.Def_MFPType_MagicWeapon3:"ÏÉ×å",  
 | 
                   ShareDefine.Def_MFPType_PetSoul:"³è»ê",  
 | 
                   ShareDefine.Def_MFPType_HorseSoul:"Æï»ê",  
 | 
                   ShareDefine.Def_MFPType_MagicWeaponSoul:"·¨±¦Ö®»ê",  
 | 
                   ShareDefine.Def_MFPType_Dogz:"ÉñÊÞ",  
 | 
                   ShareDefine.Def_MFPType_Other:"ÆäËû",  
 | 
                   }  
 | 
      
 | 
    funcIndexName = {  
 | 
                     ChConfig.Def_CalcAttrFunc_RoleBase:"½ÇÉ«»ù´¡",  
 | 
                     ChConfig.Def_CalcAttrFunc_EquipBaseWeapon:"ÎäÆ÷ÎïÆ·±í»ù´¡ÊôÐÔ",  
 | 
                     ChConfig.Def_CalcAttrFunc_EquipBaseArmor:"·À¾ßÎïÆ·±í»ù´¡ÊôÐÔ",  
 | 
                     ChConfig.Def_CalcAttrFunc_EquipBaseRelics:"Ê¥Æ÷ÎïÆ·±í»ù´¡ÊôÐÔ",  
 | 
                     ChConfig.Def_CalcAttrFunc_Equip:"×°±¸ÆäËû",  
 | 
                     ChConfig.Def_CalcAttrFunc_PlusBase:"×°±¸Î»Ç¿»¯»ù´¡",  
 | 
                     ChConfig.Def_CalcAttrFunc_PlusEx:"×°±¸Î»Ç¿»¯ÀÛ¼Ó",  
 | 
                     ChConfig.Def_CalcAttrFunc_Stone:"×°±¸±¦Ê¯",  
 | 
                     ChConfig.Def_CalcAttrFunc_Suit:"Ì××°",  
 | 
                     ChConfig.Def_CalcAttrFunc_Wing:"³á°ò",  
 | 
                     ChConfig.Def_CalcAttrFunc_Wash:"Ï´Á·",  
 | 
                     ChConfig.Def_CalcAttrFunc_Pet:"Áé³è",  
 | 
                     ChConfig.Def_CalcAttrFunc_Horse:"×øÆï",  
 | 
                     ChConfig.Def_CalcAttrFunc_Prestige:"¾³½ç",  
 | 
                     ChConfig.Def_CalcAttrFunc_GodWeapon:"Éñ±ø",  
 | 
                     ChConfig.Def_CalcAttrFunc_Dienstgrad:"³ÆºÅ",  
 | 
                     ChConfig.Def_CalcAttrFunc_Rune:"·ûÓ¡",  
 | 
                     ChConfig.Def_CalcAttrFunc_Horcrux:"»êÆ÷",  
 | 
                     ChConfig.Def_CalcAttrFunc_MagicWeapon1:"ÈË×å·¨±¦ÊôÐÔ",  
 | 
                     ChConfig.Def_CalcAttrFunc_MagicWeapon2:"ħ×å·¨±¦ÊôÐÔ",   
 | 
                     ChConfig.Def_CalcAttrFunc_MagicWeapon3:"ÏÉ×å·¨±¦ÊôÐÔ",   
 | 
                     ChConfig.Def_CalcAttrFunc_EquipOutOfPrint:"¾ø°æÊôÐÔËæµÈ¼¶±ä»¯",  
 | 
                     ChConfig.Def_CalcAttrFunc_EquipAllStars:"×°±¸È«ÉíÐǼ¶ÊôÐÔ",  
 | 
                     ChConfig.Def_CalcAttrFunc_Success:"³É¾Í",  
 | 
                     ChConfig.Def_CalcAttrFunc_VIP:"VIP",  
 | 
                     ChConfig.Def_CalcAttrFunc_Stove:"Á¶µ¤Â¯",  
 | 
                     ChConfig.Def_CalcAttrFunc_FamilyTech:"ÐÄ·¨",  
 | 
                     ChConfig.Def_CalcAttrFunc_EquipDecompose:"×°±¸·Ö½â",  
 | 
                     ChConfig.Def_CalcAttrFunc_PetSoul:"³èÎï»êʯ",  
 | 
                     ChConfig.Def_CalcAttrFunc_HorseSoul:"×øÆï»êʯ",  
 | 
                     ChConfig.Def_CalcAttrFunc_HorseSkill:"×øÆï¼¼ÄÜÊôÐÔ",  
 | 
                     ChConfig.Def_CalcAttrFunc_PetSkill:"³èÎï¼¼ÄÜÊôÐÔ",  
 | 
                     ChConfig.Def_CalcAttrFunc_StoveYao:"Á¶µ¤Â¯µ¤Ò©",  
 | 
                     ChConfig.Def_CalcAttrFunc_PetSign:"³èÎïÇ©µ½",  
 | 
                     ChConfig.Def_CalcAttrFunc_MagicWeaponSoul:"·¨±¦Ö®»ê",  
 | 
                     ChConfig.Def_CalcAttrFunc_Dogz:"ÉñÊÞ",  
 | 
                     }  
 | 
      
 | 
    GameWorld.DebugAnswer(curPlayer, "PrintFightPower Ä£¿éÀàÐÍ(¿ÉÑ¡)")  
 | 
      
 | 
    if msgList:  
 | 
        mfpType = msgList[0]  
 | 
        if mfpType not in mfpTypeName:  
 | 
            return  
 | 
        fightPower = PlayerControl.GetMFPFightPower(curPlayer, mfpType)  
 | 
        GameWorld.DebugAnswer(curPlayer, "--- %sÕ½Á¦(%s): %s" % (mfpTypeName[mfpType], mfpType, fightPower))  
 | 
        for funcIndex in ChConfig.MFPTypeAttrFuncIndexDict[mfpType]:  
 | 
            funcName = funcIndexName.get(funcIndex, "ÊôÐÔ(%s)" % funcIndex)  
 | 
            attrInfo = PlayerControl.GetCalcAttrListValue(curPlayer, funcIndex)  
 | 
            GameWorld.DebugAnswer(curPlayer, "%s:%s" % (funcName, attrInfo))  
 | 
        return  
 | 
      
 | 
    GameWorld.DebugAnswer(curPlayer, "===== ×ÜÕ½Á¦: %s" % curPlayer.GetFightPower())  
 | 
    for mfpType in ChConfig.MFPTypeAttrFuncIndexDict.keys():  
 | 
        fightPower = PlayerControl.GetMFPFightPower(curPlayer, mfpType)  
 | 
        mfpSkillFP = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_MFPSkill % mfpType)  
 | 
        mfpEx = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_MFPEx % mfpType)  
 | 
        name = mfpTypeName.get(mfpType, "Ä£¿é%s" % mfpType)  
 | 
        if mfpSkillFP or mfpEx:  
 | 
            GameWorld.DebugAnswer(curPlayer, "%sÕ½Á¦(%s): %s,¼¼ÄÜ:%s, Ex=%s" % (name, mfpType, fightPower, mfpSkillFP, mfpEx))  
 | 
        else:  
 | 
            GameWorld.DebugAnswer(curPlayer, "%sÕ½Á¦(%s): %s" % (name, mfpType, fightPower))  
 | 
          
 | 
    return  
 | 
  
 |