Exemple #1
0
    public void Init(TaskEventArgs e)
    {
        processGobj = Resources.Load("Process") as GameObject;
        rewardGobj  = Resources.Load("Reward") as GameObject;

        task = TaskManager.Instance.GetTaskInfoByID(e.taskID);

        textName.text = task.taskName;
        textDes.text  = task.description;

        for (int i = 0; i < task.taskConditions.Count; i++)
        {
            GameObject a = Instantiate(processGobj) as GameObject;
            a.transform.SetParent(processParent);

            TaskItemProcess tP = a.GetComponent <TaskItemProcess>();
            processText.Add(tP);

            tP.id.text     = task.taskConditions[i].id;
            tP.now.text    = task.taskConditions[i].nowAmount.ToString();
            tP.target.text = task.taskConditions[i].targetAmount.ToString();
        }

        for (int i = 0; i < task.taskRewards.Count; i++)
        {
            GameObject a = Instantiate(rewardGobj) as GameObject;
            a.transform.SetParent(rewardParent);

            TaskItemReward tR = a.GetComponent <TaskItemReward>();
            rewardText.Add(tR);

            tR.id.text     = task.taskRewards[i].id;
            tR.amount.text = task.taskRewards[i].amount.ToString();
        }
    }
Exemple #2
0
 //修改条件的当前进度
 public void Modify(string id, int amount)
 {
     for (int i = 0; i < processText.Count; i++)
     {
         if (processText[i].id == id)
         {
             TaskItemProcess a = processText[i];
             a.now = amount.ToString();
         }
     }
     UpdateProcessText();
 }
Exemple #3
0
    /// <summary>
    /// 添加奖励
    /// </summary>
    /// <param name="e"></param>
    public void Init(TaskEventArgs e)
    {
        process = Resources.Load("Prefabs/TaskUI/Process") as GameObject;
        //process.transform.localScale = new Vector3 (1, 1, 1);
        processLocalPos = process.transform.localPosition;

        reward         = Resources.Load("Prefabs/TaskUI/Reward") as GameObject;
        rewardLocalPos = reward.transform.localPosition;

        task          = TaskManager.Instance.dictionary[e.teskID];
        task.taskItem = this;

        taskName.text = task.taskName;
        caption.text  = task.caption;

        for (int i = 0; i < task.taskConditions.Count; i++)
        {
            GameObject processobj = Instantiate(process) as GameObject;

            processobj.transform.parent        = transform;
            processobj.transform.localPosition = new Vector3(processLocalPos.x + 10f, processLocalPos.y - processText.Count * 20, 0);
            processobj.transform.localScale    = new Vector3(1f, 1f, 1f);

            TaskItemProcess tP = processobj.GetComponent <TaskItemProcess>();
            processText.Add(tP);

            tP.id.text     = task.taskConditions[i].id;
            tP.now.text    = task.taskConditions[i].nowAmount.ToString();
            tP.target.text = task.taskConditions[i].targetAmount.ToString();
        }


        for (int i = 0; i < task.taskRewards.Count; i++)
        {
            GameObject rewardobj = Instantiate(reward) as GameObject;
            rewardobj.transform.parent        = transform;
            rewardobj.transform.localPosition = new Vector3(rewardLocalPos.x, rewardLocalPos.y - rewardText.Count * 20, 0);
            rewardobj.transform.localScale    = new Vector3(1f, 1f, 1f);

            TaskItemReward tR = rewardobj.GetComponent <TaskItemReward>();
            rewardText.Add(tR);

            tR.id.text     = task.taskRewards[i].id;
            tR.amount.text = task.taskRewards[i].amount.ToString();
        }
    }
Exemple #4
0
    public void Init(TaskEventArgs e)
    {
        task          = TaskManager.instance.dictionary[e.taskID];
        task.taskItem = this;

        icon.sprite   = incompletePic;
        taskName.text = task.taskName;
        caption.text  = task.caption;
        process.text  = "";

        for (int i = 0; i < task.taskConditions.Count; i++)
        {
            TaskItemProcess tP = new TaskItemProcess();
            tP.id     = task.taskConditions[i].id;
            tP.now    = task.taskConditions[i].nowAmount.ToString();
            tP.target = task.taskConditions[i].targetAmount.ToString();
            processText.Add(tP);
        }
        UpdateProcessText();
    }
Exemple #5
0
    /**
     * 点击任务项,显示任务描述
     * */
    public void Show()
    {
        GameObject task_dec = GameObject.FindGameObjectWithTag("Task_Interface").transform.Find("Task_description").gameObject;

        task_dec.SetActive(true);
        GameObject process_list  = task_dec.transform.Find("process_list/Viewport/Content").gameObject;
        GameObject reward_list   = task_dec.transform.Find("reward_list/Viewport/Content").gameObject;
        Text       text_dec      = task_dec.transform.Find("text_description").gameObject.GetComponent <Text>();
        Text       text_QuitTask = task_dec.transform.Find("btn_isFinish").gameObject.GetComponentInChildren <Text>();
        Button     btn_quitTask  = task_dec.transform.Find("btn_quitTask").GetComponent <Button>();
        Button     btn_isFinish  = task_dec.transform.Find("btn_isFinish").GetComponent <Button>();

        btn_quitTask.onClick.AddListener(Cancel);
        btn_isFinish.onClick.AddListener(Reward);

        text_dec.text      = task.caption;
        text_QuitTask.text = str_isFinish;

        process = Resources.Load("Prefabs/task/Process") as GameObject;
        reward  = Resources.Load("Prefabs/task/Reward") as GameObject;

        int len1 = process_list.transform.childCount, len2 = reward_list.transform.childCount;

        // 清除进度、奖励显示信息
        for (int i = 0; i < len1; i++)
        {
            DestroyImmediate(process_list.transform.GetChild(0).gameObject, true);
        }
        for (int i = 0; i < len2; i++)
        {
            DestroyImmediate(reward_list.transform.GetChild(0).gameObject, true);
        }

        // 增加进度信息
        for (int i = 0; i < task.taskConditions.Count; i++)
        {
            GameObject a = Instantiate(process) as GameObject;
            a.transform.SetParent(process_list.transform);

            TaskItemProcess tP = a.GetComponent <TaskItemProcess>();
            processText.Add(tP);

            tP.id     = task.taskConditions[i].id;
            tP.now    = task.taskConditions[i].nowAmount.ToString();
            tP.target = task.taskConditions[i].targetAmount.ToString();

            Text id     = a.transform.Find("ID").GetComponent <Text>();
            Text now    = a.transform.Find("Now").GetComponent <Text>();
            Text Target = a.transform.Find("Target").GetComponent <Text>();
            id.text     = tP.id;
            now.text    = tP.now;
            Target.text = tP.target;
        }

        // 增加奖励信息
        for (int i = 0; i < task.taskRewards.Count; i++)
        {
            GameObject a = Instantiate(reward) as GameObject;
            a.transform.SetParent(reward_list.transform);

            TaskItemReward tR = a.GetComponent <TaskItemReward>();
            rewardText.Add(tR);

            tR.id     = task.taskRewards[i].id;
            tR.amount = task.taskRewards[i].amount.ToString();
            Text id     = a.transform.Find("ID").GetComponent <Text>();
            Text Amount = a.transform.Find("Amount").GetComponent <Text>();
            id.text     = tR.id;
            Amount.text = tR.amount;
        }
    }