示例#1
0
 private void CheckType(GuideStep data_step)
 {
     if (data_step.type == 0)
     {
         Debug.LogWarning("step id = " + data_step.id + ", type = 0, 需要填写");
     }
 }
示例#2
0
 public void GuideToThrow()
 {
     step           = GuideStep.BeforeThrow;
     Time.timeScale = 0;
     throwGuideSprite.SetActive(true);
     AudioPlayer.Instance.PlayAudio(dir + strClickBomb, RunGameManager.Instance.player.transform.position, false, ThrowAudioEnd);
 }
示例#3
0
    void EndStep(GuideStep step)
    {
        StepClear();


        if (!string.IsNullOrEmpty(step.linkID))
        {
            GameSystem.Instance.mClient.mUIManager.ShowSpecifiedUI(step.linkID, step.linkSubID);
        }

        if (step.ID == curModule.endStep || (step.nextStep == 0 && curModule.endStep == 0))
        {
            ReqEndGuide(curModule.ID);
        }
        readyStep = GameSystem.Instance.GuideConfig.GetStep(step.nextStep);
        curStep   = null;

        if (readyStep == null)
        {
            curModule = null;
            if (readyModuleID != 0)
            {
                BeginGuide(readyModuleID, isDebugging);
                readyModuleID = 0;
            }
        }
    }
示例#4
0
 private void CheckGuideId(GuideStep data_step)
 {
     if (!this.IsGuideIdExist(data_step.group))
     {
         Debug.LogWarning("groupId, 指引id = " + data_step.group);
     }
 }
示例#5
0
    public GuideStep GetStep(uint ID)
    {
        GuideStep step = null;

        steps.TryGetValue(ID, out step);
        return(step);
    }
    private void SetGuidePopup(GuideStep GuideStep)
    {
        switch (GuideStep)
        {
        case GuideStep.Recognizing:
            if (!goGuideImage.activeSelf)
            {
                goResultGuideImage.SetActive(false);
                goGuideImage.SetActive(true);
            }

            goGuideText.text = "View an Image";
            CurrentStep      = GuideStep.Recognizing;
            break;

        case GuideStep.ContentAugment:
            if (!goResultGuideImage.activeSelf)
            {
                goGuideImage.SetActive(false);
                goResultGuideImage.SetActive(true);
            }
            goGuideText.text = "Check out AR Tracker's robust tracking performance.";
            CurrentStep      = GuideStep.ContentAugment;
            break;
        }
    }
示例#7
0
 private void CheckSuccessMode(GuideStep data_step)
 {
     if (data_step.successMode.get_Count() == 0)
     {
         Debug.LogWarning("step id = " + data_step.id + ", successMode size = 0, 需要填写");
     }
 }
示例#8
0
 private void CheckLockMode(GuideStep data_step)
 {
     if (data_step.lockMode == 0)
     {
         Debug.LogWarning("step id = " + data_step.id + ", lockMode = 0, 需要填写");
     }
 }
示例#9
0
 public void ModuleClear()
 {
     checkUncompleted = true;
     StepClear();
     curModule     = null;
     readyModuleID = 0;
     curStep       = null;
     readyStep     = null;
 }
示例#10
0
    static int ShowTip(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        GuideSystem obj  = (GuideSystem)LuaScriptMgr.GetNetObjectSelf(L, 1, "GuideSystem");
        GuideStep   arg0 = (GuideStep)LuaScriptMgr.GetNetObject(L, 2, typeof(GuideStep));

        obj.ShowTip(arg0);
        return(0);
    }
示例#11
0
        private void btnAddNew_Click(object sender, EventArgs e)
        {
            btnPre.Enabled    = false;
            btnNext.Enabled   = true;
            btnNext.Text      = "下一步(&N)>";
            btnAddNew.Visible = false;

            pnlJob.Controls.SetChildIndex(JobsPanel, 0);

            guideStep = GuideStep.ChooseJob;
        }
