private void Refresh(bool isLeft)
        {
            for (int i = 0; i < m_Count; i++)
            {
                m_LevelViewList[i].gameObject.SetActive(true);
            }
            if (isLeft)
            {
                m_Index -= m_Count;
                if (m_Index <= 1)
                {
                    m_Index = 1;
                    m_BtnLeft.gameObject.SetActive(false);
                }
                if (m_Index < m_MaxLevel - m_Count)
                {
                    m_BtnRight.gameObject.SetActive(true);
                }
                else
                {
                    m_BtnRight.gameObject.SetActive(false);
                }
            }
            else
            {
                m_Index += m_Count;
                if (m_Index >= m_MaxLevel - m_Count)
                {
                    m_BtnRight.gameObject.SetActive(false);
                }
                m_BtnLeft.gameObject.SetActive(true);
            }
            int end   = m_Index + m_Count;
            int index = 0;

            for (int i = m_Index; i < end; i++)
            {
                if (i <= m_MaxLevel)
                {
                    DataTransfer data = new DataTransfer();
                    data.SetData <int>(ConstDefine.GameLevelItem_Level, i);
                    if (i <= m_MaxPassLevel)
                    {
                        data.SetData <bool>(ConstDefine.GameLevelItem_IsLock, false);
                    }
                    else
                    {
                        data.SetData <bool>(ConstDefine.GameLevelItem_IsLock, true);
                    }
                    m_LevelViewList[index].SetUI(data);
                }
                else
                {
                    m_LevelViewList[index].gameObject.SetActive(false);
                }

                index++;
            }
            Animation();
        }
Exemplo n.º 2
0
        public void SetUI(DataTransfer data)
        {
            m_LevelList = new List <Transform>();
            int maxPassLevel = data.GetData <int>(ConstDefine.MaxPassLevel);
            int maxLevel     = data.GetData <int>(ConstDefine.MaxLevel);

            for (int i = 0; i < maxLevel; i++)
            {
                //item
                GameObject go = ResourcesMrg.Instance.Load(ResourcesMrg.ResourceType.UIWindowChild, "GameLevelItem", isCache: true);
                go.transform.SetParent(m_Grid);
                DataTransfer d = new DataTransfer();
                d.SetData(ConstDefine.GameLevelItem_Level, i + 1);
                if (i + 1 <= maxPassLevel)
                {
                    d.SetData(ConstDefine.GameLevelItem_IsLock, false);
                }
                else
                {
                    d.SetData(ConstDefine.GameLevelItem_IsLock, true);
                }
                UIGameLevelItemView itemView = go.GetComponent <UIGameLevelItemView>();
                itemView.OnClickBtn     = OnClickGameLevelItemBtn;
                go.transform.localScale = Vector3.one;
                itemView.SetUI(d);
                m_LevelList.Add(go.transform);


                m_LastLevel = go.transform;
            }

            StartCoroutine("CreateLine", maxLevel);
        }
        /// <summary>
        /// 打开游戏关卡选择
        /// </summary>
        private void OpenGameLevelSelestView()
        {
            m_GameLevelSelectView = UIViewUtil.Instance.OpenWindow(UIViewType.GameLevelSelect).GetComponent <UIGameLevelSelectView>();
            DataTransfer data = new DataTransfer();

            data.SetData(ConstDefine.MaxPassLevel, Global.Instance.MaxPassLevel);
            data.SetData(ConstDefine.MaxLevel, GameLevelDBModel.Instance.GetLevelCount());
            m_GameLevelSelectView.SetUI(data);
        }
