Ejemplo n.º 1
0
    /**void OnCollisionEnter2D(Collision2D coll)
     * {
     *  Debug.Log(coll.gameObject.name);
     *  if (coll.gameObject.name == "Player")
     *  {
     *      if (this.task.getTaskStatus() == TaskConstant.STATUS_INIT) {
     *          string[] beginContent = new string[] {"年轻人,我这里有一个宝贝,你想要吗?",
     *              "这个宝贝的来历可大了,听我慢慢道来。。。。",
     *              "咳咳咳,人老了,肺不行了,我需要补肺丸,年轻人,你能帮忙我买瓶补肺丸吗?"};
     *          duiHuaUImanager.showDuiHua(this.getLiHuiURL(),beginContent,0);
     *          showConfirm = true;
     *      } else if (this.task.getTaskStatus() == TaskConstant.STATUS_BEGIN) {
     *
     *          if (this.taskMananger.checkTaskDone(this.task)) {
     *              string[] beginContent = new string[] {"好人啊!, 。。嗯。。好的了",
     *                  "我其实是个牧师, 擅长祈祷,来, 我先给祈祷一下。。。"
     *                  };
     *              duiHuaUImanager.showDuiHua(this.getLiHuiURL(), beginContent, 0);
     *              this.task.getTaskAwards().executeAwards();
     *              this.task.setTaskStatus(TaskConstant.STATUS_END);
     *              this.taskMananger.removeTask(this.task);
     *              this.taskMananger.UpdateHistoryTask(this.task);
     *          }
     *          else
     *          {
     *              string[] beginContent = new string[] {"年轻人。。这个宝贝是这样来的。。。。",
     *                  "咳咳咳。。。。",
     *                  "咳咳咳。。。。血。。血都出来了。。。医生!"};
     *              duiHuaUImanager.showDuiHua(this.getLiHuiURL(), beginContent, 0);
     *          }
     *      } else if (this.task.getTaskStatus() == TaskConstant.STATUS_END) {
     *          string[] beginContent = new string[] {"好多了。。我说道那里了? ",
     *              "哎。。这记忆力不行了啊,,,",
     *              "你是谁?。。赶紧离我远点。。我有传染病!"};
     *          duiHuaUImanager.showDuiHua(this.getLiHuiURL(), beginContent, 0);
     *      }
     *      else if (this.task.getTaskStatus() == TaskConstant.STATUS_INDALID)
     *      {
     *          string[] beginContent = new string[] {"安静!。。安静!。。老人家要多休息。"};
     *          duiHuaUImanager.showDuiHua(this.getLiHuiURL(), beginContent, 0);
     *      }
     *
     *
     *  }
     * }
     **/


    private void initTask()
    {
        TaskAward award = new TaskAward();

        award.setAttriAwards(1, 1, 1, 1);
        string taskDesc = "我有些咳嗽,能找些药给我吗?";
        string taskName = "我是雷锋";
        List <TaskItemInterface> taskItems = new List <TaskItemInterface>();
        FindSomethingTaskItem    cti       = new FindSomethingTaskItem("找到一瓶蓝色的药水。");

        cti.setTargetItem(ItemConstant.ITEM_CODE_POTION_10001);
        FindSomethingTaskItem cti2 = new FindSomethingTaskItem("找到一瓶红色的药水。");

        cti.setTargetItem(ItemConstant.ITEM_CODE_POTION_00001);
        taskItems.Add(cti);
        taskItems.Add(cti2);
        this.task = new FindSometingTask(TaskConstant.TASK_CODE_01, TaskConstant.TASK_TYPE_01, award, null, taskDesc, npcCode, null, taskItems,
                                         taskName, TaskConstant.STATUS_INIT);
    }
Ejemplo n.º 2
0
 internal void removeTask(FindSometingTask task)
 {
     this.regisitedTasks.Remove(task);
 }
Ejemplo n.º 3
0
    // Use this for initialization
    void Start()
    {
        if (!this.neworLoad)
        {
            string   datapath = Application.persistentDataPath + "/Save/SaveData0.sav";
            SaveData data     = (SaveData)IOHelper.GetData(datapath, typeof(SaveData));

            if (data.Tasks.Count > 0)
            {
                foreach (TaskInfo ti in data.Tasks)
                {
                    TaskAward award = new TaskAward();
                    award.setAttriAwards(ti.AwardAttr[0], ti.AwardAttr[1], ti.AwardAttr[2], ti.AwardAttr[3]);
                    List <Item> awardsItems = new List <Item>();
                    foreach (ItemInfo item in ti.Items)
                    {
                        if (item.Type == ItemConstant.ITEM_TYPE_POTION)
                        {
                            awardsItems.Add(new ItemPotion(item.Code, item.Name, item.Desc));
                        }
                    }
                    List <TaskItemInterface> taskItems = new List <TaskItemInterface>();
                    foreach (TaskItemInfo itemInfo in ti.TaskItems)
                    {
                        if (itemInfo.ItemCode == TaskConstant.TASK_ITEM_CODE_SAVEORKILL)
                        {
                            taskItems.Add(new KillOrSaveTaskItem(itemInfo.ItemDesc));
                        }
                        else if (itemInfo.ItemCode == TaskConstant.TASK_ITEM_CODE_KILL)
                        {
                            taskItems.Add(new KillSomethingTaskItem(itemInfo.ItemDesc));
                        }
                        else if (itemInfo.ItemCode == TaskConstant.TASK_ITEM_CODE_FIND)
                        {
                            taskItems.Add(new FindSomethingTaskItem(itemInfo.ItemDesc));
                        }
                    }


                    award.setItemAwards(awardsItems);
                    if (ti.TaskType == TaskConstant.TASK_TYPE_01)
                    {
                        FindSometingTask ft = new FindSometingTask(ti.TaskCode, ti.TaskType, award, null, ti.TaskDesc, ti.TaskDistrubtor,
                                                                   ti.TaskOwner, taskItems, ti.TaskName, ti.TaskStatus);
                        this.regisisterTask(ft);
                    }
                    else if (ti.TaskType == TaskConstant.TASK_TYPE_02)
                    {
                        if (ti.TaskCode == TaskConstant.TASK_STORY_CODE_01)
                        {
                            BlackSignTask ft = new BlackSignTask(ti.TaskCode, ti.TaskType, award, null, ti.TaskDesc, ti.TaskDistrubtor,
                                                                 ti.TaskOwner, taskItems, ti.TaskName, ti.TaskStatus);
                            this.regisisterStoryTask(ft);
                        }
                    }
                }
            }
            else
            {
                Debug.Log("no task loaded");
            }
        }
    }