8364 【恺英】【后端】缥缈随机任务(MissionDir 命令输出内容优化)
1个文件已修改
43 ■■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MissionDir.py 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MissionDir.py
@@ -14,11 +14,7 @@
# 模块详细说明
import GameWorld
import Lang
import ChConfig
import IPY_GameWorld
import LogUI
import ItemControler
import QuestManager
## GM命令执行入口
#  @param curPlayer 当前玩家
@@ -26,28 +22,37 @@
#  @return None
#  @remarks 函数详细说明.
def OnExec(curPlayer, playerList):
    if len(playerList) == 0:
        for i in range(0, curPlayer.GetMissionCount()):
            #遍历任务列表, 找到这个人物可以执行的任务
        GameWorld.DebugAnswer(curPlayer, "------ 任务数: %s ------" % curPlayer.GetMissionCount())
        for i in range(curPlayer.GetMissionCount()):
            curMission = curPlayer.GetMissionByIndex(i)
            #获得任务ID
            MissionID = curMission.GetMissionID()
            #获得任务状态
            MissionState =curMission.GetState()
            DescriptionIndex = curMission.GetDescriptionIndex()
            GameWorld.DebugAnswer(curPlayer, Lang.GBText("玩家任务ID:%d    任务状态:%d 描述索引:%d"%(MissionID,MissionState, DescriptionIndex)))
            __ShowMissionInfo(curPlayer, curMission, False)
        return
    
    missionID = playerList[0]
    curMission = curPlayer.FindMission(missionID)
    if curMission == None:
        GameWorld.DebugAnswer(curPlayer, Lang.GBText("无此任务:%d"%missionID))
        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()
    GameWorld.DebugAnswer(curPlayer, Lang.GBText("玩家任务ID:%d    任务状态:%d 描述索引:%d"%(missionID,MissionState, DescriptionIndex)))
    curQuestData = QuestManager.FindQuest(MissionID)
    GameWorld.DebugAnswer(curPlayer, "ID:%d\t状态:%d\t索引:%d    %s" % (MissionID, MissionState, DescriptionIndex, curQuestData.Name))
    if not isShowKey:
        return
    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)
                            )))
        GameWorld.DebugAnswer(curPlayer, "    %s = %d" % (curMission.GetPropertyNameByIndex(i), curMission.GetPropertyValueByIndex(i)))
    return