Exemplo n.º 4
0
        private void OpenSelectLevelView()
        {
            GameObject go = UIViewUtil.Instance.OpenWindow(UIViewType.SelectLevel);

            if (go != null)
            {
                //UILevelSelectView view = go.GetComponent<UILevelSelectView>();
                DataTransfer data = new DataTransfer();
                data.SetData(ConstDefine.MaxLevel, Global.GameLevelInfo.MaxLevel);
                data.SetData(ConstDefine.MaxCanPlay, Global.GameLevelInfo.MaxCanPlay);
                //view.SetUI(data);
            }
        }
        public void SetWorldMap(int grade)
        {
            m_CurMapGrade = grade;
            UIMainSceneView view = (UIMainSceneView)UISceneCtrl.Instance.CurrentUIScene;

            if (view == null)
            {
                return;
            }
            DataTransfer           data            = new DataTransfer();
            List <DataTransfer>    datas           = new List <DataTransfer>();
            List <GameLevelEntity> levelEntityList = GameLevelDBModel.Instance.GetList();
            int maxCanPlayGameLevelId = SimulatedDatabase.Instance.GetMaxCanPlayGameLevel(grade);

            data.SetData(ConstDefine.UI_WorldMap_MaxCanPlayGameLevelId, maxCanPlayGameLevelId);
            for (int i = 0; i < levelEntityList.Count; i++)
            {
                int      id        = levelEntityList[i].Id;
                string   name      = levelEntityList[i].Name;
                string   icon      = levelEntityList[i].Ico;
                string[] posStrArr = levelEntityList[i].Pos.Split('_');
                Vector2  pos       = Vector2.zero;
                pos.x = posStrArr[0].ToFloat();
                pos.y = posStrArr[1].ToFloat();
                DataTransfer d = new DataTransfer();
                d.SetData(ConstDefine.UI_WorldMap_LevelId, id);
                d.SetData(ConstDefine.UI_WorldMap_LevelGrade, grade);
                d.SetData(ConstDefine.UI_WorldMap_LevelName, name);
                d.SetData(ConstDefine.UI_WorldMap_LevelIcon, icon);
                d.SetData(ConstDefine.UI_WorldMap_LevelPos, pos);
                if (maxCanPlayGameLevelId == -1001)//未通关上一难度
                {
                    d.SetData(ConstDefine.UI_WorldMap_CanPlay, false);
                }
                else
                {
                    if (id <= maxCanPlayGameLevelId)//关卡ID升序
                    {
                        d.SetData(ConstDefine.UI_WorldMap_CanPlay, true);
                    }
                    else
                    {
                        d.SetData(ConstDefine.UI_WorldMap_CanPlay, false);
                    }
                }

                datas.Add(d);
            }
            data.SetData(ConstDefine.UI_WorldMap_Content, datas);
            view.SetWorldMap(data);
        }
Exemplo n.º 6
0
        private void SetShopUI()
        {
            DataTransfer data = new DataTransfer();

            //拥有的英雄
            data.SetData(ConstDefine.Has_Job, Global.Instance.UserInfo.JobList);
            //当前的英雄
            data.SetData(ConstDefine.Cur_Job, Global.Instance.UserInfo.CurJob);
            //拥有的金币
            data.SetData(ConstDefine.Has_Coin, Global.Instance.UserInfo.Coin);
            m_ShopView.SetUI(data);

            AddEventListen(ConstDefine.InitScene_ShopWindow_Buy, OnClikBuyJob);
        }
        private void OpenTaskView()
        {
            GameObject go = UIViewUtil.Instance.OpenWindow(UIViewType.TaskView);

            m_TaskView = go.GetComponent <UITaskView>();
            DataTransfer        data  = new DataTransfer();
            List <DataTransfer> datas = new List <DataTransfer>();
            List <PlayerInfo.SimpleTaskInfo> taskList = SimulatedDatabase.Instance.GetAllEveryDayTask();

            for (int i = 0; i < taskList.Count; i++)
            {
                DataTransfer d          = new DataTransfer();
                int          taskId     = taskList[i].TaskId;
                TaskEntity   taskEntity = TaskDBModel.Instance.Get(taskId);
                if (taskEntity == null)
                {
                    Debug.LogError("错误:任务实体找不到");
                    continue;
                }
                d.SetData(ConstDefine.UI_Task_Id, taskId);
                d.SetData(ConstDefine.UI_TaskItem_Name, taskEntity.Name);
                d.SetData(ConstDefine.UI_TaskItem_Desc, taskEntity.Desc);
                int targetCount = taskEntity.GetTaskConditionEntityList()[0].TargetCount;//本项目有且只有一个条件
                d.SetData(ConstDefine.UI_TaskItem_TargetCount, targetCount);
                d.SetData(ConstDefine.UI_TaskItem_CurCount, taskList[i].ConditionInfoList[0].CurCount);
                d.SetData(ConstDefine.UI_TaskItem_GetReward, taskList[i].GetReward);
                datas.Add(d);
            }
            data.SetData(ConstDefine.UI_Task_Content, datas);
            m_TaskView.SetUI(data);
        }
