コード例 #1
0
 private void HandlerAwardResult(int money, int[] items, int[] nums, ArkCrossEngine.Network.GeneralOperationResult result)
 {
     try
     {
         LogicSystem.EventChannelForGfx.Publish("ge_ui_connect_hint", "ui", false, false);
         if (result == ArkCrossEngine.Network.GeneralOperationResult.LC_Succeed)
         {
             if (m_AudioClipOpenChest != null)
             {
                 NGUITools.PlaySound(m_AudioClipOpenChest);
             }
             List <int> itemList = new List <int>();
             List <int> numList  = new List <int>();
             if (itemList != null && numList != null && items != null && nums != null)
             {
                 for (int i = 0; i < items.Length; ++i)
                 {
                     itemList.Add(items[i]);
                 }
                 for (int i = 0; i < nums.Length; ++i)
                 {
                     numList.Add(nums[i]);
                 }
                 UnityEngine.GameObject goTaskAward = UIManager.Instance.GetWindowGoByName("TaskAward");
                 if (goTaskAward != null)
                 {
                     TaskAward taskAward = goTaskAward.GetComponent <TaskAward>();
                     taskAward.SetAwardForMermanKing(money, 0, 0, itemList, numList, m_CurrentClickIndex);
                 }
             }
             else
             {
                 UnityEngine.GameObject goTaskAward = UIManager.Instance.GetWindowGoByName("TaskAward");
                 if (goTaskAward != null)
                 {
                     TaskAward taskAward = goTaskAward.GetComponent <TaskAward>();
                     taskAward.SetAwardForMermanKing(money, 0, 0, null, null, m_CurrentClickIndex);
                 }
             }
             InitTreasureMap();
             UIManager.Instance.ShowWindowByName("TaskAward");
         }
         else
         {
             string CHN_DESC = StrDictionaryProvider.Instance.GetDictString(454);
             string CHN_CON  = StrDictionaryProvider.Instance.GetDictString(4);
             ArkCrossEngine.LogicSystem.EventChannelForGfx.Publish("ge_show_dialog", "ui", CHN_DESC, CHN_CON, null, null, null, false);
         }
     }
     catch (Exception ex)
     {
         ArkCrossEngine.LogicSystem.LogFromGfx("[Error]:{0},{1}", ex.Message, ex.StackTrace);
     }
 }
コード例 #2
0
 public override void Init()
 {
     string[] Task = TaskPlan.Split('/');
     killNum   = Convert.ToInt32(Task[0]);
     FinishNum = Convert.ToInt32(Task[1]);
     if (State == TaskState.NoStart)
     {
         State = TaskState.Accept;
     }
     string[] Awards = TaskAward.Split('|');
     string[] Award  = Awards[0].Split(':');
     Coin = Convert.ToInt32(Award[1]);
 }
コード例 #3
0
ファイル: TrialShiLian.cs プロジェクト: Klanly/UnityClient
 private void OnAwardResult(int awardIndex, int addMoney, List <int> itemIdList, List <int> itemNumList, ArkCrossEngine.Network.MpveAwardResult result)
 {
     if (result == ArkCrossEngine.Network.MpveAwardResult.Succeed)
     {
         UpdateBoxState();
         //获得奖励的表现
         UnityEngine.GameObject goTaskAward = UIManager.Instance.GetWindowGoByName("TaskAward");
         if (goTaskAward != null)
         {
             TaskAward taskAward = goTaskAward.GetComponent <TaskAward>();
             taskAward.SetAwardForTrial(addMoney, 0, 0, itemIdList, itemNumList);
         }
         UIManager.Instance.ShowWindowByName("TaskAward");
     }
 }
コード例 #4
0
ファイル: GameTask.cs プロジェクト: Klanly/UnityClient
    private void TaskItemClick(UnityEngine.GameObject go)
    {
        if (go != null)
        {
            foreach (int id in finishtask)
            {
                if (taskDic.ContainsKey(id))
                {
                    UnityEngine.GameObject godic = taskDic[id];
                    if (godic != null && godic == go)
                    {
                        // by leeQ
                        UIManager.Instance.ShowWindowByName("TaskAward");
                        UnityEngine.GameObject god = UIManager.Instance.GetWindowGoByName("TaskAward");
                        if (god != null)
                        {
                            TaskAward ta = god.GetComponent <TaskAward>();
                            if (ta != null)
                            {
                                ta.SetAwardProperty(id);
                                ta.InitTaskId(id, TaskCompleteType.T_common);
                            }
                        }
                        ////发送已读消息
                        //ArkCrossEngine.GfxSystem.EventChannelForLogic.Publish("ge_read_finish", "lobby", id);
                        //LogicSystem.EventChannelForGfx.Publish("ge_ui_award_finished", "ui");//通关副本按钮
                        //UIManager.Instance.HideWindowByName("GameTask");
                        //GfxSystem.PublishGfxEvent("ge_ui_connect_hint", "ui", false, true);
                        return;
                    }
                }
            }
        }
        CloseGameTask();

        foreach (int key in taskDic.Keys)
        {
            if (taskDic[key] == go)
            {
                ArkCrossEngine.MissionConfig missionconfig = ArkCrossEngine.LogicSystem.GetMissionDataById(key);
                if (GotoTargetUI(missionconfig))
                {
                    break;
                }
            }
        }
    }
