少年修仙传客户端代码仓库
client_Wu Xijin
2019-03-27 44b5b3201f08c119429f5ec6da982677e47569a2
System/MainInterfacePanel/MainPositionTween.cs
@@ -12,210 +12,191 @@
    public class MainPositionTween : MonoBehaviour
    {
        [Header("主界面顶部上下切换模块")]
        public float CopyOfThePanelSpeed = 1f;//副本面板移动速度
        [SerializeField] Transform m_CopyOfThePanel;
        [SerializeField] Transform m_CopyOfThePosition1;
        [SerializeField] Transform m_CopyOfThePosition2;
        [SerializeField] Transform m_ContainerBossList;
        [Header("主界面技能面板切换模块")]
        public float SwitchSkillTipAndButtonTipSpeed = 1.2f;//技能面板和按钮面板的移动速度
        [SerializeField] Transform m_CastSkillTip;//技能面板
        [SerializeField] Transform m_position1_S;
        [SerializeField] Transform m_position2_S;
        [SerializeField] AnimationFadeOut m_AnimationFadeOut;//右下角按钮组
        [Header("主界面任务模块")]
        public float TaskSpeed = 0.2f;//任务面板移动的速度
        [SerializeField] Transform m_TaskAndTeamPanel;
        [SerializeField] Transform m_TaskListTipAnchor1;
        [SerializeField] Transform m_TaskListTipAnchor2;
        [SerializeField] GameObject m_LeftImage;
        [SerializeField] GameObject m_RightImg;
        [Header("功能预告模块")]
        [SerializeField] Transform m_FunctionForecastPanel;
        [SerializeField] Transform m_unctionForecastPosition1;
        [SerializeField] Transform m_unctionForecastPosition2;
        [Header("切换按钮旋转")]
        public Vector3 Vec3 = new Vector3(0f, 0f, 225f);//切换旋转的角度
        [SerializeField] Transform m_ImageRotation;//切换滚动
        public bool IsSetCopyOfThePanelShow
        {
            get
            {
                return (m_CopyOfThePanel.position - m_CopyOfThePosition1.position).sqrMagnitude < (2.5 * 2.5);
        [Header("主界面顶部上下切换模块")]
        public float rightTopSwitchTime = 1f;
        [SerializeField] Transform m_RightTopFunction;
        [SerializeField] Transform m_ContainerBossList;
        [SerializeField] Transform m_RightTopPosition1;
        [SerializeField] Transform m_RightTopPosition2;
        [Header("主界面技能面板切换模块")]
        public float rightBottomSwitchTime = 1.2f;
        [SerializeField] Transform m_ContainerSkill;//技能面板
        [SerializeField] Transform m_SkillPosition1;
        [SerializeField] Transform m_SkillPosition2;
        [SerializeField] AnimationFadeOut m_AnimationFadeOut;//右下角按钮组
        [Header("主界面任务模块")]
        public float leftMiddleSwitchTime = 0.5f;//任务面板移动的速度
        [SerializeField] Transform m_ContainerLeftMiddle;
        [SerializeField] Transform m_LeftMiddlePosition1;
        [SerializeField] Transform m_LeftMiddlePosition2;
        [SerializeField] GameObject m_LeftImage;
        [SerializeField] GameObject m_RightImg;
        public bool IsSetCopyOfThePanelShow {
            get {
                return (m_RightTopFunction.localPosition - m_RightTopPosition1.localPosition).sqrMagnitude < (2.5 * 2.5);
            }
        }
        public void SetCopyOfThePanelPos(bool _bool)
        void SetRightTopWidgetPosition(bool _bool)
        {
            if (_bool)
            {
                m_CopyOfThePanel.localPosition = m_CopyOfThePosition1.localPosition;
                m_RightTopFunction.localPosition = m_RightTopPosition1.localPosition;
            }
            else
            {
                m_CopyOfThePanel.localPosition = m_CopyOfThePosition2.localPosition;
                m_RightTopFunction.localPosition = m_RightTopPosition2.localPosition;
            }
        }
        public void SetCopyOfThePanelTweenPos(bool _bool)
        void SetRightTopWidgetPositionTween(bool _bool)
        {
            if (_bool)
            {
                m_CopyOfThePanel.DOLocalMoveY(m_CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
                m_RightTopFunction.DOLocalMoveY(m_RightTopPosition1.localPosition.y, rightTopSwitchTime);
            }
            else
            {
                m_CopyOfThePanel.DOLocalMoveY(m_CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                m_RightTopFunction.DOLocalMoveY(m_RightTopPosition2.localPosition.y, rightTopSwitchTime);
            }
        }
        public void SetBossListPos(bool _bool)
        void SetBossListPos(bool _bool)
        {
            if (_bool)
            {
                m_ContainerBossList.localPosition = m_CopyOfThePosition1.localPosition;
                m_ContainerBossList.localPosition = m_RightTopPosition1.localPosition;
            }
            else
            {
                m_ContainerBossList.localPosition = m_CopyOfThePosition2.localPosition;
                m_ContainerBossList.localPosition = m_RightTopPosition2.localPosition;
            }
        }
        public void SetBossListTweenPos(bool _bool)
        void SetBossListTweenPos(bool _bool)
        {
            if (_bool)
            {
                m_ContainerBossList.DOLocalMoveY(m_CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
                m_ContainerBossList.DOLocalMoveY(m_RightTopPosition1.localPosition.y, rightTopSwitchTime);
            }
            else
            {
                m_ContainerBossList.DOLocalMoveY(m_CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
                m_ContainerBossList.DOLocalMoveY(m_RightTopPosition2.localPosition.y, rightTopSwitchTime);
            }
        }
        public void SetTipAndBossPos(bool _bool)
        {
            if (_bool)
            {
                SetCopyOfThePanelPos(true);
                SetRightTopWidgetPosition(true);
                SetBossListPos(false);
            }
            else
            {
                SetCopyOfThePanelPos(false);
                SetRightTopWidgetPosition(false);
                SetBossListPos(true);
            }
        }
        public void SetTipAndBossTweenPos(bool _bool)
        {
            if (_bool)
            {
                SetCopyOfThePanelTweenPos(true);
                SetRightTopWidgetPositionTween(true);
                SetBossListTweenPos(false);
            }
            else
            {
                SetCopyOfThePanelTweenPos(false);
                SetRightTopWidgetPositionTween(false);
                SetBossListTweenPos(true);
            }
        }
        //-----------------------------
        public bool IsRightTipPanelShow
        {
            get
            {
                return (m_CastSkillTip.position - m_position1_S.position).sqrMagnitude < 1;
        public bool IsRightTipPanelShow {
            get {
                return (m_ContainerSkill.localPosition - m_SkillPosition1.localPosition).sqrMagnitude < 1;
            }
        }
        public void SetSkillTipOrRightTipPos(bool _bool)
        {
            if (_bool)
            {
                m_AnimationFadeOut.FadeAtOnce();
                m_CastSkillTip.localPosition = m_position1_S.localPosition;
                m_ContainerSkill.localPosition = m_SkillPosition1.localPosition;
            }
            else
            {
                m_AnimationFadeOut.ImmediatelyAppear();
                m_CastSkillTip.localPosition = m_position2_S.localPosition;
                m_ContainerSkill.localPosition = m_SkillPosition2.localPosition;
            }
        }
        public void SetSkillTipOrRightTipPosTween(bool _bool)
        {
            if (_bool)
            {
                m_AnimationFadeOut.FadeOut();
                m_CastSkillTip.DOLocalMoveX(m_position1_S.localPosition.x, SwitchSkillTipAndButtonTipSpeed);
                m_ContainerSkill.DOLocalMoveX(m_SkillPosition1.localPosition.x, rightBottomSwitchTime);
            }
            else
            {
                m_AnimationFadeOut.FadeIn();
                m_CastSkillTip.DOLocalMoveX(m_position2_S.localPosition.x, SwitchSkillTipAndButtonTipSpeed);
                m_ContainerSkill.DOLocalMoveX(m_SkillPosition2.localPosition.x, rightBottomSwitchTime);
            }
        }
        //----------------------------
        public bool IsTaskAndPanelShow
        {
            get
            {
                return (m_TaskAndTeamPanel.localPosition - m_TaskListTipAnchor1.localPosition).sqrMagnitude < 3*3;
        public bool IsTaskAndPanelShow {
            get {
                return (m_ContainerLeftMiddle.localPosition - m_LeftMiddlePosition1.localPosition).sqrMagnitude < 3 * 3;
            }
        }
        public void SetTaskPos(bool _bool)
        {
            if (_bool)
            {
                m_TaskAndTeamPanel.localPosition = m_TaskListTipAnchor1.localPosition;
                m_ContainerLeftMiddle.localPosition = m_LeftMiddlePosition1.localPosition;
            }
            else
            {
                m_TaskAndTeamPanel.localPosition = m_TaskListTipAnchor2.localPosition;
                m_ContainerLeftMiddle.localPosition = m_LeftMiddlePosition2.localPosition;
            }
        }
        public void SetTaskPosTween(bool _bool)
        {
            if (_bool)
            {
                m_TaskAndTeamPanel.DOLocalMoveX(m_TaskListTipAnchor1.localPosition.x, TaskSpeed);
                m_ContainerLeftMiddle.DOLocalMoveX(m_LeftMiddlePosition1.localPosition.x, leftMiddleSwitchTime);
                m_LeftImage.SetActive(true);
                m_RightImg.SetActive(false);
            }
            else
            {
                m_TaskAndTeamPanel.DOLocalMoveX(m_TaskListTipAnchor2.localPosition.x, TaskSpeed);
                m_ContainerLeftMiddle.DOLocalMoveX(m_LeftMiddlePosition2.localPosition.x, leftMiddleSwitchTime);
                m_LeftImage.SetActive(false);
                m_RightImg.SetActive(true);
            }
        }
        //-----------------------------
        public void SetFunctionForecastPos(bool _bool)
        {
            if (_bool)
            {
                m_FunctionForecastPanel.localPosition = m_unctionForecastPosition1.localPosition;
            }
            else
            {
                m_FunctionForecastPanel.localPosition = m_unctionForecastPosition2.localPosition;
            }
        }
        public void SetFunctionForecastPosTween(bool _bool)
        {
            if (_bool)
            {
                m_FunctionForecastPanel.DOLocalMoveX(m_unctionForecastPosition1.localPosition.x, TaskSpeed);
            }
            else
            {
                m_FunctionForecastPanel.DOLocalMoveX(m_unctionForecastPosition2.localPosition.x, TaskSpeed);
            }
        }
        //--------------------------------
        public void SetRotation(bool _bool)
        {
            if (_bool)
            {
                m_ImageRotation.DOLocalRotate(Vec3, SwitchSkillTipAndButtonTipSpeed);
                m_ImageRotation.DOLocalRotate(Vec3, rightBottomSwitchTime);
            }
            else
            {
                m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
                m_ImageRotation.DOLocalRotate(Vector3.zero, rightBottomSwitchTime);
            }
        }
    }