Exemplo n.º 8
0
        private void OpenGameLevelFail()
        {
            GameObject go = UIViewUtil.Instance.OpenWindow(UIViewType.GameLevelFail);

            m_FailView = go.GetComponent <UIGameLevelFailView>();
            DataTransfer data = new DataTransfer();

            data.SetData(ConstDefine.MusicStatus, Global.Instance.IsPlaySound);
            m_FailView.SetUI(data);
        }
        private void OpenAllHeroView()
        {
            GameObject go = UIViewUtil.Instance.OpenWindow(UIViewType.AllHeroView);

            m_AllHeroView = go.GetComponent <UIAllHeroView>();
            DataTransfer        data  = new DataTransfer();
            List <DataTransfer> datas = new List <DataTransfer>();
            List <HeroInfo>     infos = Global.HeroInfoList;

            for (int i = 0; i < infos.Count; i++)
            {
                DataTransfer d = new DataTransfer();
                d.SetData(ConstDefine.UI_AllHero_RoleId, infos[i].RoleId);
                d.SetData(ConstDefine.UI_AllHero_HeroStar, infos[i].HeroStar);
                d.SetData(ConstDefine.UI_AllHero_HeroName, infos[i].RoleNickName);
                RoleInfoSkill skillInfo = infos[i].SkillList[0];//只能一个
                if (skillInfo == null)
                {
                    Debug.LogError("错误:这个英雄没有技能,或者没装载技能");
                    continue;
                }
                SkillEntity skillEntity = SkillDBModel.Instance.Get(skillInfo.SkillId);
                if (skillEntity == null)
                {
                    Debug.LogError("错误:找不到技能实体");
                    continue;
                }
                string skillIcon = Global.Instance.GetSkillIconByRanggeAndType(skillEntity.AttackRange, skillEntity.AttackArea);

                d.SetData(ConstDefine.UI_AllHero_HeroSkillICon, skillIcon);
                HeroEntity heroEntity = HeroDBModel.Instance.Get(infos[i].HeroID);
                if (heroEntity == null)
                {
                    Debug.LogError("错误:找不到英雄实体");
                    continue;
                }
                d.SetData(ConstDefine.UI_AllHero_HeroHead, heroEntity.HeadPic);
                datas.Add(d);
            }
            data.SetData(ConstDefine.UI_AllHero_Content, datas);
            m_AllHeroView.SetUI(data);
        }