コード例 #5
0
ファイル: OldMan.cs プロジェクト: dachongqing/Assets0.2
    /**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);
    }
コード例 #6
0
    private void initTask(TaskMananger taskMananger, Character chara, BenMonster benMonster)
    {
        TaskAward award = new TaskAward();

        award.setAttriAwards(0, 0, 0, 0);
        string taskDesc = "萝莉侦探似乎看见了什么,突然变得狂暴起来,见人就攻击,能否活着逃离这个空间成了最大的问题。";
        string taskName = "逃出侦探的追杀";
        List <TaskItemInterface> taskItems = new List <TaskItemInterface>();
        KillSomethingTaskItem    cti       = new KillSomethingTaskItem("杀死复活的怪物。");

        cti.setTarget(benMonster);
        KillOrSaveTaskItem cti2 = new KillOrSaveTaskItem("杀死萝莉侦探或者唤醒侦探");

        cti2.setTarget(chara);
        taskItems.Add(cti);
        taskItems.Add(cti2);
        BlackSignTask task = new BlackSignTask(TaskConstant.TASK_STORY_CODE_01, TaskConstant.TASK_TYPE_02, award, null, taskDesc, TaskConstant.TASK_NPC_CODE_STORY, null, taskItems,
                                               taskName, TaskConstant.STATUS_INIT);

        taskMananger.regisisterStoryTask(task);
    }
コード例 #7
0
 public void PlayDuang(TaskAward taskAward)
 {
     ToolsFacade.Instance.GetRewards_WriteInModels(taskAward.equipmentList, taskAward.heroList, taskAward.itemList, taskAward.repeatList, null);
 }
コード例 #8
0
ファイル: GameTask.cs プロジェクト: Klanly/UnityClient
    private void GetTaskIdAndOperator(int id, ArkCrossEngine.MissionOperationType oper, string schedule)
    {
        try
        {
            ArkCrossEngine.MissionConfig missionconfig = ArkCrossEngine.LogicSystem.GetMissionDataById(id);
            ArkCrossEngine.RoleInfo      ri            = ArkCrossEngine.LobbyClient.Instance.CurrentRole;
            if (missionconfig != null && ri != null && ri.Level < missionconfig.LevelLimit)
            {
                return;
            }
            switch (oper)
            {
            case ArkCrossEngine.MissionOperationType.ADD:
                AddTask(id, schedule);
                break;

            case ArkCrossEngine.MissionOperationType.FINISH:
                if (!finishtask.Contains(id))
                {
                    if (!taskDic.ContainsKey(id))
                    {
                        AddTask(id, schedule);
                    }
                    else
                    {
                        SetTaskInfo(taskDic[id], id, schedule);
                    }

                    UnityEngine.Transform tf = taskDic[id].transform.Find("New");
                    if (tf != null)
                    {
                        UISprite us = tf.gameObject.GetComponent <UISprite>();
                        if (us != null)
                        {
                            us.spriteName = "lingj";
                        }
                    }
                    tf = taskDic[id].transform.Find("Schedule");
                    if (tf != null)
                    {
                        NGUITools.SetActive(tf.gameObject, false);
                    }
                    finishtask.Add(id);
                }
                if (missionconfig.MissionType == 1)
                {
                    UIManager.Instance.ShowWindowByName("TaskAward");
                    UnityEngine.GameObject god = UIManager.Instance.GetWindowGoByName("TaskAward");
                    if (god != null)
                    {
                        TaskAward ta = god.GetComponent <TaskAward>();
                        if (ta != null)
                        {
                            ta.SetAwardProperty(id);
                            ta.InitTaskId(id, TaskCompleteType.T_common);
                        }
                    }
                }
                break;

            case ArkCrossEngine.MissionOperationType.DELETE:
                DeleteTask(id);
                if (missionconfig.MissionType == 1)
                {
                    UnityEngine.GameObject go = UIManager.Instance.GetWindowGoByName("TaskAward");
                    if (!NGUITools.GetActive(go))
                    {
                        if (go != null)
                        {
                            TaskAward ta = go.GetComponent <TaskAward>();
                            if (ta != null && ta.TaskId != id)
                            {
                                ta.SetAwardProperty(id);
                                UIManager.Instance.HideWindowByName("GameTask");
                                UIManager.Instance.ShowWindowByName("TaskAward");
                            }
                        }
                    }
                    else
                    {
                        TaskAward ta = go.GetComponent <TaskAward>();
                        if (ta.TaskId != id)
                        {
                            awardtask.Add(id);
                        }
                    }
                }
                break;

            case ArkCrossEngine.MissionOperationType.UPDATA:
                break;

            default:
                break;
            }
            CheckHasFinish();
        }
        catch (Exception ex)
        {
            ArkCrossEngine.LogicSystem.LogFromGfx("[Error]:Exception:{0}\n{1}", ex.Message, ex.StackTrace);
        }
    }
コード例 #9
0
ファイル: TaskMananger.cs プロジェクト: dachongqing/Assets0.2
    // 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");
            }
        }
    }