| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #---------------------------------------------------------------------  | 
| #  | 
| #---------------------------------------------------------------------  | 
| ##@package PrintNPCAngry  | 
| # @todo: ²é¿´µãÑ¡µÄNPC³ðºÞÁÐ±í  | 
| #  | 
| # @author: panwei  | 
| # @date 2010-06-09  | 
| # @version 1.0  | 
| #  | 
| # @note: ²é¿´µãÑ¡NPCµÄ³ðºÞÁÐ±í  | 
| #---------------------------------------------------------------------  | 
| import IPY_GameWorld  | 
| import GameWorld  | 
| import GameObj  | 
| #---------------------------------------------------------------------  | 
| ##²é¿´µãÑ¡µÄNPC³ðºÞÁÐ±í  | 
| # @param curPlayer Íæ¼ÒʵÀý  | 
| # @param cmdList GMÃüÁî²ÎÊýÁÐ±í  | 
| # @return ·µ»ØÖµÎÞÒâÒå  | 
| # @remarks GMÃüÁî  | 
| def OnExec(curPlayer, cmdList):  | 
|     #---»ñµÃµãÑ¡µÄNPC---  | 
|       | 
|     if cmdList:  | 
|         objID = cmdList[0]  | 
|         curNPC = GameWorld.GetObj(objID, IPY_GameWorld.gotNPC)  | 
|         if not curNPC:  | 
|             GameWorld.DebugAnswer(curPlayer, "objID(%s) ´íÎó ÕÒ²»µ½¶ÔÓ¦NPC" % objID)  | 
|             return  | 
|     else:  | 
|         curObj = curPlayer.GetActionObj()  | 
|           | 
|         if curObj == None or curObj.GetID() == 0:  | 
|             GameWorld.DebugAnswer(curPlayer, "ÐèÑ¡ÖÐNPC")  | 
|             return  | 
|           | 
|         if curObj.GetGameObjType() != IPY_GameWorld.gotNPC:  | 
|             GameWorld.DebugAnswer(curPlayer, "ÐèÑ¡ÖÐNPC")  | 
|             return  | 
|       | 
|         #---Êä³öNPCµÄ³ðºÞÐÅÏ¢---  | 
|         curNPC = GameWorld.GetObj(curObj.GetID(), IPY_GameWorld.gotNPC)  | 
|           | 
|         if curNPC == None:  | 
|             GameWorld.DebugAnswer(curPlayer, "ÐèÑ¡ÖÐNPC")  | 
|             return  | 
|           | 
|     npcAngry = curNPC.GetNPCAngry()  | 
|     GameWorld.DebugAnswer(curPlayer, "---NPCID=%s, µ±Ç°³ðºÞÊý=%s" % (curNPC.GetNPCID(), npcAngry.GetAngryCount()))  | 
|     for i in range(0, npcAngry.GetAngryCount()):  | 
|         curAngry = npcAngry.GetAngryValueTag(i)  | 
|         angryObjID = curAngry.GetObjID()  | 
|           | 
|         if angryObjID == 0:  | 
|             continue  | 
|           | 
|         angryObjType = curAngry.GetObjType()  | 
|         angryObjValue = GameObj.GetAngryValue(curAngry)  | 
|           | 
|         angryDetel = GameWorld.GetObj(angryObjID, angryObjType)  | 
|           | 
|         if angryDetel == None:  | 
|             continue  | 
|           | 
|         #GameWorld.DebugAnswer(curPlayer, 'id = %s, name = %s, angryValue = %s'%(angryObjID, angryDetel.GetName(), angryObjValue))  | 
|         GameWorld.DebugAnswer(curPlayer, '%s type=%s,id=%s,v=%s' % (i, angryObjType, angryObjID, angryObjValue))  | 
|       | 
|     return  |