示例#12
0
    private void CheckDataOfStep()
    {
        List <GuideStep> dataList = DataReader <GuideStep> .DataList;

        for (int i = 0; i < dataList.get_Count(); i++)
        {
            GuideStep data_step = dataList.get_Item(i);
            this.CheckLockMode(data_step);
            this.CheckType(data_step);
            this.CheckGuideId(data_step);
            this.CheckSuccessMode(data_step);
        }
    }
    /// <summary>
    /// 新手引导第一关
    /// </summary>

    IEnumerator showLevel1(Item curItem, BanBattleManager battleMgr, GuideManager mgr, TemporyData temp)
    {
        NewFloor floor = Core.Data.newDungeonsManager.curFightingFloor;

                #if NewGuide
        if (floor != null && floor.config.ID == 60103 && mgr.isGuiding)
        {
                #else
        if (floor != null && floor.config.ID == 60101 && mgr.isGuiding)
        {
                #endif
            if (isGuideLevel1(curItem, battleMgr))
            {
                SkillData sd = Core.Data.skillManager.getSkillDataConfig(25037);
                battleMgr.AngryUI(true, sd, 1);
                yield return(new WaitForSeconds(BanTimeCenter.XiaoWuKong_Level1));

                Time.timeScale = 0.0f;
                mgr.AutoRUN();
            }
        }
    }

    bool isGuideLevel1(Item curItem, BanBattleManager battleMgr)
    {
        bool guide  = false;
        int  attNum = battleMgr.GetBattleRole(curItem.attackIndex).number;
        int  defNum = battleMgr.GetBattleRole(curItem.defenseIndex).number;

                #if NewGuide
        if (attNum == 10142 && defNum == 10172)
        {
                #else
        if (attNum == 10142 && defNum == 10175)
        {
                #endif
            if (curItem.period == Period.AngrySkillReady)
            {
                guide   = true;
                curStep = GuideStep.XiaoWuKong_OS_1;
                ConsoleEx.DebugLog("isGuideLevel1 is going", ConsoleEx.RED);
            }
        }

        return(guide);
    }

    #endregion
}
    //孙悟空3释放终结技能
    bool isGuide_5(Item curItem, BanBattleManager battleMgr)
    {
        bool guide  = false;
        int  attNum = battleMgr.GetBattleRole(curItem.attackIndex).number;
        int  defNum = battleMgr.GetBattleRole(curItem.defenseIndex).number;

        if (attNum == 10218 && defNum == 10104 && curItem.period == Period.AngrySkill)
        {
            guide   = true;
            curStep = GuideStep.WuKong3_OS_4;
            ConsoleEx.DebugLog("isGuide_5 is going", ConsoleEx.RED);
        }

        return(guide);
    }
    //孙悟空2继承小悟空20怒气
    bool isGuide_3(Item curItem, BanBattleManager battleMgr)
    {
        bool guide  = false;
        int  attNum = battleMgr.GetBattleRole(curItem.attackIndex).number;
        int  defNum = battleMgr.GetBattleRole(curItem.defenseIndex).number;

        if (attNum == 10107 && defNum == 10105 && curItem.period == Period.Attend)
        {
            guide   = true;
            curStep = GuideStep.WuKong2_Anger;
            ConsoleEx.DebugLog("isGuide_3 is going", ConsoleEx.RED);
        }

        return(guide);
    }
示例#16
0
 private void SetImages(GuideStep dataStep)
 {
     string[] list = dataStep.picture.Split(new char[]
     {
         ';'
     });
     this.m_listPool.Create(list.Length, delegate(int index)
     {
         if (index < list.Length && index < this.m_listPool.Items.get_Count())
         {
             RawImage component = this.m_listPool.Items.get_Item(index).get_transform().FindChild("Image").GetComponent <RawImage>();
             ResourceManager.SetTexture(component, list[index]);
         }
     });
 }
    //对决的新手引导
    bool isGuide_8(Item curItem, BanBattleManager battleMgr)
    {
        bool guide  = false;
        int  attNum = battleMgr.GetBattleRole(curItem.attackIndex).number;

        if (attNum == 10218 && curItem.defenseIndex == 6)
        {
            if (curItem.period == Period.NormalAttack)
            {
                guide   = true;
                curStep = GuideStep.WuKong3_Vs_BILUSI;
                ConsoleEx.DebugLog("isGuide_7 is going", ConsoleEx.RED);
            }
        }

        return(guide);
    }
    //比鲁斯
    bool isGuide_6(Item curItem, BanBattleManager battleMgr)
    {
        bool guide  = false;
        int  attNum = battleMgr.GetBattleRole(curItem.attackIndex).number;

        if (attNum == 10218 && curItem.defenseIndex == 6)
        {
            if (curItem.period == Period.AttributeConflict)
            {
                guide   = true;
                curStep = GuideStep.BILUSI_V_WuKong3;
                ConsoleEx.DebugLog("isGuide_6 is going", ConsoleEx.RED);
            }
        }

        return(guide);
    }
示例#19
0
        public void EndJump()
        {
            switch (step)
            {
            case GuideStep.InJump:
                step           = GuideStep.FromJumpToEnd;
                Time.timeScale = 0;
                AudioPlayer.Instance.PlayAudio(dir + strJumpSuc, RunGameManager.Instance.player.transform.position, false, EndJumpAudioEnd);
                break;

            case GuideStep.InSecondJump:
                step           = GuideStep.FromSecondJumpToEnd;
                Time.timeScale = 0;
                AudioPlayer.Instance.PlayAudio(dir + strJumpSuc, RunGameManager.Instance.player.transform.position, false, EndSecondJumpAudioEnd);
                break;
            }
        }
    //小悟空克制比克大魔王
    bool isGuide_1(Item curItem, BanBattleManager battleMgr)
    {
        bool guide  = false;
        int  attNum = battleMgr.GetBattleRole(curItem.attackIndex).number;
        int  defNum = battleMgr.GetBattleRole(curItem.defenseIndex).number;

        if (attNum == 10142 && defNum == 10193)
        {
            if (curItem.period == Period.AttributeConflict)
            {
                guide   = true;
                curStep = GuideStep.XiaoWuKong_V_BiKe;
                ConsoleEx.DebugLog("isGuide_1 is going", ConsoleEx.RED);
            }
        }

        return(guide);
    }
示例#21
0
        private void btnPre_Click(object sender, EventArgs e)
        {
            switch (guideStep)
            {
            case GuideStep.ChooseJob:
            //btnPre.Enabled = false;
            //btnNext.Enabled = true;
            //break;
            case GuideStep.ConfigJob:
                if (JobsPanel != null)
                {
                    pnlJob.Controls.SetChildIndex(JobsPanel, 0);
                    guideStep = GuideStep.ChooseJob;

                    btnPre.Enabled  = false;
                    btnNext.Enabled = true;
                }
                break;

            case GuideStep.ConfigTrigger:
                if (JobConfigPanel != null)
                {
                    pnlJob.Controls.SetChildIndex(JobConfigPanel, 0);
                    guideStep = GuideStep.ConfigJob;

                    btnPre.Enabled  = true;
                    btnNext.Enabled = true;
                    //btnNext.Text = "下一步(&N)>";
                }
                break;

            case GuideStep.OK:
                if (defaultTriggerPanel != null)
                {
                    pnlJob.Controls.SetChildIndex(defaultTriggerPanel, 0);
                    guideStep = GuideStep.ConfigTrigger;

                    btnPre.Enabled  = true;
                    btnNext.Enabled = true;
                    btnNext.Text    = "下一步(&N)>";
                }
                break;
            }
        }
示例#22
0
 public void Initialization()
 {
     if (Flight_StageController.isGuide)
     {
         staticGuideStep = GuideStep.End;
     }
     else
     {
         staticGuideStep = GuideStep.None;
     }
     guideStep = GuideStep.None;
     if (uiGuide == null)
     {
         uiGuide = transform.parent.GetComponentInChildren <Flight_UIGuide>();
     }
     if (audioManager == null)
     {
         audioManager = transform.parent.GetComponentInChildren <Flight_AudioManager>();
     }
 }
示例#23
0
    void RunStep(GuideStep step)
    {
        Debug.Log("Run guide step " + step.ID);
        curStep = step;
        if (string.IsNullOrEmpty(step.specialFunc))
        {
            HighlightControls(step);
            Animator animator = basePanel.FindChild(curStep.uiName).GetComponent <Animator>();
            if (animator != null && IsAnimating(animator))
            {
                showTipAfterAnimating = true;
            }
            else
            {
                ShowTip(step);
            }
            if (step.conditions.Contains(GuideStep.CompleteCondition.Delay3Seconds))
            {
                timerFinishStep.stop = false;
            }
            guideHiding = false;
            shutter     = null;
        }
        else
        {
            MethodInfo method = GetType().GetMethod(step.specialFunc);
            if (method != null)
            {
                method.Invoke(this, new object[] { });
            }
            else
            {
                LuaScriptMgr.Instance.DoString(step.specialFunc);
            }

            if (step.conditions.Contains(GuideStep.CompleteCondition.AfterFunc))
            {
                EndCurStep();
            }
        }
    }
    override public void OnEnter(MatchState lastState)
    {
        base.OnEnter(lastState);

        GuideStep  step   = GameSystem.Instance.GuideConfig.GetStep(guideStepID);
        GameObject prefab = ResourceLoadManager.Instance.LoadPrefab("Prefab/GUI/GuideMask") as GameObject;

        maskPanel = NGUITools.AddChild <UIPanel>(GameSystem.Instance.mClient.mUIManager.m_uiRootBasePanel);
        maskPanel.gameObject.AddComponent <UIManagedPanel>();
        NGUITools.BringForward(maskPanel.gameObject);
        GameObject obj = CommonFunction.InstantiateObject(prefab, maskPanel.transform);

        obj.GetComponent <UIWidget>().alpha = 0f;
        UIEventListener.Get(obj).onClick   += OnClick;
        GuideSystem.Instance.ShowTip(GuideSystem.Instance.curStep);
        GameObject areaPrefab = ResourceLoadManager.Instance.LoadPrefab("Prefab/Indicator/pre_SkillGuideArea") as GameObject;

        indicator = GameObject.Instantiate(areaPrefab) as GameObject;

        timer.stop = false;
    }
    private void SetGuidePopup(GuideStep GuideStep)
    {
        switch (GuideStep)
        {
        case GuideStep.Initializing:
            if (!goGuideImage.activeSelf)
            {
                goResultGuideImage.SetActive(false);
                goGuideImage.SetActive(true);
            }
            goGuideVideo.GetComponent <VideoPlayer>().clip = Resources.Load <VideoClip>("GuideVideo/mp4/initializing") as VideoClip;
            goGuideText.text = "Aim the phone at the image and slowly move your camera in circle.";
            CurrentStep      = GuideStep.Initializing;
            break;

        case GuideStep.Recognizing:
            if (!goGuideImage.activeSelf)
            {
                goResultGuideImage.SetActive(false);
                goGuideImage.SetActive(true);
            }

            goGuideVideo.GetComponent <VideoPlayer>().clip = Resources.Load <VideoClip>("GuideVideo/mp4/image") as VideoClip;
            goGuideText.text = "View an Image";
            CurrentStep      = GuideStep.Recognizing;
            break;

        case GuideStep.ContentAugment:
            if (!goResultGuideImage.activeSelf)
            {
                goGuideImage.SetActive(false);
                goResultGuideImage.SetActive(true);
            }
            goGuideText.text = "Check out AR Fusion Tracker's extended tracking performance.";
            CurrentStep      = GuideStep.ContentAugment;
            break;
        }
    }
示例#26
0
    void BeginGuide(uint moduleID, bool debug = false)
    {
        GuideModule module    = GameSystem.Instance.GuideConfig.GetModule(moduleID);
        bool        isRestart = (MainPlayer.Instance.GetUncompletedGuide() == moduleID);

        if (isRestart && module.restartStep == 0)
        {
            ReqEndGuide(moduleID);
            return;
        }
        if (!isRestart && !IsUIVisible(module.uiName))          // UI visible is not required by restarted guide module
        {
            Debug.Log("Begin guide, UI not visible, ID: " + module.ID + " UI: " + module.uiName);
            return;
        }
        if (!debug)
        {
            if (module.skipConditions.Count > 0)                //directly skip
            {
                if (ConditionValidator.Instance.Validate(module.skipConditions, module.skipConditionParams, true))
                {
                    Debug.Log("Skip guide: " + module.ID);
                    ReqEndGuide(module.ID);
                    return;
                }
            }
            if (!ConditionValidator.Instance.Validate(module.conditionTypes, module.conditionParams))
            {
                return;
            }
        }
        curModule = module;
        uint firstStep = isRestart ? module.restartStep : module.firstStep;

        readyStep = GameSystem.Instance.GuideConfig.GetStep(firstStep);
    }
示例#27
0
    void ReadStep()
    {
        string text = ResourceLoadManager.Instance.GetConfigText(name2);

        if (text == null)
        {
            ErrorDisplay.Instance.HandleLog("LoadConfig failed: " + name2, "", LogType.Error);
            return;
        }

        XmlDocument doc  = CommonFunction.LoadXmlConfig(GlobalConst.DIR_XML_GUIDE_STEP, text);
        XmlNode     root = doc.SelectSingleNode("Data");

        foreach (XmlNode line in root.SelectNodes("Line"))
        {
            if (CommonFunction.IsCommented(line))
            {
                continue;
            }

            GuideStep step = new GuideStep();
            step.ID = uint.Parse(line.SelectSingleNode("id").InnerText);
            if (steps.ContainsKey(step.ID))
            {
                ErrorDisplay.Instance.HandleLog("Step ID: " + step.ID + " already existed.", "", LogType.Error);
            }
            uint.TryParse(line.SelectSingleNode("next_step").InnerText, out step.nextStep);
            step.uiName = line.SelectSingleNode("ui_name").InnerText;
            string hlctrls = line.SelectSingleNode("highlight_control").InnerText;
            if (!string.IsNullOrEmpty(hlctrls))
            {
                step.highlightCtrls.AddRange(hlctrls.Split('&'));
            }
            XmlNode node = line.SelectSingleNode("control_effect");
            if (node != null && !string.IsNullOrEmpty(node.InnerText))
            {
                string[] tokens = node.InnerText.Split('&');
                foreach (string token in tokens)
                {
                    step.ctrlEffects.Add((ControlEffect)int.Parse(token));
                }
            }
            step.highlightButton = line.SelectSingleNode("highlight_button").InnerText;
            if (!string.IsNullOrEmpty(step.highlightButton))
            {
                step.highlightCtrls.Add(step.highlightButton);
            }
            string effects = line.SelectSingleNode("button_effect").InnerText;
            if (!string.IsNullOrEmpty(effects))
            {
                string[] tokens = effects.Split('&');
                foreach (string token in tokens)
                {
                    step.buttonEffects.Add((ControlEffect)int.Parse(token));
                }
            }
            string effectPos = line.SelectSingleNode("effect_position").InnerText;
            if (!string.IsNullOrEmpty(effectPos))
            {
                string[] tokensPos = effectPos.Split('&');
                foreach (string tokenPos in tokensPos)
                {
                    string[] tokensXY = tokenPos.Split(',');
                    Vector2  pos      = new Vector2(float.Parse(tokensXY[0]), float.Parse(tokensXY[1]));
                    step.effectPos.Add(pos);
                }
            }
            else
            {
                step.effectPos.Add(Vector2.zero);
            }
            string disabledButton = line.SelectSingleNode("disabled_button").InnerText;
            if (!string.IsNullOrEmpty(disabledButton))
            {
                step.disabledButtons.AddRange(disabledButton.Split('&'));
            }
            step.tipText = line.SelectSingleNode("tip").InnerText;
            node         = line.SelectSingleNode("tip_arrow_pos");
            if (node != null)
            {
                step.tipArrowType = (GuideStep.TipArrowType)(int.Parse(node.InnerText));
            }
            node = line.SelectSingleNode("tip_arrow_offset");
            if (node != null)
            {
                float.TryParse(node.InnerText, out step.tipArrowOffset);
            }
            step.tipButtonText = line.SelectSingleNode("tip_button_text").InnerText;
            node = line.SelectSingleNode("second_button_text");
            if (node != null)
            {
                step.secondButtonText = node.InnerText;
            }
            string tipPos = line.SelectSingleNode("tip_position").InnerText;
            if (!string.IsNullOrEmpty(tipPos))
            {
                string[] tokens = tipPos.Split(',');
                step.tipPos.x = float.Parse(tokens[0]);
                step.tipPos.y = float.Parse(tokens[1]);
            }
            node = line.SelectSingleNode("instructor");
            if (node != null)
            {
                step.instructor = node.InnerText;
            }
            node = line.SelectSingleNode("instructor_pos");
            if (node != null && !string.IsNullOrEmpty(node.InnerText))
            {
                string[] tokens = node.InnerText.Split(',');
                step.instructorPos.Set(float.Parse(tokens[0]), float.Parse(tokens[1]));
            }
            string conditions = line.SelectSingleNode("complete_condition").InnerText;
            if (!string.IsNullOrEmpty(conditions))
            {
                string[] tokens = conditions.Split('&');
                foreach (string token in tokens)
                {
                    step.conditions.Add((GuideStep.CompleteCondition) int.Parse(token));
                }
            }
            string linkID = line.SelectSingleNode("link_id").InnerText;
            if (!string.IsNullOrEmpty(linkID))
            {
                string[] tokens = linkID.Split(',');
                step.linkID = tokens[0];
                if (tokens.Length > 1)
                {
                    uint.TryParse(tokens[1], out step.linkSubID);
                }
            }
            step.specialFunc = line.SelectSingleNode("special_entry_point").InnerText;
            steps.Add(step.ID, step);
        }
    }
示例#28
0
 private void ThrowAudioEnd(string str)
 {
     step = GuideStep.EndThrow;
 }
示例#29
0
 public void EndJump()
 {
     switch (step)
     {
         case GuideStep.InJump:
             step = GuideStep.FromJumpToEnd;
             Time.timeScale = 0;
             AudioPlayer.Instance.PlayAudio(dir + strJumpSuc, RunGameManager.Instance.player.transform.position, false, EndJumpAudioEnd);
             break;
         case GuideStep.InSecondJump:
             step = GuideStep.FromSecondJumpToEnd;
             Time.timeScale = 0;
             AudioPlayer.Instance.PlayAudio(dir + strJumpSuc, RunGameManager.Instance.player.transform.position, false, EndSecondJumpAudioEnd);
             break;
     }
 }
示例#30
0
 private void GuideSecondJumpAudioEnd(string str)
 {
     Debug.Log(str);
     step = GuideStep.InSecondJump;
 }
示例#31
0
 private void ThrowAudioEnd(string str)
 {
     step = GuideStep.EndThrow;
 }
示例#32
0
 public void GuideToThrow()
 {
     step = GuideStep.BeforeThrow;
     Time.timeScale = 0;
     throwGuideSprite.SetActive(true);
     AudioPlayer.Instance.PlayAudio(dir + strClickBomb, RunGameManager.Instance.player.transform.position, false, ThrowAudioEnd);
 }
示例#33
0
 public void BeginSecondJump()
 {
     step = GuideStep.BeforeSecondJump;
 }
示例#34
0
 private void EndSecondJumpAudioEnd(string str)
 {
     Time.timeScale = 1;
     step = GuideStep.EndSecondJump;
 }
示例#35
0
 private void GuideSecondJumpAudioEnd(string str)
 {
     Debug.Log(str);
     step = GuideStep.InSecondJump;
 }
示例#36
0
        private void btnNext_Click(object sender, EventArgs e)
        {
            switch (guideStep)
            {
            case GuideStep.ChooseJob:
                if (JobConfigPanel != null)
                {
                    if (!pnlJob.Controls.Contains(JobConfigPanel))
                    {
                        pnlJob.Controls.Add(JobConfigPanel);
                        JobConfigPanel.Dock = DockStyle.Fill;
                    }
                    pnlJob.Controls.SetChildIndex(JobConfigPanel, 0);

                    guideStep       = GuideStep.ConfigJob;
                    btnPre.Enabled  = true;
                    btnNext.Enabled = true;
                }
                break;

            case GuideStep.ConfigJob:
                if (defaultTriggerPanel != null)
                {
                    jobDetail = (JobConfigPanel as IJobConfigPanel).GetJobDetail();
                    if (jobDetail == null)
                    {
                        return;
                    }

                    foreach (string jobNames in SchedulerManager.GetScheduler().GetJobNames(jobDetail.Group))
                    {
                        if (jobNames == jobDetail.Name)
                        {
                            MessageBox.Show("任务组名、任务名不能同时重复,请修改");
                            return;
                        }
                    }

                    if (!pnlJob.Controls.Contains(defaultTriggerPanel))
                    {
                        pnlJob.Controls.Add(defaultTriggerPanel);
                        defaultTriggerPanel.Dock = DockStyle.Fill;
                    }
                    pnlJob.Controls.SetChildIndex(defaultTriggerPanel, 0);

                    guideStep       = GuideStep.ConfigTrigger;
                    btnPre.Enabled  = true;
                    btnNext.Enabled = true;
                }
                break;

            case GuideStep.ConfigTrigger:
                if (!pnlJob.Controls.Contains(oKPanel))
                {
                    pnlJob.Controls.Add(oKPanel);
                    oKPanel.Dock = DockStyle.Fill;
                }
                pnlJob.Controls.SetChildIndex(oKPanel, 0);

                defaultTriggerPanel.JobName      = jobDetail.Name;
                defaultTriggerPanel.JobGroupName = jobDetail.Group;
                trigger = defaultTriggerPanel.GetTrigger();

                guideStep       = GuideStep.OK;
                btnPre.Enabled  = true;
                btnNext.Enabled = true;
                btnNext.Text    = "完成";
                break;

            case GuideStep.OK:
                AddJob();
                btnPre.Enabled    = true;
                btnNext.Enabled   = false;
                btnAddNew.Visible = true;
                break;
            }
        }