1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/usr/bin/python
# -*- coding: GBK -*-
 
##@package MissionDir
# »ñµÃÍæ¼ÒÈÎÎñÁбí
#
# @author kill
# @date 2010-4-23
# @version 1.0
#
# ÐÞ¸Äʱ¼ä ÐÞ¸ÄÈË ÐÞ¸ÄÄÚÈÝ
# VER = "2010-05-12 18:30" zhengyang Ìí¼Ó×¢ÊÍ
#
# Ä£¿éÏêϸ˵Ã÷
 
import GameWorld
import QuestManager
 
## GMÃüÁîÖ´ÐÐÈë¿Ú
#  @param curPlayer µ±Ç°Íæ¼Ò
#  @param playerList ²ÎÊýÁбí [ missionID]
#  @return None
#  @remarks º¯ÊýÏêϸ˵Ã÷.
def OnExec(curPlayer, playerList):
    
    if len(playerList) == 0:
        GameWorld.DebugAnswer(curPlayer, "------ ÈÎÎñÊý: %s ------" % curPlayer.GetMissionCount())
        for i in range(curPlayer.GetMissionCount()):
            curMission = curPlayer.GetMissionByIndex(i)
            __ShowMissionInfo(curPlayer, curMission, False)
        return
    
    missionID = playerList[0]
    curMission = curPlayer.FindMission(missionID)
    if curMission == None:
        GameWorld.DebugAnswer(curPlayer, "ÎÞ´ËÈÎÎñ£º%d" % missionID)
        return
    __ShowMissionInfo(curPlayer, curMission, True)
    return
 
def __ShowMissionInfo(curPlayer, curMission, isShowKey):
    #»ñµÃÈÎÎñID
    MissionID = curMission.GetMissionID()
    #»ñµÃÈÎÎñ״̬
    MissionState = curMission.GetState()
    DescriptionIndex = curMission.GetDescriptionIndex()
    curQuestData = QuestManager.FindQuest(MissionID)
    name = curQuestData.Name if curQuestData else ""
    GameWorld.DebugAnswer(curPlayer, "ID:%d\t״̬:%d\tË÷Òý:%d    %s" % (MissionID, MissionState, DescriptionIndex, name))
    if not isShowKey:
        return
    
    for i in range(curMission.GetPropertyCount()):
        GameWorld.DebugAnswer(curPlayer, "    %s = %d" % (curMission.GetPropertyNameByIndex(i), curMission.GetPropertyValueByIndex(i)))
    return