コード例 #1
0
        /// <summary>
        /// 完成事件
        /// </summary>
        /// <param name="item"></param>
        public void OnRandomEventFinish(UI.RandomEventDialogItem item)
        {
            ///Trigger
            var configData = ExploreModule.GetExploreEventConfigData(item.EventID);

            if (configData != null)
            {
                var setFlagDic = configData.effect.SetFlag;
                if (setFlagDic != null)
                {
                    foreach (var setFlag in setFlagDic)
                    {
                        GlobalEventManager.Instance.AddGlobalFlag(new GlobalFlagItem(
                                                                      setFlag.Key, Utility.TryParseInt(setFlag.Value)));
                    }
                }

                var removeFlagDic = configData.effect.RemoveFlag;
                if (removeFlagDic != null)
                {
                    foreach (var removeFlag in removeFlagDic)
                    {
                        GlobalEventManager.Instance.RemoveGlobalFlag(removeFlag);
                    }
                }
            }

            if (!_finishedEventItemDic.ContainsKey(item.EventID))
            {
                _finishedEventItemDic.Add(item.EventID, item);
            }
        }
コード例 #2
0
ファイル: EventChooseBtn.cs プロジェクト: EpicProj/RPG
        public void InitBtn(UI.RandomEventDialogItem item,int chooseID)
        {
            eventItem = item;
            var exploreChooseItem = item.itemList.Find(x => x.ChooseID == chooseID);
            if (exploreChooseItem != null)
            {
                chooseItem = exploreChooseItem;
                _content.text = exploreChooseItem.content;
                _btn.onClick.RemoveAllListeners();
                _btn.onClick.AddListener(() =>
                {
                    AudioManager.Instance.PlaySound(AudioClipPath.UISound.Button_Click);

                    ///Reward
                    GlobalEventManager.Instance.HandleRewardDataItem(exploreChooseItem.rewardID);
                    ExploreEventManager.Instance.OnRandomEventFinish(item);

                    if (exploreChooseItem.nextEvent != 0)
                    {
                        if (ExploreModule.GetExploreEventDataByKey(exploreChooseItem.nextEvent) != null)
                        {
                            UIGuide.Instance.ShowRandomEventDialog(exploreChooseItem.nextEvent,item.AreaID,item.ExploreID, item.PointID);
                        }
                    }
                    else
                    {
                        ExploreEventManager.Instance.FinishExplorePoint(item.AreaID,item.ExploreID,item.PointID);
                        UIManager.Instance.HideWnd(UIPath.WindowPath.RandomEvent_Dialog);
                    }
                });
            }
        }
コード例 #3
0
 public override void OnShow(params object[] paralist)
 {
     base.OnShow(paralist);
     _item = (RandomEventDialogItem)paralist[0];
     SetUpDialog();
     if (_anim != null)
     {
         _anim.Play();
     }
     if (_typeEffect != null)
     {
         _typeEffect.StartEffect();
     }
 }
コード例 #4
0
ファイル: UIGuide.cs プロジェクト: EpicProj/RPG
 ///Random Event
 public void ShowRandomEventDialog(int eventID, int areaID, int exploreID, int pointID)
 {
     UIManager.Instance.Register <UI.RandomEventDialogContext>(UIPath.WindowPath.RandomEvent_Dialog);
     UI.RandomEventDialogItem item = new UI.RandomEventDialogItem(eventID, areaID, exploreID, pointID);
     UIManager.Instance.PopUpWnd(UIPath.WindowPath.RandomEvent_Dialog, WindowType.Dialog, true, item);
 }
コード例 #5
0
 public override void Awake(params object[] paralist)
 {
     base.Awake(paralist);
     _item = (RandomEventDialogItem)paralist[0];
 }