Example #1
0
    void OnClickBegin(ButtonScript obj, object args, int param1, int param2)
    {
        int max = 0;

        GlobalValue.Get(Constant.C_LearnSkillMaxNum, out max);
        int level = prof.getSkilMaxLevel(skData_._Id);

        if (level == 0)
        {
            PopText.Instance.Show(LanguageManager.instance.GetValue("learnSkillJobNotMatch"));
            return;
        }
        else if (GamePlayer.Instance.GetIprop(PropertyType.PT_Level) < skData_._LearnLv)
        {
            PopText.Instance.Show(LanguageManager.instance.GetValue("skillLevel").Replace("{n}", skData_._LearnLv.ToString()));
            return;
        }
        else
        if (GamePlayer.Instance.Properties[(int)PropertyType.PT_Money] < skData_._LearnCoin)
        {
            PopText.Instance.Show(LanguageManager.instance.GetValue("EN_MoneyLess"));
            return;
        }
        else if (IsAlreadyLearnedSkills(SkpData._Id))
        {
            PopText.Instance.Show(LanguageManager.instance.GetValue("learnSkillReplice"));
            return;
        }
        else if (skData_._LearnQuestID != 0 && !QuestSystem.IsComplate(skData_._LearnQuestID))
        {
            QuestData qd = QuestData.GetData(skData_._LearnQuestID);
            if (qd != null)
            {
                if (QuestSystem.IsComplate(qd.id_))
                {
                    PopText.Instance.Show(LanguageManager.instance.GetValue("YouHadQuest"));
                    return;
                }
                else if (QuestSystem.IsQuestDoing(qd.id_))
                {
                    PopText.Instance.Show(LanguageManager.instance.GetValue("YouHadComplateQuest"));
                    return;
                }
                string msg = LanguageManager.instance.GetValue("YouNeedDoThisQuest") +
                             StringTool.MakeNGUIStringInfoFmt(skData_._LearnQuestID.ToString(), qd.questName_);
                MessageBoxUI.ShowMe(msg, null, true, null, __TryGotoQuestNpc);
            }

            //PopText.Instance.Show("任务没有完成");
        }
        else if (GetLearaSkillNum() >= max)
        {
            PopText.Instance.Show(LanguageManager.instance.GetValue("EN_SkillSoltFull"));
            return;
        }
        else
        {
            MessageBoxUI.ShowMe(LanguageManager.instance.GetValue("learSkill"), __NormalLearnSkill);
        }
    }