Beispiel #1
0
 public void AddShowQuest(int questID)
 {
     PlayerInfo.QuestInfo info = PlayerInfo.GetQuestInfo(questID);
     if (info.ID == 0 && !PlayerInfo.CheckCompleteQuest(questID))
     {
         AddQuestToList(questID);
         UIInstance.AddQustUI(GetQuestInfoByID(questID));
     }
     else
     {
         Debug.Log("已经添加该任务;或已经完成这个任务: " + questID);
     }
 }
Beispiel #2
0
    //添加任务信息到列表
    void AddQuestToList(int questID)
    {
        //添加任务信息记录,方便以后查找
        QuestBase Quest = new QuestBase();

        Quest = GetQuestInfoByID(questID);
        NowQuestInfoList.Add(Quest);

        //初始化任务信息到角色信息
        PlayerInfo.QuestInfo newQuest = new PlayerInfo.QuestInfo();
        newQuest.ID        = Quest.ID;
        newQuest.Goal      = Quest.QuestComplete.Num;
        newQuest.Progress  = 0;
        newQuest.Type      = PlayerInfo.QuestInfo.QuestInfoType.Todo;
        newQuest.TaskPoint = Quest.Award.TaskPoint;
        PlayerInfo.AddQuest(newQuest);
        AddQuestToNew(questID);
    }
Beispiel #3
0
    public void UpdateQuestUI(int quest, int point)
    {
        PlayerInfo.QuestInfo info        = PlayerInfo.GetQuestInfo(quest);
        Transform            questButton = QuestListUI.transform.Find(info.ID.ToString());
        Slider    prograssBar            = questButton.transform.Find("progress").GetComponent <Slider>();
        Transform hint = questButton.transform.Find("hint");

        prograssBar.value = (float)info.Progress / info.Goal;

        //如果已经完成
        if (prograssBar.value >= 1)
        {
            hint.gameObject.SetActive(true);
            AniController.Get(hint.gameObject).AddSprite(hintsprites);
            hint.GetComponent <Image>().color = Color.green;
            AniController.Get(hint.gameObject).PlayAni(0, 3, AniController.AniType.Loop, 5);
            questManager.PreCheckQuest(PlayerInfo.GetNowscene());
        }
    }