Exemplo n.º 10
0
        protected override void OnStart()
        {
            UIGameLevelSelectSceneView view = UISceneCtrl.Instance.Load(UISceneType.GameLevelSelect).GetComponent <UIGameLevelSelectSceneView>();
            DataTransfer data = new DataTransfer();

            data.SetData(ConstDefine.MusicStatus, Global.Instance.IsPlaySound);
            view.SetUI(data);
            ChangeSceneCtrl.Instance.Show(ChangeSceneType.Open, null);
            //Global.Instance.SetMusic();
            UIDispatcher.Instance.AddEventListen(ConstDefine.SceneGameLevelSelectViewClickReturnBtn, OnClickReturnBtn);
        }
        protected override void OnStart()
        {
            base.OnStart();
            UIInitSceneView view = UISceneCtrl.Instance.Load(UISceneType.Init).GetComponent <UIInitSceneView>();
            DataTransfer    data = new DataTransfer();

            data.SetData(ConstDefine.MusicStatus, Global.Instance.IsPlaySound);
            view.SetUI(data);
            if (Global.Instance.IsFirstEnterGame)
            {
                Global.Instance.IsFirstEnterGame = false;
            }
            else
            {
                ChangeSceneCtrl.Instance.Show(ChangeSceneType.Open, null);
            }
            UIDispatcher.Instance.AddEventListen(ConstDefine.SceneInitSceneViewClickStartGameBtn, OnInitSceneViewClickStartGameBtn);
            //Global.Instance.SetMusic();
        }
Exemplo n.º 12
0
        private DataTransfer GetHeroInfoData(long roldID)
        {
            long       roleId = roldID;
            GameObject go     = UIViewUtil.Instance.OpenWindow(UIViewType.HeroInfoView);

            m_HeroInfoView = go.GetComponent <UIHeroInfoView>();
            if (m_HeroInfoView == null)
            {
                Debug.LogError("错误:没有这个界面");
                return(null);
            }
            HeroInfo heroInfo = Global.HeroInfoList.Find(x => x.RoleId == roleId);

            if (heroInfo == null)
            {
                Debug.LogError("错误:没有英雄信息");
                return(null);
            }
            HeroEntity heroEntity = HeroDBModel.Instance.Get(heroInfo.HeroID);

            if (heroEntity == null)
            {
                Debug.LogError("错误:找不到英雄实体");
                return(null);
            }
            string heroName    = heroInfo.RoleNickName;
            int    heroStar    = heroInfo.HeroStar;
            int    heroQuality = heroEntity.Quality;
            int    heroLevel   = SimulatedDatabase.Instance.GetLevel();
            int    hp          = heroInfo.MaxHP;
            int    mgicAtk     = heroInfo.MgicAtk;
            int    phyAtk      = heroInfo.PhyAtk;
            int    cri         = heroInfo.Cri;
            float  criValue    = heroInfo.CriValue;
            int    phyDef      = heroInfo.PhyDef;
            int    mgicDef     = heroInfo.MgicDef;

            DataTransfer data = new DataTransfer();

            data.SetData(ConstDefine.UI_HeroInfo_RoleId, roleId);
            data.SetData(ConstDefine.UI_HeroInfo_HeroName, heroName);
            data.SetData(ConstDefine.UI_HeroInfo_HeroStar, heroStar);
            data.SetData(ConstDefine.UI_HeroInfo_HeroQuality, heroQuality);
            data.SetData(ConstDefine.UI_HeroInfo_HeroLevel, heroLevel);

            data.SetData(ConstDefine.UI_HeroInfo_HeroHp, hp);
            data.SetData(ConstDefine.UI_HeroInfo_MgicAtk, mgicAtk);
            data.SetData(ConstDefine.UI_HeroInfo_PhyAtk, phyAtk);
            data.SetData(ConstDefine.UI_HeroInfo_Cri, cri);
            data.SetData(ConstDefine.UI_HeroInfo_CriValue, criValue);
            data.SetData(ConstDefine.UI_HeroInfo_PhyDef, phyDef);
            data.SetData(ConstDefine.UI_HeroInfo_MgicDef, mgicDef);

            List <DataTransfer> skillDatas = new List <DataTransfer>();

            for (int i = 0; i < heroInfo.SkillList.Count; i++)
            {
                DataTransfer skillData   = new DataTransfer();
                SkillEntity  skillEntity = SkillDBModel.Instance.Get(heroInfo.SkillList[i].SkillId);
                skillData.SetData(ConstDefine.UI_HeroInfo_SkillName, skillEntity.SkillName);
                string skillIcno = Global.Instance.GetSkillIconByRanggeAndType(skillEntity.AttackRange, skillEntity.AttackArea);
                skillData.SetData(ConstDefine.UI_HeroInfo_SkillIcon, skillIcno);
                skillData.SetData(ConstDefine.UI_HeroInfo_SkillDesc, skillEntity.SkillDesc);
                skillDatas.Add(skillData);
            }
            data.SetData(ConstDefine.UI_HeroInfo_SkillContent, skillDatas);

            HeroStarEntity heroStarEntity = HeroStarDBModel.Instance.GetList().Find((x) => x.Star == heroStar);

            data.SetData(ConstDefine.UI_HeroInfo_NeedDebris, heroStarEntity.NeedHeroDebris);
            data.SetData(ConstDefine.UI_HeroInfo_OwnedDebris, SimulatedDatabase.Instance.GetDebris());
            return(data);
        }
