少年修仙传客户端代码仓库
client_Wu Xijin
2018-08-24 41ff6b87a11c57a0a880784a2d9a5365bb80a7d6
System/MainInterfacePanel/MainInterfaceWin.cs
@@ -98,13 +98,11 @@
        [SerializeField] TeamInvitationEntrance m_TeamInvitationEntrance;
        #region
        private float switcherTime = 0;//主界面自动切换时间
        private int mapId = 0;
        public delegate void OnChatCallback();//聊天回调
        public static event OnChatCallback Event_ChatCallback;
        public delegate void OnDuplicates(bool _bool, float _speed);
        public static event OnDuplicates Event_Duplicates;
        public static event Action<bool> SitEvent;//关于打坐的回调
        #endregion
        private List<int> ListBossMapId = new List<int>();//用于boss区域地图id
@@ -139,10 +137,8 @@
        #region Built-in
        protected override void BindController()
        {
            switcherTime = int.Parse(Config.Instance.Get<FuncConfigConfig>("AutomaticSwitch").Numerical1);
            recordPositionBool = true;
            m_TaskAndTeamPanel.localPosition = TaskListTipAnchor1.localPosition;
            // m_LowSettingTipGroup.localPosition = m_position2_L.localPosition;
            m_CastSkillTip.localPosition = m_position1_S.localPosition;
            m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, 0);
            m_MailObj.SetActive(true);
@@ -206,7 +202,6 @@
            CheckChatTipOpen();
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += Updatefighting;
            FunctionUnlockFlyObject.functionUnLockShowBeginEvent += UnFlodFunctionArea;
            CoroutineMgr.Instance.MaininterCDTimeEvent += OnMaininterCDTime;
            fairyModel.UpdateFairyRequestEvent += UpdateFairyRequest;
            GA_Hero.OnEnterOrExitArea += OnEnterOrExitArea;
            NewBieCenter.Instance.guideBeginEvent += OnGuideBegin;
@@ -243,8 +238,7 @@
        }
        protected override void OnAfterOpen()
        {
            bool IsSitBool = PlayerDatas.Instance.hero != null && MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Dazuo);//是否在打坐区域
        {
            bool IsBossBool = PlayerDatas.Instance.hero != null && MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域
            if (onMainModel.IsDead || (onMainModel.IsBossAreaTask && !IsBossBool))
            {
@@ -317,7 +311,7 @@
                }
                else
                {
                    if (!IsSitBool && !IsBossBool)
                    if (!IsBossBool)
                    {
                        CopyOfThePanel.localPosition = CopyOfThePosition1.localPosition;
                        CopyOfThePositionBool = true;
@@ -359,7 +353,6 @@
            horseRidBool = false;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting;
            FunctionUnlockFlyObject.functionUnLockShowBeginEvent -= UnFlodFunctionArea;
            CoroutineMgr.Instance.MaininterCDTimeEvent -= OnMaininterCDTime;
            fairyModel.UpdateFairyRequestEvent -= UpdateFairyRequest;
            GA_Hero.OnEnterOrExitArea -= OnEnterOrExitArea;
            NewBieCenter.Instance.guideBeginEvent -= OnGuideBegin;
@@ -493,10 +486,6 @@
                    TaskSwithButton();
                    onMainModel.IsBossAreaTask = true;
                }
                if (_areaType == MapArea.E_Type.Dazuo && _enter && SitEvent != null)
                {
                    SitEvent(true);
                }
                if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) < 5)
                {
                    if (NewBieCenter.Instance.inGuiding)
@@ -529,11 +518,6 @@
                    }
                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                    m_BossBriefInfos.Unfold(false);
                    if (SitEvent != null)
                    {
                        SitEvent(false);
                    }
                }
            }
        }
