コード例 #1
0
    private void OnItemSelected(ListView.ListViewItem item)
    {
        QuestDefine define = ((QuestListItem)item).Define;

        questTitleTxt.text  = define.Name;
        descriptionTxt.text = define.Overview;

        ItemDefine reward = DataManager.Instance.Items[define.RewardItem1];

        if (reward != null)
        {
            itemReword1.sprite = ResManager.Instance.Load <Sprite>(ResManager.ResourceType.Item, reward.Icon);

            reward = DataManager.Instance.Items[define.RewardItem2];
            if (reward != null)
            {
                itemReword2.sprite = ResManager.Instance.Load <Sprite>(ResManager.ResourceType.Item, reward.Icon);

                reward = DataManager.Instance.Items[define.RewardItem3];
                if (reward != null)
                {
                    itemReword3.sprite = ResManager.Instance.Load <Sprite>(ResManager.ResourceType.Item, reward.Icon);
                }
            }
        }

        goldTxt.text = "Gold: " + define.RewardGold.ToString();
        expTxt.text  = "Exp: " + define.RewardExp.ToString();
    }
コード例 #2
0
ファイル: Quest.cs プロジェクト: Milkve/MyGenshinDemo
 //根据服务端给的消息创建
 public Quest(NQuestInfo info, QuestDefine define) : this(define)
 {
     Guid   = info.Guid;
     Status = new BindableProperty <QuestStatus>(info.Status);
     Status.OnValueChange.AddListener(OnStatusChange);
     ReachedTargets = info.Targets.Select(x => new BindableProperty <int>(x)).ToList();
     NpcStatus      = new BindableProperty <NpcQuestStatus>(GetQuestNpcStatus(this));
     NpcStatus.OnValueChange.AddListener(OnNpcStatusChange);
 }
コード例 #3
0
ファイル: Quest.cs プロジェクト: Milkve/MyGenshinDemo
        //根据define创建 仅用于显示 服务端没记录
        public Quest(QuestDefine define)
        {
            Define    = define;
            NpcStatus = new BindableProperty <NpcQuestStatus>(NpcQuestStatus.None);
            Status.OnValueChange.AddListener(OnStatusChange);
            NpcStatus.OnValueChange.AddListener(OnNpcStatusChange);
            NpcStatus.Value = GetQuestNpcStatus(this);

            ReachedTargets = new List <int>()
            {
                0, 0, 0
            }.Select(x => new BindableProperty <int>(x)).ToList();
        }
コード例 #4
0
        public static void Gen()
        {
            DataManager.Instance.Load();
            var quests = DataManager.Instance.Quests;

            //先清空所有后置任务
            foreach (var key in quests.Keys)
            {
                quests[key].PostQuests = null;
            }

            foreach (var key in quests.Keys)
            {
                QuestDefine define = quests[key];
                if (define.PreQuests != null)
                {
                    for (int i = 0; i < define.PreQuests.Count; i++)
                    {
                        int preId = define.PreQuests[i];
                        if (quests.ContainsKey(preId))
                        {
                            if (quests[preId].PostQuests != null)
                            {
                                quests[preId].PostQuests.Add(define.ID);
                            }
                            else
                            {
                                quests[preId].PostQuests = new List <int>()
                                {
                                    define.ID
                                };
                            }
                        }
                    }
                }
            }

            string json = JsonConvert.SerializeObject(DataManager.Instance.Quests, Formatting.Indented);

            File.WriteAllText(SysDefine.PATH_DEFINE_QUEST, json);
            Debug.Log("后置任务生成完毕");
        }
コード例 #5
0
 public Quest(QuestDefine define)
 {
     this.Define = define;
     this.Info   = null;
 }
コード例 #6
0
 public Quest(NQuestInfo info)
 {
     this.Info   = info;
     this.Define = DataManager.Instance.Quests[info.QuestId];
 }
コード例 #7
0
 public void Init(QuestDefine mDefine)
 {
     Define            = mDefine;
     questNameTxt.text = Define.Name;
     Selected          = false;
 }
コード例 #8
0
 public Quest(QuestDefine mDefine)
 {
     Define = mDefine;
 }
コード例 #9
0
 public Quest(NQuestInfo mInfo)
 {
     info   = mInfo;
     Define = DataManager.Instance.Quests[info.QuestId];
 }