Exemplo n.º 13
0
        //显示英雄简介
        private void ShowHeroIntro(long roleId)
        {
            if (m_HeroIntroView == null)
            {
                GameObject go = ResourcesMrg.Instance.Load(ResourcesMrg.ResourceType.UIWindowChild, "HeroIntro");
                m_HeroIntroView = go.GetComponent <UIHeroIntroView>();
                go.transform.SetParent(UISceneCtrl.Instance.CurrentUIScene.MainCanvans.transform);
                go.transform.localScale    = Vector3.one;
                go.transform.localPosition = Vector3.zero;
            }
            m_HeroIntroView.gameObject.SetActive(true);
            DataTransfer data     = new DataTransfer();
            HeroInfo     heroInfo = Global.HeroInfoList.Find(x => x.RoleId == roleId);

            if (heroInfo != null)
            {
                if (heroInfo != null)
                {
                    HeroEntity heroEntity = HeroDBModel.Instance.Get(heroInfo.HeroID);
                    data.SetData <string>("HeroName", heroEntity.Name);
                    data.SetData <string>("HeroDesc", heroEntity.Desc);
                    for (int i = 0; i < heroInfo.SkillList.Count; i++)
                    {
                        SkillEntity skill1Entity = SkillDBModel.Instance.Get(heroInfo.SkillList[i].SkillId);
                        data.SetData <string>("Skill" + (i + 1) + "Name", skill1Entity.SkillName);
                        data.SetData <string>("Skill" + (i + 1) + "Desc", skill1Entity.SkillDesc);
                    }
                }
            }
            else
            {
                //敌人
                RoleInfoBase monsterInfo = GameSceneCtrl.Instance.MonsterList.Find(x => x.CurRoleInfo.RoleId == roleId).CurRoleInfo;
                if (monsterInfo != null)
                {
                    SpriteEntity spriteEntity = SpriteDBModel.Instance.GetList().Find(x => x == ((MonsterInfo)monsterInfo).SpriteEntity);
                    if (spriteEntity == null)
                    {
                        Debug.LogError("错误:找不到精灵实体,请查看是否有没有赋值,或者GameSceneCtrl的MonsterList 移除,添加出错了");
                        return;
                    }
                    else
                    {
                        data.SetData <string>("HeroName", spriteEntity.Name);
                        data.SetData <string>("HeroDesc", "");
                        for (int j = 0; j < ((MonsterInfo)monsterInfo).GetSkillList().Count; j++)
                        {
                            SkillEntity skill1Entity = SkillDBModel.Instance.Get(((MonsterInfo)monsterInfo).GetSkillList()[j]);
                            data.SetData <string>("Skill" + (j + 1) + "Name", skill1Entity.SkillName);
                            data.SetData <string>("Skill" + (j + 1) + "Desc", skill1Entity.SkillDesc);
                        }
                    }
                }
                else
                {
                    Debug.Log("错误:没找到英雄信息");
                    return;
                }
            }
            m_HeroIntroView.SetUI(data);
        }