@@ -664,47 +648,35 @@
            var inDungeon = IsDungeon();
            bool IsBossBool = PlayerDatas.Instance.hero == null ? false : MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域
            bool IsSitBool = PlayerDatas.Instance.hero == null ? false : MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Dazuo);//是否在打坐区域
            var isNeutralMap = GeneralConfig.Instance.neutralMaps.Contains(PlayerDatas.Instance.baseData.MapID);
            if (!recordPositionBool)
            {
                if (inDungeon || IsBossBool || IsSitBool || isNeutralMap)
                {
                    if (IsSitBool && SitEvent != null)
                    {
                        SitEvent(true);
                    }
                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                if (inDungeon || IsBossBool || isNeutralMap)
                {
                    if (IsCopyOfThePanel != null)
                    {
                        IsCopyOfThePanel(false);
                    }
                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
                    m_BossBriefInfos.Unfold(false);
                    if (Event_Duplicates != null && inDungeon)
                    {
                        Event_Duplicates(false, CopyOfThePanelSpeed);
                    }
                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
                    m_BossBriefInfos.Unfold(false);
                }
                if (!IsBossBool && !IsSitBool)
                if (!IsBossBool)
                {
                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
                    {
                        CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
                    {
                        if (IsCopyOfThePanel != null)
                        {
                            IsCopyOfThePanel(true);
                        }
                        CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                        m_BossBriefInfos.Unfold(false);
                        if (SitEvent != null)
                        {
                            SitEvent(false);
                        }
                    }
                }
                m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
@@ -763,17 +735,12 @@
        {
            var inDungeon = IsDungeon();
            bool IsBossBool = MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);
            bool IsSitBool = MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Dazuo);
            var isNeutralMap = GeneralConfig.Instance.neutralMaps.Contains(PlayerDatas.Instance.baseData.MapID);
            if (recordPositionBool)//显示功能入口
            {
                if (inDungeon || IsBossBool || IsSitBool || isNeutralMap)
                if (inDungeon || IsBossBool || isNeutralMap)
                {
                    if (IsSitBool && SitEvent != null)
                    {
                        SitEvent(false);
                    }
                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
                    if (IsCopyOfThePanel != null)
                    {
@@ -787,7 +754,7 @@
                        Event_Duplicates(true, CopyOfThePanelSpeed);
                    }
                }
                if (!IsBossBool && !IsSitBool)
                if (!IsBossBool)
                {
                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
                    {
@@ -798,11 +765,6 @@
                        }
                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                        m_BossBriefInfos.Unfold(false);
                        if (SitEvent != null)
                        {
                            SitEvent(false);
                        }
                    }
                }
                m_ImageRotation.DOLocalRotate(Vec3, SwitchSkillTipAndButtonTipSpeed);
@@ -814,12 +776,8 @@
            }
            else//显示默认
            {
                if (inDungeon || IsBossBool || IsSitBool || isNeutralMap)
                if (inDungeon || IsBossBool || isNeutralMap)
                {
                    if (IsSitBool && SitEvent != null)
                    {
                        SitEvent(true);
                    }
                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                    if (IsCopyOfThePanel != null)
                    {
@@ -833,7 +791,7 @@
                        Event_Duplicates(false, CopyOfThePanelSpeed);
                    }
                }
                if (!IsBossBool && !IsSitBool)
                if (!IsBossBool)
                {
                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
                    {
@@ -844,11 +802,6 @@
                        }
                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                        m_BossBriefInfos.Unfold(false);
                        if (SitEvent != null)
                        {
                            SitEvent(false);
                        }
                    }
                }
                m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
@@ -953,22 +906,16 @@
        {
            if (_unflod)
            {
                if (Vector3.Distance(m_CastSkillTip.localPosition, m_position1_S.localPosition) <= 1)
                if (Vector3.Distance(m_CastSkillTip.localPosition, m_position1_S.localPosition) <= 1)//技能面板展开状态
                {
                    m_AnimationFadeOut.ImmediatelyAppear();
                    m_CastSkillTip.localPosition = m_position2_S.localPosition;
                    m_MailObj.SetActive(false);
                    m_ImageRotation.DOLocalRotate(Vec3, SwitchSkillTipAndButtonTipSpeed);
                    recordPositionBool = false;
                    _MarkRay.gameObject.SetActive(true);
                    ShowBtnGroup();//显示按钮组隐藏技能组(强制切换)
                }
                if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) > 5)
                if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) > 5)//任务面板
                {
                    TaskSwithButton();
                    onMainModel.IsBossAreaTask = false;
                }
                if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2)
                if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2)//上层面板
                {
                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
@@ -982,19 +929,11 @@
            }
            else
            {
                if (Vector3.Distance(m_CastSkillTip.localPosition, m_position2_S.localPosition) <= 1)
                if (Vector3.Distance(m_CastSkillTip.localPosition, m_position2_S.localPosition) <= 1)//技能面板收起状态
                {
                    m_AnimationFadeOut.FadeAtOnce();
                    m_CastSkillTip.localPosition = m_position1_S.localPosition;
                    m_MailObj.SetActive(true);
                    m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, 0);
                    m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
                    recordPositionBool = true;
                    _MarkRay.gameObject.SetActive(false);
                    ShowCastSkill();//显示技能组,隐藏按钮组(强制切换)
                }
                m_HighSettingTip.ShowButtonNow();
                //   m_HighSettingTip.ColseButtonNow();
                if (_skillGroup != 0)
                {
                    m_SkillContainer.skillTurnplate.SwitchGroup(_skillGroup);
@@ -1006,15 +945,9 @@
        {
            if (AchievementGoto.achievementType == AchievementGoto.ExcuteSkill)
            {
                if (m_AnimationFadeOut.GetIsFadeIn())
                if (Vector3.Distance(m_CastSkillTip.localPosition, m_position2_S.localPosition) <= 1)//技能面板收起状态
                {
                    m_AnimationFadeOut.FadeAtOnce();
                    m_CastSkillTip.localPosition = m_position1_S.localPosition;
                    m_MailObj.SetActive(true);
                    m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, 0);
                    m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
                    recordPositionBool = true;
                    _MarkRay.gameObject.SetActive(false);
                    ShowCastSkill();//显示技能组隐藏按钮组(强制切换)
                }
                var _cfg = Config.Instance.Get<SuccessConfig>(AchievementGoto.guideAchievementId);
                var _skillId = ModelCenter.Instance.GetModel<AchievementModel>().FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
@@ -1062,17 +995,30 @@
        public void IsShowButtonGroup()
        {
            if (Vector3.Distance(m_CastSkillTip.localPosition, m_position1_S.localPosition) <= 1)
            if (Vector3.Distance(m_CastSkillTip.localPosition, m_position1_S.localPosition) <= 1)//技能面板展示
            {
                m_AnimationFadeOut.ImmediatelyAppear();
                m_CastSkillTip.localPosition = m_position2_S.localPosition;
                m_MailObj.SetActive(false);
                m_ImageRotation.DOLocalRotate(Vec3, SwitchSkillTipAndButtonTipSpeed);
                recordPositionBool = false;
                _MarkRay.gameObject.SetActive(true);
                ShowBtnGroup();//显示按钮组隐藏技能组(强制切换)
            }
        }
        private void ShowBtnGroup()//显示按钮组,隐藏技能组(强制切换)
        {
            m_AnimationFadeOut.ImmediatelyAppear();//按钮组立即出现
            m_CastSkillTip.localPosition = m_position2_S.localPosition;//技能面板切出
            m_MailObj.SetActive(false);
            m_ImageRotation.DOLocalRotate(Vec3, SwitchSkillTipAndButtonTipSpeed);
            recordPositionBool = false;
            _MarkRay.gameObject.SetActive(true);
        }
        private void ShowCastSkill()//显示技能组,隐藏按钮组(强制切换)
        {
            m_AnimationFadeOut.FadeAtOnce();//功能面板立刻隐藏
            m_CastSkillTip.localPosition = m_position1_S.localPosition;//技能面板立即出现
            m_MailObj.SetActive(true);
            m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, 0);
            m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
            recordPositionBool = true;
            _MarkRay.gameObject.SetActive(false);
        }
    }