#!/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)  
 | 
                            ))) 
 |