| #!/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 PlayerControl  | 
|   | 
|   | 
| #Â߼ʵÏÖ  | 
| ## GMÃüÁîÖ´ÐÐÈë¿Ú  | 
| #  @param curPlayer µ±Ç°Íæ¼Ò  | 
| #  @param msgList ²ÎÊýÁÐ±í  | 
| #  @return None  | 
| #  @remarks º¯ÊýÏêϸ˵Ã÷.  | 
| def OnExec(curPlayer, msgList):  | 
|     mfpTypeName = ChConfig.MFPTypeName  | 
|       | 
|     funcIndexName = ChConfig.FuncIndexName  | 
|       | 
|     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, insidePerAttrDict, customAttrDict = PlayerControl.GetCalcAttrListValue(curPlayer, funcIndex)  | 
|             GameWorld.DebugAnswer(curPlayer, "%s:%s" % (funcName, attrInfo))  | 
|             if insidePerAttrDict:  | 
|                 GameWorld.DebugAnswer(curPlayer, "%sÄÚ²¿¼Ó³É:%s" % (funcName, insidePerAttrDict))  | 
|             if customAttrDict:  | 
|                 GameWorld.DebugAnswer(curPlayer, "%s×Ô¶¨ÒåÊôÐÔ:%s" % (funcName, customAttrDict))  | 
|         return  | 
|       | 
|     GameWorld.DebugAnswer(curPlayer, "===== ×ÜÕ½Á¦: %s" % PlayerControl.GetFightPower(curPlayer))  | 
|     for mfpType in ChConfig.MFPTypeAttrFuncIndexDict.keys():  | 
|         fightPower = PlayerControl.GetMFPFightPower(curPlayer, mfpType)  | 
|         mfpSkillFP = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_MFPSkill % mfpType)  | 
|         mfpEx = PlayerControl.GetMFPExFightPower(curPlayer, 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  | 
|   |