| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
|   | 
| ##@package PlayerMissionDir  | 
| # »ñµÃÍæ¼ÒÈÎÎñÁÐ±í£¨Ö§³ÖÍæ¼ÒID£©  | 
| #  | 
| # @author xdh  | 
| # @date 2010-4-23  | 
| # @version 1.0  | 
| #  | 
| # ÐÞ¸Äʱ¼ä ÐÞ¸ÄÈË ÐÞ¸ÄÄÚÈÝ  | 
| #  | 
| # Ä£¿éÏêϸ˵Ã÷  | 
|   | 
| import GameWorld  | 
| import Lang  | 
| import LogUI  | 
|   | 
| ## GMÃüÁîÖ´ÐÐÈë¿Ú  | 
| #  @param curPlayer µ±Ç°Íæ¼Ò  | 
| #  @param playerList ²ÎÊýÁбí [Íæ¼ÒID, missionID]  | 
| #  @return None  | 
| #  @remarks º¯ÊýÏêϸ˵Ã÷.  | 
| def OnExec(curPlayer, playerList):  | 
|     if len(playerList) == 0:  | 
|         GameWorld.DebugAnswer(curPlayer, Lang.GBText("PlayerMissionDir Íæ¼ÒID, [ÈÎÎñID]"))  | 
|         return  | 
|     playerID = playerList[0]  | 
|       | 
|     playerManager = GameWorld.GetMapCopyPlayerManager()  | 
|     findPlayer = playerManager.FindPlayerByID(playerID)  | 
|     if not findPlayer:  | 
|         GameWorld.DebugAnswer(curPlayer, Lang.GBText("µ±Ç°µØÍ¼Î´ÕÒµ½Íæ¼ÒID:%s"%playerID))  | 
|         return  | 
|     if len(playerList) == 1:  | 
|         GameWorld.DebugAnswer(curPlayer, Lang.GBText("Íæ¼ÒID£º%d    ÈÎÎñ״̬ÈçÏÂ"%(playerID)))  | 
|         for i in range(0, findPlayer.GetMissionCount()):  | 
|             #±éÀúÈÎÎñÁбí, ÕÒµ½Õâ¸öÈËÎï¿ÉÒÔÖ´ÐеÄÈÎÎñ  | 
|             curMission = findPlayer.GetMissionByIndex(i)  | 
|             #»ñµÃÈÎÎñID  | 
|             MissionID = curMission.GetMissionID()  | 
|             #»ñµÃÈÎÎñ״̬  | 
|             MissionState =curMission.GetState()  | 
|             GameWorld.DebugAnswer(curPlayer, Lang.GBText("ÈÎÎñID£º%d    ÈÎÎñ״̬£º%d"%(MissionID,MissionState)))  | 
|         return  | 
|       | 
|     missionID = playerList[1]  | 
|     curMission = findPlayer.FindMission(missionID)  | 
|     if curMission == None:  | 
|         GameWorld.DebugAnswer(curPlayer, Lang.GBText("Íæ¼Òid:%s  ÎÞ´ËÈÎÎñ£º%d"%(playerID, missionID)))  | 
|         return  | 
|     MissionState =curMission.GetState()  | 
|     GameWorld.DebugAnswer(curPlayer, Lang.GBText("Íæ¼ÒID£º%s ÈÎÎñID£º%d    ÈÎÎñ״̬£º%d"%(playerID, missionID,MissionState)))      | 
|     for i in range(curMission.GetPropertyCount()):  | 
|         GameWorld.DebugAnswer(curPlayer, Lang.GBText("Íæ¼ÒÈÎÎñID£º%d state = %d  key = %s value = %d"%(missionID,curMission.GetState(),  | 
|                             curMission.GetPropertyNameByIndex(i),  | 
|                             curMission.GetPropertyValueByIndex(i)  | 
|                             ))) |