From 522ca3468a56c88cb15eaa428eb7499d3dba386f Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期四, 23 八月 2018 11:44:27 +0800
Subject: [PATCH] 2805【前端】超值礼包新增显示仙玉余额

---
 System/MainInterfacePanel/MainInterfaceWin.cs | 2167 +++++++++++++++++++++++++++++-----------------------------
 1 files changed, 1,084 insertions(+), 1,083 deletions(-)

diff --git a/System/MainInterfacePanel/MainInterfaceWin.cs b/System/MainInterfacePanel/MainInterfaceWin.cs
index 9bb0500..61887b6 100644
--- a/System/MainInterfacePanel/MainInterfaceWin.cs
+++ b/System/MainInterfacePanel/MainInterfaceWin.cs
@@ -1,1083 +1,1084 @@
-锘�//--------------------------------------------------------
-//    [Author]:           绗簩涓栫晫
-//    [  Date ]:           Saturday, October 14, 2017
-//--------------------------------------------------------
-
-using System.Collections.Generic;
-using UnityEngine;
-using UnityEngine.UI;
-using DG.Tweening;
-using System;
-using TableConfig;
-using System.Collections;
-
-namespace Snxxz.UI
-{
-
-    public class MainInterfaceWin : Window
-    {
-        [SerializeField] InGamePushContainer m_InGamePusher;
-        [SerializeField] SkillContainer m_SkillContainer;
-        [SerializeField] HeadPortraitTip m_HeadPortraitTip;
-        [SerializeField] LowSettingTip m_LowSettingTip;
-        [SerializeField] ChatFrame m_ChatTip;
-        [SerializeField] HighSettingTip m_HighSettingTip;
-        [SerializeField] TaskListTip m_TaskListTip;//浠诲姟
-        [SerializeField] TopRightTip m_TopRightTip;
-
-        [SerializeField] Button friendQuestBtn;
-        [SerializeField] Button fairyRequestBtn;
-        [SerializeField] FunctionForecastTip m_FunctionForecastTip;//鍔熻兘棰勫憡
-        [SerializeField] IsShowXpButton m_IsShowXp;//XP 鎶�鑳藉父鏄�                                                
-        // [SerializeField] XpSkill m_XpSkill;
-        [SerializeField] SkillButtonEffects m_SkillButtonEffects;
-
-        [Header("鍓湰闈㈡澘绉诲姩閫熷害")]
-        public float CopyOfThePanelSpeed = 1f;//鍓湰闈㈡澘绉诲姩閫熷害
-        [SerializeField] Transform CopyOfThePanel;
-        [SerializeField] Transform m_ContainerBossList;
-        [SerializeField] DungeonBossBriefInfoContainer m_BossBriefInfos;
-        [SerializeField] Transform CopyOfThePosition1;
-        [SerializeField] Transform CopyOfThePosition2;
-
-        [SerializeField] IntensifySmoothSlider _ExpSlider;//缁忛獙鏉�
-        [SerializeField] Button _DownButton;//鏌ョ湅缁忛獙鏁板��
-        [SerializeField] Text _ExpRate;//鏁板��
-        [SerializeField] UIEffect m_UIEffect_A;//缁忛獙鐗规晥
-        [SerializeField] UIEffect m_UIEffect_B;//缁忛獙鐗规晥
-        private float ExpValueFloat = 0;
-        private bool SliderOpen = true;
-        public float _Delaytime = 0.1f;//寤惰繜鏃堕棿
-
-
-        [Header("浠诲姟闈㈡澘鐨勭Щ鍔ㄩ�熷害")]
-        public float Speed = 0.2f;
-        [Header("鎶�鑳介潰鏉垮拰鎸夐挳闈㈡澘鐨勭Щ鍔ㄩ�熷害")]
-        public float SwitchSkillTipAndButtonTipSpeed = 0.2f;
-        public float DoFade = 0.2f;
-        [SerializeField] Transform m_LowSettingTipGroup;//鎸夐挳闈㈡澘
-        [SerializeField] Transform m_CastSkillTip;//鎶�鑳介潰鏉�
-        [SerializeField] Transform m_position1_S;
-        [SerializeField] Transform m_position2_S;
-        public static bool recordPositionBool = true;
-
-        [Header("绛栧垝瑕佺殑瑙掑害")]
-        public Vector3 Vec3 = new Vector3(0f, 0f, 225f);
-        [SerializeField] Transform m_ImageRotation;//鍒囨崲婊氬姩
-
-        [SerializeField] GameObject m_TaskAndTeamTip;
-        [SerializeField] GameObject LeftImage;
-        [SerializeField] GameObject RightImg;
-        [SerializeField] Transform m_TaskAndTeamPanel;
-        [SerializeField] Transform TaskListTipAnchor1;
-        [SerializeField] Transform TaskListTipAnchor2;
-
-        [SerializeField] Button m_TaskSwithButton;//鍏充簬鍔熻兘棰勫憡
-        [SerializeField] Transform FunctionForecastPanel;
-        [SerializeField] Transform unctionForecastPosition1;
-        [SerializeField] Transform unctionForecastPosition2;
-
-        [SerializeField] Button m_CollectBtn;
-        [SerializeField] Image m_CollectIcon;
-        [SerializeField] Text m_CollectBtnText;
-        [SerializeField] Button m_RedBag;//绾㈠寘鍏ュ彛鎸夐挳
-        [SerializeField] UIEffect m_RedpackGetSfx;
-        [SerializeField] Button m_SendRedbagBtn;
-
-        [SerializeField] Transform m_EffectTask;//浠诲姟瀹屾垚鐗规晥鎾斁浣嶇疆
-        private int m_CollectNPCID;
-        private uint m_CollectNPCSID;
-        private bool TaskSwithBool = true;
-
-        [SerializeField] Button _SwitchShowBtn;//鍒囨崲鎸夐挳
-        [SerializeField] AnimationFadeOut m_AnimationFadeOut;
-
-        [SerializeField] GameObject m_MailObj;//閭欢鏄鹃殣
-
-        [SerializeField] ClickScreenOtherSpace _MarkRay;//渚挎嵎鍒囨崲鎸夐挳
-
-        [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
-
-        public static event Action<bool> IsCopyOfThePanel;
-        public static event Action IsOpenMaininterface;
-        public static bool CopyOfThePositionBool = true;
-
-        RealmModel m_RealmModel;
-        RealmModel realmModel { get { return m_RealmModel ?? (m_RealmModel = ModelCenter.Instance.GetModel<RealmModel>()); } }
-        FairyModel m_FairyModel;
-        FairyModel fairyModel { get { return m_FairyModel ?? (m_FairyModel = ModelCenter.Instance.GetModel<FairyModel>()); } }
-        FriendsModel _friendsModel;
-        FriendsModel friendsModel { get { return _friendsModel ?? (_friendsModel = ModelCenter.Instance.GetModel<FriendsModel>()); } }
-        PlayerMountDatas m_HorseModel;
-        PlayerMountDatas horsemodel { get { return m_HorseModel ?? (m_HorseModel = ModelCenter.Instance.GetModel<PlayerMountDatas>()); } }
-        PlayerMainDate m_MainModel;
-        PlayerMainDate onMainModel { get { return m_MainModel ?? (m_MainModel = ModelCenter.Instance.GetModel<PlayerMainDate>()); } }
-        PlayerTaskDatas m_PlayerTask;
-        PlayerTaskDatas onPlayerTask { get { return m_PlayerTask ?? (m_PlayerTask = ModelCenter.Instance.GetModel<PlayerTaskDatas>()); } }
-        PlayerRedPacketDatas m_RedPacket;
-        PlayerRedPacketDatas redPacket { get { return m_RedPacket ?? (m_RedPacket = ModelCenter.Instance.GetModel<PlayerRedPacketDatas>()); } }
-        PlayerBuffDatas m_BuffModel;
-        PlayerBuffDatas Buffmodel { get { return m_BuffModel ?? (m_BuffModel = ModelCenter.Instance.GetModel<PlayerBuffDatas>()); } }
-        PKModel m_PKModel;
-        PKModel pKModel { get { return m_PKModel ?? (m_PKModel = ModelCenter.Instance.GetModel<PKModel>()); } }
-        OSRedEnvelopeModel OSEnvelopeModel { get { return ModelCenter.Instance.GetModel<OSRedEnvelopeModel>(); } }
-        RuneTowerModel runeTowerModel { get { return ModelCenter.Instance.GetModel<RuneTowerModel>(); } }
-        TreasureModel treasureModel { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
-        DemonJarModel demonJarModel { get { return ModelCenter.Instance.GetModel<DemonJarModel>(); } }
-        DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
-
-        #region Built-in
-        protected override void BindController()
-        {
-            switcherTime = int.Parse(ConfigManager.Instance.GetTemplate<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);
-            var inst = BossShowModel.Instance;
-            TaskSwithBool = true;
-            FunctionForecastPanel.localPosition = unctionForecastPosition1.localPosition;
-            LeftImage.SetActive(true);
-            RightImg.SetActive(false);
-            ListBossMapId.Clear();
-            string strBoss = ConfigManager.Instance.GetTemplate<FuncConfigConfig>("TaskRetract").Numerical1;
-            string[] bossList = ConfigParse.GetMultipleStr(strBoss);//瑙f瀽鍑烘暟缁剕
-            for (int i = 0; i < bossList.Length; i++)
-            {
-                ListBossMapId.Add(int.Parse(bossList[i]));
-            }
-
-            _MarkRay.gameObject.SetActive(false);
-        }
-
-        protected override void AddListeners()
-        {
-            UIEventTrigger.Get(_DownButton.gameObject).OnDown = DownButton;
-            UIEventTrigger.Get(_DownButton.gameObject).OnUp = UpButton;
-            _MarkRay.AddListener(MarkRayButton);
-            _SwitchShowBtn.AddListener(SwitchShowButton);
-            m_TaskSwithButton.AddListener(TaskSwithButton);
-            fairyRequestBtn.onClick.AddListener(OnFairyRequestClick);
-            m_RedBag.AddListener(RedPacketButton);
-            m_SendRedbagBtn.AddListener(SendRedpacketBtn);
-        }
-
-        protected override void OnPreOpen()
-        {
-            if (IsOpenMaininterface != null)
-            {
-                IsOpenMaininterface();
-            }
-            SliderOpen = true;
-            horseRidBool = false;
-            friendsModel.askAddFriendEvent = FriendQuestBtn;
-            m_InGamePusher.Init();
-            m_SkillContainer.Init();
-            m_FunctionForecastTip.Init();
-            m_HeadPortraitTip.Init();
-            m_LowSettingTip.Init();
-            m_ChatTip.Init();
-            m_HighSettingTip.Init();
-            m_TaskListTip.Init();
-            m_IsShowXp.Init();
-            m_TopRightTip.Init();
-            m_SkillButtonEffects.Init();
-            m_AnimationFadeOut.Init();
-            m_TeamInvitationEntrance.Init();
-            m_BossBriefInfos.gameObject.SetActive(false);
-
-            ArticleExperience();//鍏充簬缁忛獙鏉�
-            FriendQuestBtn();
-            UpdateFairyRequest();
-            OnRedBagGet();//鍏充簬绾㈠寘鍏ュ彛
-            CheckSendRedpackBtn();
-            CheckChatTipOpen();
-            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += Updatefighting;
-            FunctionUnlockFlyObject.functionUnLockShowBeginEvent += UnFlodFunctionArea;
-            CoroutineMgr.Instance.MaininterCDTimeEvent += OnMaininterCDTime;
-            fairyModel.UpdateFairyRequestEvent += UpdateFairyRequest;
-            GA_Hero.OnEnterOrExitArea += OnEnterOrExitArea;
-            NewBieCenter.Instance.guideBeginEvent += OnGuideBegin;
-            NewBieCenter.Instance.guideCompletedEvent += OnGuideCompleted;
-            m_CollectBtn.AddListener(OnCollectBtnClick);
-            GA_NpcCollect.OnArrive += OnArriveCollectNPC;
-            GA_NpcCollect.OnLeave += OnLeaveCollectNpc;
-            PlayerRedPacketDatas.OnRedBagGetEvent += OnRedBagGet;
-            WindowCenter.Instance.windowAfterOpenEvent += WindowAfterEvent;
-            WindowCenter.Instance.windowAfterCloseEvent += WindowAfterEvent;
-            OSEnvelopeModel.OSRedEnvelopeUpdateEvent += OnRedBagGet;
-            OSEnvelopeModel.OSRedEnvelopeInfoEnvent += OnRedBagGet;
-            PlayerTaskDatas.CompletionOfTaskEvent += CompletionOfTaskEvent;
-            RedpointCenter.Instance.redpointValueChangeEvent += RedpointValueChangeEvent;
-            NewBieCenter.Instance.guideBeginEvent += GuideBeginEvent;
-
-        }
-
-        private void CompletionOfTaskEvent(int obj)
-        {
-            EffectMgr.Instance.PlayUIEffect(1100, 1100, m_EffectTask, false);
-
-        }
-
-        protected override void OnActived()
-        {
-            m_HighSettingTip.OnActived();
-        }
-
-        IEnumerator Co_Load()
-        {
-            yield return null;
-            WindowCenter.Instance.Open<OffLineOnHookWin>();
-        }
-
-        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);//鏄惁鍦˙oss鍖哄煙
-            if (onMainModel.IsDead || (onMainModel.IsBossAreaTask && !IsBossBool))
-            {
-
-                if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) > 3)
-                {
-                    TaskSwithButton();
-                }
-                onMainModel.IsBossAreaTask = false;
-                onMainModel.IsDead = false;
-            }
-            if (m_AnimationFadeOut.GetIsFadeIn())
-            {
-                _MarkRay.gameObject.SetActive(true);
-            }
-            var inDungeon = IsDungeon();
-            if (inDungeon)
-            {
-                m_TaskAndTeamTip.SetActive(!inDungeon);
-                m_FunctionForecastTip.gameObject.SetActive(false);
-                if (WindowCenter.Instance.CheckOpen<FunctionForecastWin>())
-                {
-                    WindowCenter.Instance.Close<FunctionForecastWin>();
-                }
-                m_TaskSwithButton.gameObject.SetActive(false);
-                if (mapId != PlayerDatas.Instance.baseData.MapID)
-                {
-                    CopyOfThePanel.localPosition = CopyOfThePosition2.localPosition;
-                    CopyOfThePositionBool = false;
-                    m_ContainerBossList.localPosition = CopyOfThePosition1.localPosition;
-                    m_BossBriefInfos.Unfold(false);
-
-                    if (Event_Duplicates != null)
-                    {
-                        Event_Duplicates(false, CopyOfThePanelSpeed);
-                    }
-                }
-                if (m_AnimationFadeOut.GetIsFadeIn() && mapId != PlayerDatas.Instance.baseData.MapID)
-                {
-                    m_AnimationFadeOut.FadeAtOnce();
-                    m_MailObj.SetActive(true);
-                    m_CastSkillTip.localPosition = m_position1_S.localPosition;
-                    m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, 0);
-                    recordPositionBool = true;
-                }
-            }
-            else
-            {             
-                var isNeutralMap = GeneralConfig.Instance.neutralMaps.Contains(PlayerDatas.Instance.baseData.MapID);
-
-                if (isNeutralMap)
-                {
-                    m_BossBriefInfos.gameObject.SetActive(true);
-                    m_BossBriefInfos.Display(ModelCenter.Instance.GetModel<WorldBossModel>().GetWorldBosses(PlayerDatas.Instance.baseData.MapID));
-                }
-                else
-                {
-                    m_BossBriefInfos.gameObject.SetActive(false);
-                }
-
-                if (isNeutralMap)
-                {
-                    if (mapId != PlayerDatas.Instance.baseData.MapID)
-                    {
-                        CopyOfThePanel.localPosition = CopyOfThePosition2.localPosition;
-                        CopyOfThePositionBool = false;
-                        m_ContainerBossList.localPosition = CopyOfThePosition1.localPosition;
-                        m_BossBriefInfos.Unfold(false);
-                    }
-                }
-                else
-                {
-                    if (!IsSitBool && !IsBossBool)
-                    {
-                        CopyOfThePanel.localPosition = CopyOfThePosition1.localPosition;
-                        CopyOfThePositionBool = true;
-                        m_ContainerBossList.localPosition = CopyOfThePosition2.localPosition;
-                        m_BossBriefInfos.Unfold(false);
-                    }
-                }
-
-                if (Event_Duplicates != null && (inDungeon || isNeutralMap))
-                {
-                    Event_Duplicates(true, CopyOfThePanelSpeed);
-                }
-
-                m_TaskAndTeamTip.SetActive(true);
-                m_FunctionForecastTip.gameObject.SetActive(true);
-                m_TaskSwithButton.gameObject.SetActive(true);
-            }
-            mapId = PlayerDatas.Instance.baseData.MapID;
-            m_HighSettingTip.AfterOpen();
-            m_ChatTip.OnAfterOpen();
-            HandleAchievement();
-        }
-
-        protected override void OnPreClose()
-        {
-            m_IsShowXp.Unit();
-            m_InGamePusher.UnInit();
-            m_SkillContainer.UnInit();
-            m_HeadPortraitTip.UnInit();
-            m_LowSettingTip.UnInit();
-            m_ChatTip.UnInit();
-            m_HighSettingTip.UnInit();
-            m_TaskListTip.UnInit();
-            m_TopRightTip.UnInit();
-            m_SkillButtonEffects.UnInit();
-            m_FunctionForecastTip.Unit();
-            m_AnimationFadeOut.Unit();
-            m_TeamInvitationEntrance.UnInit();
-            horseRidBool = false;
-            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting;
-            FunctionUnlockFlyObject.functionUnLockShowBeginEvent -= UnFlodFunctionArea;
-            CoroutineMgr.Instance.MaininterCDTimeEvent -= OnMaininterCDTime;
-            fairyModel.UpdateFairyRequestEvent -= UpdateFairyRequest;
-            GA_Hero.OnEnterOrExitArea -= OnEnterOrExitArea;
-            NewBieCenter.Instance.guideBeginEvent -= OnGuideBegin;
-            NewBieCenter.Instance.guideCompletedEvent -= OnGuideCompleted;
-            PlayerRedPacketDatas.OnRedBagGetEvent -= OnRedBagGet;
-            WindowCenter.Instance.windowAfterOpenEvent -= WindowAfterEvent;
-            WindowCenter.Instance.windowAfterCloseEvent -= WindowAfterEvent;
-            OSEnvelopeModel.OSRedEnvelopeUpdateEvent -= OnRedBagGet;
-            OSEnvelopeModel.OSRedEnvelopeInfoEnvent -= OnRedBagGet;
-            PlayerTaskDatas.CompletionOfTaskEvent -= CompletionOfTaskEvent;
-            RedpointCenter.Instance.redpointValueChangeEvent -= RedpointValueChangeEvent;
-            NewBieCenter.Instance.guideBeginEvent -= GuideBeginEvent;
-            if (WindowCenter.Instance.CheckOpen<FunctionForecastWin>())
-            {
-                WindowCenter.Instance.CloseImmediately<FunctionForecastWin>();
-            }
-            m_CollectBtn.RemoveAllListeners();
-            GA_NpcCollect.OnArrive -= OnArriveCollectNPC;
-            GA_NpcCollect.OnLeave -= OnLeaveCollectNpc;
-            m_CollectBtn.gameObject.SetActive(false);
-        }
-
-        private void GuideBeginEvent()
-        {
-            if (NewBieCenter.Instance.inGuiding && NewBieCenter.Instance.currentGuide == 89)
-            {
-                UnFlodFunctionArea(true, 0);
-            }
-        }
-
-        private void RedpointValueChangeEvent(int _id)
-        {
-            if (_id == OSEnvelopeModel.m_RedAchieveRedpoint.id)
-            {
-                CheckSendRedpackBtn();
-            }
-        }
-
-        private void OnRedBagGet()//鍒ゆ柇鏄惁寮�鍚孩鍖呭叆鍙�
-        {
-            if (m_RedpackGetSfx.IsPlaying)
-            {
-                m_RedpackGetSfx.StopImediatly();
-            }
-            if (OSEnvelopeModel.CanGetEnvelope())
-            {
-                m_RedBag.gameObject.SetActive(true);
-                if (!m_RedpackGetSfx.IsPlaying)
-                {
-                    m_RedpackGetSfx.Play();
-                }
-            }
-            else
-            {
-                if (redPacket.IsRedBagGetBool)
-                {
-                    m_RedBag.gameObject.SetActive(true);
-                    if (!m_RedpackGetSfx.IsPlaying)
-                    {
-                        m_RedpackGetSfx.Play();
-                    }
-                }
-                else
-                {
-                    m_RedBag.gameObject.SetActive(false);
-                }
-            }
-            CheckSendRedpackBtn();
-        }
-
-        private void CheckSendRedpackBtn()
-        {
-            m_SendRedbagBtn.gameObject.SetActive(!m_RedBag.gameObject.activeSelf && OSEnvelopeModel.m_RedAchieveRedpoint.state == RedPointState.Simple);
-        }
-
-        private void OnGuideBegin()//寮曞寮�濮�
-        {
-            if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) > 5)
-            {
-                TaskSwithButton();
-            }
-        }
-
-        private void OnGuideCompleted(int obj)//寮曞缁撴潫
-        {
-            if (m_AnimationFadeOut.GetIsFadeIn())
-            {
-                _MarkRay.gameObject.SetActive(true);
-            }
-        }
-
-        private void OnEnterOrExitArea(MapArea.E_Type _areaType, bool _enter)
-        {
-           // DesignDebug.LogError(_areaType + ".." + _enter);
-            if (PlayerDatas.Instance.baseData.MapID == 10040 && _areaType != MapArea.E_Type.Boss && _enter)
-            {
-                if (Buffmodel.PkType != onMainModel.AreaState)
-                {
-                    DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)onMainModel.AreaState);
-                }
-            }
-
-            if (_areaType == MapArea.E_Type.Neutral && _enter)
-            {
-                WindowCenter.Instance.Open<NeutralMarkWin>();
-                int mapID = PlayerDatas.Instance.baseData.MapID;
-                var config = ConfigManager.Instance.GetTemplate<MapConfig>(mapID);
-                int[] atkInt = pKModel.GetArea(config.AtkType).ToArray();
-                if (atkInt.Length > 1 && Buffmodel.PkType != 5)
-                {
-                    onMainModel.AreaState = Buffmodel.PkType;
-                    DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)5);
-                }
-            }
-
-
-            if (_areaType == MapArea.E_Type.Neutral && !_enter)
-            {
-                if (Buffmodel.PkType != onMainModel.AreaState)
-                {
-                    DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)onMainModel.AreaState);
-                }
-            }
-
-            if ((_areaType == MapArea.E_Type.Boss && _enter) || (_areaType == MapArea.E_Type.Dazuo && _enter))
-            {
-                if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) < 2 && ListBossMapId.Contains(PlayerDatas.Instance.baseData.MapID))
-                {
-                    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)
-                    {
-                        return;
-                    }
-                    recordPositionBool = false;
-                    SwitchShowButton();
-                }
-            }
-            if ((_areaType == MapArea.E_Type.Boss && !_enter) || (_areaType != MapArea.E_Type.Normal && (_areaType != MapArea.E_Type.Boss && _enter)))
-            {
-                if (onMainModel.IsBossAreaTask)
-                {
-                    TaskSwithButton();
-                    onMainModel.IsBossAreaTask = false;
-                }
-            }
-            var inDungeon = IsDungeon();
-            var isNeutralMap = GeneralConfig.Instance.neutralMaps.Contains(PlayerDatas.Instance.baseData.MapID);
-
-            if ((_areaType == MapArea.E_Type.Boss && !_enter) || (_areaType == MapArea.E_Type.Dazuo && !_enter))
-            {
-                if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon && !isNeutralMap)
-                {
-                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
-                    if (IsCopyOfThePanel != null)
-                    {
-                        IsCopyOfThePanel(true);
-                    }
-                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
-                    m_BossBriefInfos.Unfold(false);
-
-                    if (SitEvent != null)
-                    {
-                        SitEvent(false);
-                    }
-                }
-            }
-        }
-
-        private void OnMaininterCDTime()
-        {
-            MarkRayButton();
-        }
-
-        protected override void OnAfterClose()
-        {
-        }
-
-        private Vector2 startPosition;
-        private Vector2 endPosition;
-        private bool horseRidBool = false;
-        protected override void LateUpdate()
-        {
-            base.LateUpdate();
-            if (PlayerDatas.Instance.hero != null
-             && PlayerDatas.Instance.hero.State == E_ActorState.AutoRun
-             && onMainModel.MoveBool)
-            {
-                if (!WindowCenter.Instance.CheckOpen("PathfindingIconWin"))
-                {
-                    WindowCenter.Instance.Open<PathfindingIconWin>(true);
-                }
-            }
-            else
-            {
-                onMainModel.MoveBool = false;
-                if (WindowCenter.Instance.CheckOpen("PathfindingIconWin"))
-                {
-                    WindowCenter.Instance.CloseImmediately<PathfindingIconWin>();
-                }
-            }
-
-            if (runeTowerModel.newPassFloor > 0 && !IsDungeon())
-            {
-                if (!WindowCenter.Instance.CheckOpen("NewBieWin") && !WindowCenter.Instance.CheckOpen("TreasureNewGotWin"))
-                {
-                    if (!WindowCenter.Instance.CheckOpen("RuneNewGotWin"))
-                    {
-                        WindowCenter.Instance.Open<RuneNewGotWin>();
-                    }
-                }
-            }
-
-        }
-
-
-        public void FriendQuestBtn()
-        {
-            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Friend))
-            {
-                friendQuestBtn.onClick.RemoveAllListeners();
-                if (friendsModel.GetFriendQuestDict().Count > 0)
-                {
-                    friendQuestBtn.gameObject.SetActive(true);
-                    friendQuestBtn.onClick.AddListener(OnClickFriendQuest);
-                }
-                else
-                {
-                    friendQuestBtn.gameObject.SetActive(false);
-                }
-            }
-            else
-            {
-                friendQuestBtn.gameObject.SetActive(false);
-            }
-        }
-
-        private void OnFairyRequestClick()
-        {
-            WindowCenter.Instance.Open<FairyInviteWin>();
-        }
-        private void RedPacketButton()//鍏充簬绾㈠寘鐨勫姛鑳� 鍏ュ彛
-        {
-            RedEnvelopeModel envelopeModel = ModelCenter.Instance.GetModel<RedEnvelopeModel>();
-            RedEnvelopeModel.RedEnvelope _envelope;
-            if (envelopeModel.TryGetLatestEnvelope(out _envelope))
-            {
-                if (OSEnvelopeModel.m_OpenServerGetRedpin.state == RedPointState.Simple)
-                {
-                    WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
-                    ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().JumpType = 2;
-                    ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().autoOpen = true;
-                    WindowCenter.Instance.Open<OpenServerActivityWin>(false, 2);
-                }
-                else
-                {
-                    WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.RedPacket);
-                }
-            }
-        }
-
-        private void SendRedpacketBtn()
-        {
-            if (OSEnvelopeModel.m_RedAchieveRedpoint.state == RedPointState.Simple)
-            {
-                WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
-                ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().JumpType = 1;
-                WindowCenter.Instance.Open<OpenServerActivityWin>(false, 2);
-            }
-        }
-
-        private void UpdateFairyRequest()
-        {
-            fairyRequestBtn.gameObject.SetActive(fairyModel.FairyRequestRedPoint.count > 0);
-        }
-
-        private void OnClickFriendQuest()
-        {
-            WindowCenter.Instance.Open<FriendQuestWin>();
-        }
-
-        public void MarkRayButton()
-        {
-            if (NewBieCenter.Instance.inGuiding)
-            {
-                return;
-            }
-            var _treasureModel = ModelCenter.Instance.GetModel<TreasureModel>();
-            if (_treasureModel.treasureStageUpShow || _treasureModel.newGotShowing)
-            {
-                return;
-            }
-            var inDungeon = IsDungeon();
-
-            bool IsBossBool = PlayerDatas.Instance.hero == null ? false : MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//鏄惁鍦˙oss鍖哄煙
-            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 (IsCopyOfThePanel != null)
-                    {
-                        IsCopyOfThePanel(false);
-                    }
-                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
-                    m_BossBriefInfos.Unfold(false);
-
-                    if (Event_Duplicates != null && inDungeon)
-                    {
-                        Event_Duplicates(false, CopyOfThePanelSpeed);
-                    }
-
-                }
-                if (!IsBossBool && !IsSitBool)
-                {
-                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
-                    {
-                        CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
-                        if (IsCopyOfThePanel != null)
-                        {
-                            IsCopyOfThePanel(true);
-                        }
-                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
-                        m_BossBriefInfos.Unfold(false);
-
-                        if (SitEvent != null)
-                        {
-                            SitEvent(false);
-                        }
-                    }
-                }
-                m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
-                m_CastSkillTip.DOLocalMoveX(m_position1_S.localPosition.x, SwitchSkillTipAndButtonTipSpeed);
-                m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, DoFade);
-                m_MailObj.SetActive(true);
-                m_AnimationFadeOut.FadeOut();
-                recordPositionBool = true;
-            }
-        }
-        void DownButton(GameObject go)
-        {
-            _ExpRate.gameObject.SetActive(true);
-            WindowCenter.Instance.Open<LimitedTimePackageWin>();
-
-        }
-        void UpButton(GameObject go)
-        {
-            _ExpRate.gameObject.SetActive(false);
-        }
-
-        void TaskSwithButton()
-        {
-            if (onMainModel.IsBossAreaTask)
-            {
-                onMainModel.IsBossAreaTask = false;
-            }
-            if (TaskSwithBool)//闅愯棌
-            {
-                m_TaskAndTeamPanel.DOLocalMoveX(TaskListTipAnchor2.localPosition.x, Speed);
-                if (m_FunctionForecastTip.gameObject.activeSelf)
-                {
-                    FunctionForecastPanel.DOLocalMoveX(unctionForecastPosition2.localPosition.x, Speed);
-
-                }
-                LeftImage.SetActive(false);
-                RightImg.SetActive(true);
-                if (WindowCenter.Instance.CheckOpen<FunctionForecastWin>())
-                {
-                    WindowCenter.Instance.Close<FunctionForecastWin>();
-                }
-            }
-            else//鏄剧ず
-            {
-                m_TaskAndTeamPanel.DOLocalMoveX(TaskListTipAnchor1.localPosition.x, Speed);
-                if (m_FunctionForecastTip.gameObject.activeSelf)
-                {
-                    FunctionForecastPanel.DOLocalMoveX(unctionForecastPosition1.localPosition.x, Speed);
-                }
-                LeftImage.SetActive(true);
-                RightImg.SetActive(false);
-            }
-            TaskSwithBool = !TaskSwithBool;
-        }
-
-        void SwitchShowButton()
-        {
-            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 (IsSitBool && SitEvent != null)
-                    {
-                        SitEvent(false);
-                    }
-                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
-                    if (IsCopyOfThePanel != null)
-                    {
-                        IsCopyOfThePanel(true);
-                    }
-                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
-                    m_BossBriefInfos.Unfold(false);
-
-                    if (Event_Duplicates != null && inDungeon)
-                    {
-                        Event_Duplicates(true, CopyOfThePanelSpeed);
-                    }
-                }
-                if (!IsBossBool && !IsSitBool)
-                {
-                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
-                    {
-                        CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
-                        if (IsCopyOfThePanel != null)
-                        {
-                            IsCopyOfThePanel(true);
-                        }
-                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
-                        m_BossBriefInfos.Unfold(false);
-
-                        if (SitEvent != null)
-                        {
-                            SitEvent(false);
-                        }
-                    }
-                }
-                m_ImageRotation.DOLocalRotate(Vec3, SwitchSkillTipAndButtonTipSpeed);
-                m_CastSkillTip.DOLocalMoveX(m_position2_S.localPosition.x, SwitchSkillTipAndButtonTipSpeed);
-                m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(0, DoFade);
-                m_MailObj.SetActive(false);
-                m_AnimationFadeOut.FadeIn();
-                _MarkRay.gameObject.SetActive(true);
-            }
-            else//鏄剧ず榛樿
-            {
-                if (inDungeon || IsBossBool || IsSitBool || isNeutralMap)
-                {
-                    if (IsSitBool && SitEvent != null)
-                    {
-                        SitEvent(true);
-                    }
-                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
-                    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);
-                    }
-                }
-                if (!IsBossBool && !IsSitBool)
-                {
-                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
-                    {
-                        CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
-                        if (IsCopyOfThePanel != null)
-                        {
-                            IsCopyOfThePanel(true);
-                        }
-                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
-                        m_BossBriefInfos.Unfold(false);
-
-                        if (SitEvent != null)
-                        {
-                            SitEvent(false);
-                        }
-                    }
-                }
-                m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
-                m_CastSkillTip.DOLocalMoveX(m_position1_S.localPosition.x, SwitchSkillTipAndButtonTipSpeed);
-                m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, DoFade);
-                m_MailObj.SetActive(true);
-                m_AnimationFadeOut.FadeOut();
-                _MarkRay.gameObject.SetActive(false);
-            }
-            recordPositionBool = !recordPositionBool;
-        }
-
-        void ArticleExperience()//鍏充簬缁忛獙鏉�
-        {
-            int NowLv = (int)PlayerDatas.Instance.baseData.LV;
-            if (ConfigManager.Instance.GetTemplate<PlayerLVConfig>(NowLv) != null)
-            {
-                ulong maxValue = (ulong)PlayerLVConfig.GetExpByPlayerLv(NowLv);
-                ulong nowVlaue = (ulong)PlayerDatas.Instance.baseData.TotalExp + (ulong)PlayerDatas.Instance.baseData.ExpPoint * 100000000;
-                if (SliderOpen)
-                {
-                    _ExpSlider.delay = 0;
-                    _ExpSlider.stage = NowLv;
-                    _ExpSlider.ResetStage();
-                    ExpValueFloat = ((float)nowVlaue / (float)maxValue);
-                    _ExpSlider.value = (float)ExpValueFloat;
-                    SliderOpen = false;
-                }
-                else
-                {
-                    if (NowLv - _ExpSlider.stage >= 15)
-                    {
-                        _ExpSlider.delay = 0;
-                    }
-                    else
-                    {
-                        _ExpSlider.delay = _Delaytime;
-                    }
-                    ExpValueFloat = ((float)nowVlaue / (float)maxValue);
-                    if (ExpValueFloat != _ExpSlider.value)
-                    {
-                        m_UIEffect_A.Play();
-                        if (m_UIEffect_A.IsPlaying)
-                        {
-                            if (!m_UIEffect_B.IsPlaying)
-                            {
-                                m_UIEffect_B.Play();
-                            }
-                        }
-                    }
-                    _ExpSlider.stage = NowLv;
-                    _ExpSlider.value = (float)ExpValueFloat;
-                }
-                _ExpRate.text = (float)Math.Round((double)nowVlaue / maxValue, 2, MidpointRounding.AwayFromZero) * 100 + "%";
-            }
-        }
-
-        void Updatefighting(PlayerDataRefresh _tCDBPlayerRefresh)//鏁版嵁鐨勫埛鏂�
-        {
-            ArticleExperience();//鍏充簬缁忛獙鏉�
-        }
-
-        void OnCollectBtnClick()
-        {
-            if (m_CollectNPCID != 0 && m_CollectNPCSID != 0)
-            {
-                NPCInteractProcessor.InvokeEvent(E_NpcType.Collect, m_CollectNPCID, m_CollectNPCSID);
-            }
-        }
-
-        void OnArriveCollectNPC(uint sid, int npcID)
-        {
-            m_CollectNPCID = npcID;
-            m_CollectNPCSID = sid;
-            m_CollectBtn.gameObject.SetActive(true);
-            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
-            m_CollectIcon.SetSprite(mapId == 31230 ? "TY_UI_8" : "TY_UI_6");
-            m_CollectIcon.SetNativeSize();
-            m_CollectBtnText.text = mapId == 31230 ? Language.Get("Collect_FairyFeast") : Language.Get("Collect_Normal");
-        }
-
-        void OnLeaveCollectNpc(uint sid, int npcID)
-        {
-            if (m_CollectNPCID == npcID && m_CollectNPCSID == sid)
-            {
-                m_CollectNPCID = 0;
-                m_CollectNPCSID = 0;
-            }
-            m_CollectBtn.gameObject.SetActive(false);
-        }
-
-        #endregion
-
-        private bool IsDungeon()
-        {
-            var mapId = PlayerDatas.Instance.baseData.MapID;
-            var mapConfig = ConfigManager.Instance.GetTemplate<MapConfig>(mapId);
-            return mapConfig != null && mapConfig.MapFBType != 0;
-        }
-
-        private void UnFlodFunctionArea(bool _unflod, int _skillGroup)
-        {
-            if (_unflod)
-            {
-                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);
-                }
-
-                if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) > 5)
-                {
-                    TaskSwithButton();
-                    onMainModel.IsBossAreaTask = false;
-                }
-                if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2)
-                {
-                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
-                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
-                    m_BossBriefInfos.Unfold(false);
-                    if (IsCopyOfThePanel != null)
-                    {
-                        IsCopyOfThePanel(true);
-                    }
-                }
-                m_HighSettingTip.ShowButtonNow();
-            }
-            else
-            {
-                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);
-                }
-                m_HighSettingTip.ShowButtonNow();
-                //   m_HighSettingTip.ColseButtonNow();
-
-                if (_skillGroup != 0)
-                {
-                    m_SkillContainer.skillTurnplate.SwitchGroup(_skillGroup);
-                }
-            }
-        }
-
-        void HandleAchievement()
-        {
-            if (AchievementGoto.achievementType == AchievementGoto.ExcuteSkill)
-            {
-                if (m_AnimationFadeOut.GetIsFadeIn())
-                {
-                    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);
-                }
-                var _cfg = ConfigManager.Instance.GetTemplate<SuccessConfig>(AchievementGoto.guideAchievementId);
-                var _skillId = ModelCenter.Instance.GetModel<AchievementModel>().FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
-                if (_skillId != 0)
-                {
-                    if (ModelCenter.Instance.GetModel<SkillModel>().GetXpSkillID() != _skillId)
-                    {
-                        return;
-                    }
-                    if (PlayerDatas.Instance.hero.SkillMgr.Get(_skillId).cd > 0)
-                    {
-                        MessageWin.Inst.ShowFixedTip(Language.Get("SkillCooling_Z"));
-                    }
-                    else
-                    {
-                        var _effect = AchievementGuideEffectPool.Require(3);
-                        _effect.transform.SetParentEx(m_IsShowXp.transform, Vector3.zero, Vector3.zero, Vector3.one);
-                    }
-                    AchievementGoto.achievementType = 0;
-                }
-                else
-                {
-                    AchievementGoto.achievementType = 0;
-                }
-            }
-        }
-
-        void CheckChatTipOpen()
-        {
-            bool _chatWinOpen = WindowCenter.Instance.CheckOpen<ChatWin>();
-            m_ChatTip.gameObject.SetActive(!_chatWinOpen);
-            if (!_chatWinOpen)
-            {
-                m_ChatTip.CheckRealmSfx();
-            }
-        }
-
-        private void WindowAfterEvent(Window _win)
-        {
-            if (_win is ChatWin)
-            {
-                CheckChatTipOpen();
-            }
-        }
-
-        public void IsShowButtonGroup()
-        {
-            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);
-            }
-
-
-        }
-
-    }
-
-}
-
-
-
-
+锘�//--------------------------------------------------------
+//    [Author]:           绗簩涓栫晫
+//    [  Date ]:           Saturday, October 14, 2017
+//--------------------------------------------------------
+
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+using DG.Tweening;
+using System;
+using TableConfig;
+using System.Collections;
+
+namespace Snxxz.UI
+{
+
+    public class MainInterfaceWin : Window
+    {
+        [SerializeField] InGamePushContainer m_InGamePusher;
+        [SerializeField] SkillContainer m_SkillContainer;
+        [SerializeField] HeadPortraitTip m_HeadPortraitTip;
+        [SerializeField] LowSettingTip m_LowSettingTip;
+        [SerializeField] ChatFrame m_ChatTip;
+        [SerializeField] HighSettingTip m_HighSettingTip;
+        [SerializeField] TaskListTip m_TaskListTip;//浠诲姟
+        [SerializeField] TopRightTip m_TopRightTip;
+
+        [SerializeField] Button friendQuestBtn;
+        [SerializeField] Button fairyRequestBtn;
+        [SerializeField] FunctionForecastTip m_FunctionForecastTip;//鍔熻兘棰勫憡
+        [SerializeField] IsShowXpButton m_IsShowXp;//XP 鎶�鑳藉父鏄�                                                
+        // [SerializeField] XpSkill m_XpSkill;
+        [SerializeField] SkillButtonEffects m_SkillButtonEffects;
+
+        [Header("鍓湰闈㈡澘绉诲姩閫熷害")]
+        public float CopyOfThePanelSpeed = 1f;//鍓湰闈㈡澘绉诲姩閫熷害
+        [SerializeField] Transform CopyOfThePanel;
+        [SerializeField] Transform m_ContainerBossList;
+        [SerializeField] DungeonBossBriefInfoContainer m_BossBriefInfos;
+        [SerializeField] Transform CopyOfThePosition1;
+        [SerializeField] Transform CopyOfThePosition2;
+
+        [SerializeField] IntensifySmoothSlider _ExpSlider;//缁忛獙鏉�
+        [SerializeField] Button _DownButton;//鏌ョ湅缁忛獙鏁板��
+        [SerializeField] Text _ExpRate;//鏁板��
+        [SerializeField] UIEffect m_UIEffect_A;//缁忛獙鐗规晥
+        [SerializeField] UIEffect m_UIEffect_B;//缁忛獙鐗规晥
+        private float ExpValueFloat = 0;
+        private bool SliderOpen = true;
+        public float _Delaytime = 0.1f;//寤惰繜鏃堕棿
+
+
+        [Header("浠诲姟闈㈡澘鐨勭Щ鍔ㄩ�熷害")]
+        public float Speed = 0.2f;
+        [Header("鎶�鑳介潰鏉垮拰鎸夐挳闈㈡澘鐨勭Щ鍔ㄩ�熷害")]
+        public float SwitchSkillTipAndButtonTipSpeed = 0.2f;
+        public float DoFade = 0.2f;
+        [SerializeField] Transform m_LowSettingTipGroup;//鎸夐挳闈㈡澘
+        [SerializeField] Transform m_CastSkillTip;//鎶�鑳介潰鏉�
+        [SerializeField] Transform m_position1_S;
+        [SerializeField] Transform m_position2_S;
+        public static bool recordPositionBool = true;
+
+        [Header("绛栧垝瑕佺殑瑙掑害")]
+        public Vector3 Vec3 = new Vector3(0f, 0f, 225f);
+        [SerializeField] Transform m_ImageRotation;//鍒囨崲婊氬姩
+
+        [SerializeField] GameObject m_TaskAndTeamTip;
+        [SerializeField] GameObject LeftImage;
+        [SerializeField] GameObject RightImg;
+        [SerializeField] Transform m_TaskAndTeamPanel;
+        [SerializeField] Transform TaskListTipAnchor1;
+        [SerializeField] Transform TaskListTipAnchor2;
+
+        [SerializeField] Button m_TaskSwithButton;//鍏充簬鍔熻兘棰勫憡
+        [SerializeField] Transform FunctionForecastPanel;
+        [SerializeField] Transform unctionForecastPosition1;
+        [SerializeField] Transform unctionForecastPosition2;
+
+        [SerializeField] Button m_CollectBtn;
+        [SerializeField] Image m_CollectIcon;
+        [SerializeField] Text m_CollectBtnText;
+        [SerializeField] Button m_RedBag;//绾㈠寘鍏ュ彛鎸夐挳
+        [SerializeField] UIEffect m_RedpackGetSfx;
+        [SerializeField] Button m_SendRedbagBtn;
+
+        [SerializeField] Transform m_EffectTask;//浠诲姟瀹屾垚鐗规晥鎾斁浣嶇疆
+        private int m_CollectNPCID;
+        private uint m_CollectNPCSID;
+        private bool TaskSwithBool = true;
+
+        [SerializeField] Button _SwitchShowBtn;//鍒囨崲鎸夐挳
+        [SerializeField] AnimationFadeOut m_AnimationFadeOut;
+
+        [SerializeField] GameObject m_MailObj;//閭欢鏄鹃殣
+
+        [SerializeField] ClickScreenOtherSpace _MarkRay;//渚挎嵎鍒囨崲鎸夐挳
+
+        [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
+
+        public static event Action<bool> IsCopyOfThePanel;
+        public static event Action IsOpenMaininterface;
+        public static bool CopyOfThePositionBool = true;
+
+        RealmModel m_RealmModel;
+        RealmModel realmModel { get { return m_RealmModel ?? (m_RealmModel = ModelCenter.Instance.GetModel<RealmModel>()); } }
+        FairyModel m_FairyModel;
+        FairyModel fairyModel { get { return m_FairyModel ?? (m_FairyModel = ModelCenter.Instance.GetModel<FairyModel>()); } }
+        FriendsModel _friendsModel;
+        FriendsModel friendsModel { get { return _friendsModel ?? (_friendsModel = ModelCenter.Instance.GetModel<FriendsModel>()); } }
+        PlayerMountDatas m_HorseModel;
+        PlayerMountDatas horsemodel { get { return m_HorseModel ?? (m_HorseModel = ModelCenter.Instance.GetModel<PlayerMountDatas>()); } }
+        PlayerMainDate m_MainModel;
+        PlayerMainDate onMainModel { get { return m_MainModel ?? (m_MainModel = ModelCenter.Instance.GetModel<PlayerMainDate>()); } }
+        PlayerTaskDatas m_PlayerTask;
+        PlayerTaskDatas onPlayerTask { get { return m_PlayerTask ?? (m_PlayerTask = ModelCenter.Instance.GetModel<PlayerTaskDatas>()); } }
+        PlayerRedPacketDatas m_RedPacket;
+        PlayerRedPacketDatas redPacket { get { return m_RedPacket ?? (m_RedPacket = ModelCenter.Instance.GetModel<PlayerRedPacketDatas>()); } }
+        PlayerBuffDatas m_BuffModel;
+        PlayerBuffDatas Buffmodel { get { return m_BuffModel ?? (m_BuffModel = ModelCenter.Instance.GetModel<PlayerBuffDatas>()); } }
+        PKModel m_PKModel;
+        PKModel pKModel { get { return m_PKModel ?? (m_PKModel = ModelCenter.Instance.GetModel<PKModel>()); } }
+        OSRedEnvelopeModel OSEnvelopeModel { get { return ModelCenter.Instance.GetModel<OSRedEnvelopeModel>(); } }
+        RuneTowerModel runeTowerModel { get { return ModelCenter.Instance.GetModel<RuneTowerModel>(); } }
+        TreasureModel treasureModel { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
+        DemonJarModel demonJarModel { get { return ModelCenter.Instance.GetModel<DemonJarModel>(); } }
+        DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
+
+        #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);
+            var inst = BossShowModel.Instance;
+            TaskSwithBool = true;
+            FunctionForecastPanel.localPosition = unctionForecastPosition1.localPosition;
+            LeftImage.SetActive(true);
+            RightImg.SetActive(false);
+            ListBossMapId.Clear();
+            string strBoss = Config.Instance.Get<FuncConfigConfig>("TaskRetract").Numerical1;
+            string[] bossList = ConfigParse.GetMultipleStr(strBoss);//瑙f瀽鍑烘暟缁剕
+            for (int i = 0; i < bossList.Length; i++)
+            {
+                ListBossMapId.Add(int.Parse(bossList[i]));
+            }
+
+            _MarkRay.gameObject.SetActive(false);
+        }
+
+        protected override void AddListeners()
+        {
+            UIEventTrigger.Get(_DownButton.gameObject).OnDown = DownButton;
+            UIEventTrigger.Get(_DownButton.gameObject).OnUp = UpButton;
+            _MarkRay.AddListener(MarkRayButton);
+            _SwitchShowBtn.AddListener(SwitchShowButton);
+            m_TaskSwithButton.AddListener(TaskSwithButton);
+            fairyRequestBtn.onClick.AddListener(OnFairyRequestClick);
+            m_RedBag.AddListener(RedPacketButton);
+            m_SendRedbagBtn.AddListener(SendRedpacketBtn);
+        }
+
+        protected override void OnPreOpen()
+        {
+            if (IsOpenMaininterface != null)
+            {
+                IsOpenMaininterface();
+            }
+            SliderOpen = true;
+            horseRidBool = false;
+            friendsModel.askAddFriendEvent = FriendQuestBtn;
+            m_InGamePusher.Init();
+            m_SkillContainer.Init();
+            m_FunctionForecastTip.Init();
+            m_HeadPortraitTip.Init();
+            m_LowSettingTip.Init();
+            m_ChatTip.Init();
+            m_HighSettingTip.Init();
+            m_TaskListTip.Init();
+            m_IsShowXp.Init();
+            m_TopRightTip.Init();
+            m_SkillButtonEffects.Init();
+            m_AnimationFadeOut.Init();
+            m_TeamInvitationEntrance.Init();
+            m_BossBriefInfos.gameObject.SetActive(false);
+
+            ArticleExperience();//鍏充簬缁忛獙鏉�
+            FriendQuestBtn();
+            UpdateFairyRequest();
+            OnRedBagGet();//鍏充簬绾㈠寘鍏ュ彛
+            CheckSendRedpackBtn();
+            CheckChatTipOpen();
+            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += Updatefighting;
+            FunctionUnlockFlyObject.functionUnLockShowBeginEvent += UnFlodFunctionArea;
+            CoroutineMgr.Instance.MaininterCDTimeEvent += OnMaininterCDTime;
+            fairyModel.UpdateFairyRequestEvent += UpdateFairyRequest;
+            GA_Hero.OnEnterOrExitArea += OnEnterOrExitArea;
+            NewBieCenter.Instance.guideBeginEvent += OnGuideBegin;
+            NewBieCenter.Instance.guideCompletedEvent += OnGuideCompleted;
+            m_CollectBtn.AddListener(OnCollectBtnClick);
+            GA_NpcCollect.OnArrive += OnArriveCollectNPC;
+            GA_NpcCollect.OnLeave += OnLeaveCollectNpc;
+            PlayerRedPacketDatas.OnRedBagGetEvent += OnRedBagGet;
+            WindowCenter.Instance.windowAfterOpenEvent += WindowAfterEvent;
+            WindowCenter.Instance.windowAfterCloseEvent += WindowAfterEvent;
+            OSEnvelopeModel.OSRedEnvelopeUpdateEvent += OnRedBagGet;
+            OSEnvelopeModel.OSRedEnvelopeInfoEnvent += OnRedBagGet;
+            PlayerTaskDatas.CompletionOfTaskEvent += CompletionOfTaskEvent;
+            RedpointCenter.Instance.redpointValueChangeEvent += RedpointValueChangeEvent;
+            NewBieCenter.Instance.guideBeginEvent += GuideBeginEvent;
+
+        }
+
+        private void CompletionOfTaskEvent(int obj)
+        {
+            EffectMgr.Instance.PlayUIEffect(1100, 1100, m_EffectTask, false);
+
+        }
+
+        protected override void OnActived()
+        {
+            m_HighSettingTip.OnActived();
+        }
+
+        IEnumerator Co_Load()
+        {
+            yield return null;
+            WindowCenter.Instance.Open<OffLineOnHookWin>();
+        }
+
+        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);//鏄惁鍦˙oss鍖哄煙
+            if (onMainModel.IsDead || (onMainModel.IsBossAreaTask && !IsBossBool))
+            {
+
+                if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) > 3)
+                {
+                    TaskSwithButton();
+                }
+                onMainModel.IsBossAreaTask = false;
+                onMainModel.IsDead = false;
+            }
+            if (m_AnimationFadeOut.GetIsFadeIn())
+            {
+                _MarkRay.gameObject.SetActive(true);
+            }
+            var inDungeon = IsDungeon();
+            if (inDungeon)
+            {
+                m_TaskAndTeamTip.SetActive(!inDungeon);
+                m_FunctionForecastTip.gameObject.SetActive(false);
+                if (WindowCenter.Instance.CheckOpen<FunctionForecastWin>())
+                {
+                    WindowCenter.Instance.Close<FunctionForecastWin>();
+                }
+                m_TaskSwithButton.gameObject.SetActive(false);
+                if (mapId != PlayerDatas.Instance.baseData.MapID)
+                {
+                    CopyOfThePanel.localPosition = CopyOfThePosition2.localPosition;
+                    CopyOfThePositionBool = false;
+                    m_ContainerBossList.localPosition = CopyOfThePosition1.localPosition;
+                    m_BossBriefInfos.Unfold(false);
+
+                    if (Event_Duplicates != null)
+                    {
+                        Event_Duplicates(false, CopyOfThePanelSpeed);
+                    }
+                }
+                if (m_AnimationFadeOut.GetIsFadeIn() && mapId != PlayerDatas.Instance.baseData.MapID)
+                {
+                    m_AnimationFadeOut.FadeAtOnce();
+                    m_MailObj.SetActive(true);
+                    m_CastSkillTip.localPosition = m_position1_S.localPosition;
+                    m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, 0);
+                    recordPositionBool = true;
+                }
+            }
+            else
+            {             
+                var isNeutralMap = GeneralConfig.Instance.neutralMaps.Contains(PlayerDatas.Instance.baseData.MapID);
+
+                if (isNeutralMap)
+                {
+                    m_BossBriefInfos.gameObject.SetActive(true);
+                    m_BossBriefInfos.Display(ModelCenter.Instance.GetModel<WorldBossModel>().GetWorldBosses(PlayerDatas.Instance.baseData.MapID));
+                }
+                else
+                {
+                    m_BossBriefInfos.gameObject.SetActive(false);
+                }
+
+                if (isNeutralMap)
+                {
+                    if (mapId != PlayerDatas.Instance.baseData.MapID)
+                    {
+                        CopyOfThePanel.localPosition = CopyOfThePosition2.localPosition;
+                        CopyOfThePositionBool = false;
+                        m_ContainerBossList.localPosition = CopyOfThePosition1.localPosition;
+                        m_BossBriefInfos.Unfold(false);
+                    }
+                }
+                else
+                {
+                    if (!IsSitBool && !IsBossBool)
+                    {
+                        CopyOfThePanel.localPosition = CopyOfThePosition1.localPosition;
+                        CopyOfThePositionBool = true;
+                        m_ContainerBossList.localPosition = CopyOfThePosition2.localPosition;
+                        m_BossBriefInfos.Unfold(false);
+                    }
+                }
+
+                if (Event_Duplicates != null && (inDungeon || isNeutralMap))
+                {
+                    Event_Duplicates(true, CopyOfThePanelSpeed);
+                }
+
+                m_TaskAndTeamTip.SetActive(true);
+                m_FunctionForecastTip.gameObject.SetActive(true);
+                m_TaskSwithButton.gameObject.SetActive(true);
+            }
+            mapId = PlayerDatas.Instance.baseData.MapID;
+            m_HighSettingTip.AfterOpen();
+            m_ChatTip.OnAfterOpen();
+            HandleAchievement();
+        }
+
+        protected override void OnPreClose()
+        {
+            m_IsShowXp.Unit();
+            m_InGamePusher.UnInit();
+            m_SkillContainer.UnInit();
+            m_HeadPortraitTip.UnInit();
+            m_LowSettingTip.UnInit();
+            m_ChatTip.UnInit();
+            m_HighSettingTip.UnInit();
+            m_TaskListTip.UnInit();
+            m_TopRightTip.UnInit();
+            m_SkillButtonEffects.UnInit();
+            m_FunctionForecastTip.Unit();
+            m_AnimationFadeOut.Unit();
+            m_TeamInvitationEntrance.UnInit();
+            horseRidBool = false;
+            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting;
+            FunctionUnlockFlyObject.functionUnLockShowBeginEvent -= UnFlodFunctionArea;
+            CoroutineMgr.Instance.MaininterCDTimeEvent -= OnMaininterCDTime;
+            fairyModel.UpdateFairyRequestEvent -= UpdateFairyRequest;
+            GA_Hero.OnEnterOrExitArea -= OnEnterOrExitArea;
+            NewBieCenter.Instance.guideBeginEvent -= OnGuideBegin;
+            NewBieCenter.Instance.guideCompletedEvent -= OnGuideCompleted;
+            PlayerRedPacketDatas.OnRedBagGetEvent -= OnRedBagGet;
+            WindowCenter.Instance.windowAfterOpenEvent -= WindowAfterEvent;
+            WindowCenter.Instance.windowAfterCloseEvent -= WindowAfterEvent;
+            OSEnvelopeModel.OSRedEnvelopeUpdateEvent -= OnRedBagGet;
+            OSEnvelopeModel.OSRedEnvelopeInfoEnvent -= OnRedBagGet;
+            PlayerTaskDatas.CompletionOfTaskEvent -= CompletionOfTaskEvent;
+            RedpointCenter.Instance.redpointValueChangeEvent -= RedpointValueChangeEvent;
+            NewBieCenter.Instance.guideBeginEvent -= GuideBeginEvent;
+            if (WindowCenter.Instance.CheckOpen<FunctionForecastWin>())
+            {
+                WindowCenter.Instance.CloseImmediately<FunctionForecastWin>();
+            }
+            m_CollectBtn.RemoveAllListeners();
+            GA_NpcCollect.OnArrive -= OnArriveCollectNPC;
+            GA_NpcCollect.OnLeave -= OnLeaveCollectNpc;
+            m_CollectBtn.gameObject.SetActive(false);
+        }
+
+        private void GuideBeginEvent()
+        {
+            if (NewBieCenter.Instance.inGuiding
+                && (NewBieCenter.Instance.currentGuide == 89
+                || NewBieCenter.Instance.currentGuide == TrialDungeonModel.TRIALEXCHANGE_GUIDE))
+            {
+                UnFlodFunctionArea(true, 0);
+            }
+        }
+
+        private void RedpointValueChangeEvent(int _id)
+        {
+            if (_id == OSEnvelopeModel.m_RedAchieveRedpoint.id)
+            {
+                CheckSendRedpackBtn();
+            }
+        }
+
+        private void OnRedBagGet()//鍒ゆ柇鏄惁寮�鍚孩鍖呭叆鍙�
+        {
+            if (m_RedpackGetSfx.IsPlaying)
+            {
+                m_RedpackGetSfx.StopImediatly();
+            }
+            if (OSEnvelopeModel.CanGetEnvelope())
+            {
+                m_RedBag.gameObject.SetActive(true);
+                if (!m_RedpackGetSfx.IsPlaying)
+                {
+                    m_RedpackGetSfx.Play();
+                }
+            }
+            else
+            {
+                if (redPacket.IsRedBagGetBool)
+                {
+                    m_RedBag.gameObject.SetActive(true);
+                    if (!m_RedpackGetSfx.IsPlaying)
+                    {
+                        m_RedpackGetSfx.Play();
+                    }
+                }
+                else
+                {
+                    m_RedBag.gameObject.SetActive(false);
+                }
+            }
+            CheckSendRedpackBtn();
+        }
+
+        private void CheckSendRedpackBtn()
+        {
+            m_SendRedbagBtn.gameObject.SetActive(!m_RedBag.gameObject.activeSelf && OSEnvelopeModel.m_RedAchieveRedpoint.state == RedPointState.Simple);
+        }
+
+        private void OnGuideBegin()//寮曞寮�濮�
+        {
+            if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) > 5)
+            {
+                TaskSwithButton();
+            }
+        }
+
+        private void OnGuideCompleted(int obj)//寮曞缁撴潫
+        {
+            if (m_AnimationFadeOut.GetIsFadeIn())
+            {
+                _MarkRay.gameObject.SetActive(true);
+            }
+        }
+
+        private void OnEnterOrExitArea(MapArea.E_Type _areaType, bool _enter)
+        {
+           // DesignDebug.LogError(_areaType + ".." + _enter);
+            if (PlayerDatas.Instance.baseData.MapID == 10040 && _areaType != MapArea.E_Type.Boss && _enter)
+            {
+                if (Buffmodel.PkType != onMainModel.AreaState)
+                {
+                    DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)onMainModel.AreaState);
+                }
+            }
+
+            if (_areaType == MapArea.E_Type.Neutral && _enter)
+            {
+                WindowCenter.Instance.Open<NeutralMarkWin>();
+                int mapID = PlayerDatas.Instance.baseData.MapID;
+                var config = Config.Instance.Get<MapConfig>(mapID);
+                int[] atkInt = pKModel.GetArea(config.AtkType).ToArray();
+                if (atkInt.Length > 1 && Buffmodel.PkType != 5)
+                {
+                    onMainModel.AreaState = Buffmodel.PkType;
+                    DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)5);
+                }
+            }
+
+
+            if (_areaType == MapArea.E_Type.Neutral && !_enter)
+            {
+                if (Buffmodel.PkType != onMainModel.AreaState)
+                {
+                    DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)onMainModel.AreaState);
+                }
+            }
+
+            if ((_areaType == MapArea.E_Type.Boss && _enter) || (_areaType == MapArea.E_Type.Dazuo && _enter))
+            {
+                if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) < 2 && ListBossMapId.Contains(PlayerDatas.Instance.baseData.MapID))
+                {
+                    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)
+                    {
+                        return;
+                    }
+                    recordPositionBool = false;
+                    SwitchShowButton();
+                }
+            }
+            if ((_areaType == MapArea.E_Type.Boss && !_enter) || (_areaType != MapArea.E_Type.Normal && (_areaType != MapArea.E_Type.Boss && _enter)))
+            {
+                if (onMainModel.IsBossAreaTask)
+                {
+                    TaskSwithButton();
+                    onMainModel.IsBossAreaTask = false;
+                }
+            }
+            var inDungeon = IsDungeon();
+            var isNeutralMap = GeneralConfig.Instance.neutralMaps.Contains(PlayerDatas.Instance.baseData.MapID);
+
+            if ((_areaType == MapArea.E_Type.Boss && !_enter) || (_areaType == MapArea.E_Type.Dazuo && !_enter))
+            {
+                if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon && !isNeutralMap)
+                {
+                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
+                    if (IsCopyOfThePanel != null)
+                    {
+                        IsCopyOfThePanel(true);
+                    }
+                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
+                    m_BossBriefInfos.Unfold(false);
+
+                    if (SitEvent != null)
+                    {
+                        SitEvent(false);
+                    }
+                }
+            }
+        }
+
+        private void OnMaininterCDTime()
+        {
+            MarkRayButton();
+        }
+
+        protected override void OnAfterClose()
+        {
+        }
+
+        private Vector2 startPosition;
+        private Vector2 endPosition;
+        private bool horseRidBool = false;
+        protected override void LateUpdate()
+        {
+            base.LateUpdate();
+            if (PlayerDatas.Instance.hero != null
+             && PlayerDatas.Instance.hero.State == E_ActorState.AutoRun
+             && onMainModel.MoveBool)
+            {
+                if (!WindowCenter.Instance.CheckOpen("PathfindingIconWin"))
+                {
+                    WindowCenter.Instance.Open<PathfindingIconWin>(true);
+                }
+            }
+            else
+            {
+                onMainModel.MoveBool = false;
+                if (WindowCenter.Instance.CheckOpen("PathfindingIconWin"))
+                {
+                    WindowCenter.Instance.CloseImmediately<PathfindingIconWin>();
+                }
+            }
+
+            if (runeTowerModel.newPassFloor > 0 && !IsDungeon())
+            {
+                if (!WindowCenter.Instance.CheckOpen("NewBieWin") && !WindowCenter.Instance.CheckOpen("TreasureNewGotWin"))
+                {
+                    if (!WindowCenter.Instance.CheckOpen("RuneNewGotWin"))
+                    {
+                        WindowCenter.Instance.Open<RuneNewGotWin>();
+                    }
+                }
+            }
+
+        }
+
+
+        public void FriendQuestBtn()
+        {
+            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Friend))
+            {
+                friendQuestBtn.onClick.RemoveAllListeners();
+                if (friendsModel.GetFriendQuestDict().Count > 0)
+                {
+                    friendQuestBtn.gameObject.SetActive(true);
+                    friendQuestBtn.onClick.AddListener(OnClickFriendQuest);
+                }
+                else
+                {
+                    friendQuestBtn.gameObject.SetActive(false);
+                }
+            }
+            else
+            {
+                friendQuestBtn.gameObject.SetActive(false);
+            }
+        }
+
+        private void OnFairyRequestClick()
+        {
+            WindowCenter.Instance.Open<FairyInviteWin>();
+        }
+        private void RedPacketButton()//鍏充簬绾㈠寘鐨勫姛鑳� 鍏ュ彛
+        {
+            RedEnvelopeModel envelopeModel = ModelCenter.Instance.GetModel<RedEnvelopeModel>();
+            RedEnvelopeModel.RedEnvelope _envelope;
+            if (envelopeModel.TryGetLatestEnvelope(out _envelope))
+            {
+                if (OSEnvelopeModel.m_OpenServerGetRedpin.state == RedPointState.GetReward)
+                {
+                    WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
+                    ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().JumpType = 2;
+                    ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().autoOpen = true;
+                    WindowCenter.Instance.Open<OpenServerActivityWin>(false, 2);
+                }
+                else
+                {
+                    WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.RedPacket);
+                }
+            }
+        }
+
+        private void SendRedpacketBtn()
+        {
+            if (OSEnvelopeModel.m_RedAchieveRedpoint.state == RedPointState.Simple)
+            {
+                WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
+                ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().JumpType = 1;
+                WindowCenter.Instance.Open<OpenServerActivityWin>(false, 2);
+            }
+        }
+
+        private void UpdateFairyRequest()
+        {
+            fairyRequestBtn.gameObject.SetActive(fairyModel.FairyRequestRedPoint.count > 0);
+        }
+
+        private void OnClickFriendQuest()
+        {
+            WindowCenter.Instance.Open<FriendQuestWin>();
+        }
+
+        public void MarkRayButton()
+        {
+            if (NewBieCenter.Instance.inGuiding)
+            {
+                return;
+            }
+            var _treasureModel = ModelCenter.Instance.GetModel<TreasureModel>();
+            if (_treasureModel.treasureStageUpShow || _treasureModel.newGotShowing)
+            {
+                return;
+            }
+            var inDungeon = IsDungeon();
+
+            bool IsBossBool = PlayerDatas.Instance.hero == null ? false : MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//鏄惁鍦˙oss鍖哄煙
+            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 (IsCopyOfThePanel != null)
+                    {
+                        IsCopyOfThePanel(false);
+                    }
+                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
+                    m_BossBriefInfos.Unfold(false);
+
+                    if (Event_Duplicates != null && inDungeon)
+                    {
+                        Event_Duplicates(false, CopyOfThePanelSpeed);
+                    }
+
+                }
+                if (!IsBossBool && !IsSitBool)
+                {
+                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
+                    {
+                        CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
+                        if (IsCopyOfThePanel != null)
+                        {
+                            IsCopyOfThePanel(true);
+                        }
+                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
+                        m_BossBriefInfos.Unfold(false);
+
+                        if (SitEvent != null)
+                        {
+                            SitEvent(false);
+                        }
+                    }
+                }
+                m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
+                m_CastSkillTip.DOLocalMoveX(m_position1_S.localPosition.x, SwitchSkillTipAndButtonTipSpeed);
+                m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, DoFade);
+                m_MailObj.SetActive(true);
+                m_AnimationFadeOut.FadeOut();
+                recordPositionBool = true;
+            }
+        }
+        void DownButton(GameObject go)
+        {
+            _ExpRate.gameObject.SetActive(true);
+
+        }
+        void UpButton(GameObject go)
+        {
+            _ExpRate.gameObject.SetActive(false);
+        }
+
+        void TaskSwithButton()
+        {
+            if (onMainModel.IsBossAreaTask)
+            {
+                onMainModel.IsBossAreaTask = false;
+            }
+            if (TaskSwithBool)//闅愯棌
+            {
+                m_TaskAndTeamPanel.DOLocalMoveX(TaskListTipAnchor2.localPosition.x, Speed);
+                if (m_FunctionForecastTip.gameObject.activeSelf)
+                {
+                    FunctionForecastPanel.DOLocalMoveX(unctionForecastPosition2.localPosition.x, Speed);
+
+                }
+                LeftImage.SetActive(false);
+                RightImg.SetActive(true);
+                if (WindowCenter.Instance.CheckOpen<FunctionForecastWin>())
+                {
+                    WindowCenter.Instance.Close<FunctionForecastWin>();
+                }
+            }
+            else//鏄剧ず
+            {
+                m_TaskAndTeamPanel.DOLocalMoveX(TaskListTipAnchor1.localPosition.x, Speed);
+                if (m_FunctionForecastTip.gameObject.activeSelf)
+                {
+                    FunctionForecastPanel.DOLocalMoveX(unctionForecastPosition1.localPosition.x, Speed);
+                }
+                LeftImage.SetActive(true);
+                RightImg.SetActive(false);
+            }
+            TaskSwithBool = !TaskSwithBool;
+        }
+
+        void SwitchShowButton()
+        {
+            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 (IsSitBool && SitEvent != null)
+                    {
+                        SitEvent(false);
+                    }
+                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
+                    if (IsCopyOfThePanel != null)
+                    {
+                        IsCopyOfThePanel(true);
+                    }
+                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
+                    m_BossBriefInfos.Unfold(false);
+
+                    if (Event_Duplicates != null && inDungeon)
+                    {
+                        Event_Duplicates(true, CopyOfThePanelSpeed);
+                    }
+                }
+                if (!IsBossBool && !IsSitBool)
+                {
+                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
+                    {
+                        CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
+                        if (IsCopyOfThePanel != null)
+                        {
+                            IsCopyOfThePanel(true);
+                        }
+                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
+                        m_BossBriefInfos.Unfold(false);
+
+                        if (SitEvent != null)
+                        {
+                            SitEvent(false);
+                        }
+                    }
+                }
+                m_ImageRotation.DOLocalRotate(Vec3, SwitchSkillTipAndButtonTipSpeed);
+                m_CastSkillTip.DOLocalMoveX(m_position2_S.localPosition.x, SwitchSkillTipAndButtonTipSpeed);
+                m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(0, DoFade);
+                m_MailObj.SetActive(false);
+                m_AnimationFadeOut.FadeIn();
+                _MarkRay.gameObject.SetActive(true);
+            }
+            else//鏄剧ず榛樿
+            {
+                if (inDungeon || IsBossBool || IsSitBool || isNeutralMap)
+                {
+                    if (IsSitBool && SitEvent != null)
+                    {
+                        SitEvent(true);
+                    }
+                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
+                    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);
+                    }
+                }
+                if (!IsBossBool && !IsSitBool)
+                {
+                    if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2 && !inDungeon)
+                    {
+                        CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
+                        if (IsCopyOfThePanel != null)
+                        {
+                            IsCopyOfThePanel(true);
+                        }
+                        m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
+                        m_BossBriefInfos.Unfold(false);
+
+                        if (SitEvent != null)
+                        {
+                            SitEvent(false);
+                        }
+                    }
+                }
+                m_ImageRotation.DOLocalRotate(Vector3.zero, SwitchSkillTipAndButtonTipSpeed);
+                m_CastSkillTip.DOLocalMoveX(m_position1_S.localPosition.x, SwitchSkillTipAndButtonTipSpeed);
+                m_CastSkillTip.GetComponent<CanvasGroup>().DOFade(1, DoFade);
+                m_MailObj.SetActive(true);
+                m_AnimationFadeOut.FadeOut();
+                _MarkRay.gameObject.SetActive(false);
+            }
+            recordPositionBool = !recordPositionBool;
+        }
+
+        void ArticleExperience()//鍏充簬缁忛獙鏉�
+        {
+            int NowLv = (int)PlayerDatas.Instance.baseData.LV;
+            if (Config.Instance.Get<PlayerLVConfig>(NowLv) != null)
+            {
+                ulong maxValue = (ulong)PlayerLVConfig.GetExpByPlayerLv(NowLv);
+                ulong nowVlaue = (ulong)PlayerDatas.Instance.baseData.TotalExp + (ulong)PlayerDatas.Instance.baseData.ExpPoint * 100000000;
+                if (SliderOpen)
+                {
+                    _ExpSlider.delay = 0;
+                    _ExpSlider.stage = NowLv;
+                    _ExpSlider.ResetStage();
+                    ExpValueFloat = ((float)nowVlaue / (float)maxValue);
+                    _ExpSlider.value = (float)ExpValueFloat;
+                    SliderOpen = false;
+                }
+                else
+                {
+                    if (NowLv - _ExpSlider.stage >= 15)
+                    {
+                        _ExpSlider.delay = 0;
+                    }
+                    else
+                    {
+                        _ExpSlider.delay = _Delaytime;
+                    }
+                    ExpValueFloat = ((float)nowVlaue / (float)maxValue);
+                    if (ExpValueFloat != _ExpSlider.value)
+                    {
+                        m_UIEffect_A.Play();
+                        if (m_UIEffect_A.IsPlaying)
+                        {
+                            if (!m_UIEffect_B.IsPlaying)
+                            {
+                                m_UIEffect_B.Play();
+                            }
+                        }
+                    }
+                    _ExpSlider.stage = NowLv;
+                    _ExpSlider.value = (float)ExpValueFloat;
+                }
+                _ExpRate.text = (float)Math.Round((double)nowVlaue / maxValue, 2, MidpointRounding.AwayFromZero) * 100 + "%";
+            }
+        }
+
+        void Updatefighting(PlayerDataRefresh _tCDBPlayerRefresh)//鏁版嵁鐨勫埛鏂�
+        {
+            ArticleExperience();//鍏充簬缁忛獙鏉�
+        }
+
+        void OnCollectBtnClick()
+        {
+            if (m_CollectNPCID != 0 && m_CollectNPCSID != 0)
+            {
+                NPCInteractProcessor.InvokeEvent(E_NpcType.Collect, m_CollectNPCID, m_CollectNPCSID);
+            }
+        }
+
+        void OnArriveCollectNPC(uint sid, int npcID)
+        {
+            m_CollectNPCID = npcID;
+            m_CollectNPCSID = sid;
+            m_CollectBtn.gameObject.SetActive(true);
+            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
+            m_CollectIcon.SetSprite(mapId == 31230 ? "TY_UI_8" : "TY_UI_6");
+            m_CollectIcon.SetNativeSize();
+            m_CollectBtnText.text = mapId == 31230 ? Language.Get("Collect_FairyFeast") : Language.Get("Collect_Normal");
+        }
+
+        void OnLeaveCollectNpc(uint sid, int npcID)
+        {
+            if (m_CollectNPCID == npcID && m_CollectNPCSID == sid)
+            {
+                m_CollectNPCID = 0;
+                m_CollectNPCSID = 0;
+            }
+            m_CollectBtn.gameObject.SetActive(false);
+        }
+
+        #endregion
+
+        private bool IsDungeon()
+        {
+            var mapId = PlayerDatas.Instance.baseData.MapID;
+            var mapConfig = Config.Instance.Get<MapConfig>(mapId);
+            return mapConfig != null && mapConfig.MapFBType != 0;
+        }
+
+        private void UnFlodFunctionArea(bool _unflod, int _skillGroup)
+        {
+            if (_unflod)
+            {
+                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);
+                }
+
+                if (Vector3.Distance(m_TaskAndTeamPanel.localPosition, TaskListTipAnchor1.localPosition) > 5)
+                {
+                    TaskSwithButton();
+                    onMainModel.IsBossAreaTask = false;
+                }
+                if (Vector3.Distance(CopyOfThePanel.position, CopyOfThePosition1.position) > 2)
+                {
+                    CopyOfThePanel.DOLocalMoveY(CopyOfThePosition1.localPosition.y, CopyOfThePanelSpeed);
+                    m_ContainerBossList.DOLocalMoveY(CopyOfThePosition2.localPosition.y, CopyOfThePanelSpeed);
+                    m_BossBriefInfos.Unfold(false);
+                    if (IsCopyOfThePanel != null)
+                    {
+                        IsCopyOfThePanel(true);
+                    }
+                }
+                m_HighSettingTip.ShowButtonNow();
+            }
+            else
+            {
+                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);
+                }
+                m_HighSettingTip.ShowButtonNow();
+                //   m_HighSettingTip.ColseButtonNow();
+
+                if (_skillGroup != 0)
+                {
+                    m_SkillContainer.skillTurnplate.SwitchGroup(_skillGroup);
+                }
+            }
+        }
+
+        void HandleAchievement()
+        {
+            if (AchievementGoto.achievementType == AchievementGoto.ExcuteSkill)
+            {
+                if (m_AnimationFadeOut.GetIsFadeIn())
+                {
+                    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);
+                }
+                var _cfg = Config.Instance.Get<SuccessConfig>(AchievementGoto.guideAchievementId);
+                var _skillId = ModelCenter.Instance.GetModel<AchievementModel>().FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
+                if (_skillId != 0)
+                {
+                    if (ModelCenter.Instance.GetModel<SkillModel>().GetXpSkillID() != _skillId)
+                    {
+                        return;
+                    }
+                    if (PlayerDatas.Instance.hero.SkillMgr.Get(_skillId).cd > 0)
+                    {
+                        MessageWin.Inst.ShowFixedTip(Language.Get("SkillCooling_Z"));
+                    }
+                    else
+                    {
+                        var _effect = AchievementGuideEffectPool.Require(3);
+                        _effect.transform.SetParentEx(m_IsShowXp.transform, Vector3.zero, Vector3.zero, Vector3.one);
+                    }
+                    AchievementGoto.achievementType = 0;
+                }
+                else
+                {
+                    AchievementGoto.achievementType = 0;
+                }
+            }
+        }
+
+        void CheckChatTipOpen()
+        {
+            bool _chatWinOpen = WindowCenter.Instance.CheckOpen<ChatWin>();
+            m_ChatTip.gameObject.SetActive(!_chatWinOpen);
+            if (!_chatWinOpen)
+            {
+                m_ChatTip.CheckRealmSfx();
+            }
+        }
+
+        private void WindowAfterEvent(Window _win)
+        {
+            if (_win is ChatWin)
+            {
+                CheckChatTipOpen();
+            }
+        }
+
+        public void IsShowButtonGroup()
+        {
+            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);
+            }
+
+
+        }
+
+    }
+
+}
+
+
+
+

--
Gitblit v1.8.0