//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Saturday, October 14, 2017 //-------------------------------------------------------- using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using DG.Tweening; using System; 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] HighSettingFadeInFadeOut m_HighSettingFadeInFadeOut; [SerializeField] TaskListTip m_TaskListTip;//任务 [SerializeField] TopRightTip m_TopRightTip; [SerializeField] FunctionForecastTip m_FunctionForecastTip;//功能预告 [SerializeField] IsShowXpButton m_IsShowXp;//XP 技能常显 [SerializeField] SkillButtonEffects m_SkillButtonEffects; [SerializeField] FairyLeagueRemindBehaviour m_FairyLeagueRemind; [SerializeField] TeamInvitationEntrance m_TeamInvitationEntrance; [SerializeField] FairyCallMemberBehaviour m_FairyCallBehaviour; [SerializeField] MapSwitchingBehaviour m_MapSwitchingBehaviour; [SerializeField] DungeonBossBriefInfoContainer m_BossBriefInfos; [SerializeField] AnimationFadeOut m_AnimationFadeOut; [SerializeField] IntensifySmoothSlider _ExpSlider;//经验条 [SerializeField] Button _DownButton;//查看经验数值 [SerializeField] Text _ExpRate;//数值 [SerializeField] UIEffect m_UIEffect_A;//经验特效 [SerializeField] UIEffect m_UIEffect_B;//经验特效 [SerializeField] Button _SwitchShowBtn;//切换按钮 [SerializeField] Button m_TaskSwithButton;//关于功能预告 [SerializeField] Transform m_EffectTask;//任务完成特效播放位置 [SerializeField] Transform CopyOfThePanel; [SerializeField] GameObject m_TaskAndTeamTip; [SerializeField] GameObject m_MailObj;//邮件显隐 [SerializeField] ClickScreenOtherSpace _MarkRay;//便捷切换按钮 [SerializeField] MainPositionTween m_MainPositionTween; [SerializeField] MainButtonMisc m_MainButtonMisc; #region private bool TaskSwithBool = true; private float ExpValueFloat = 0; private bool SliderOpen = true; public static bool recordPositionBool = true; private int mapId = 0; public static event Action Event_ChatCallback; public static event Action Event_Duplicates; #endregion private List ListBossMapId = new List();//用于boss区域地图id public static event Action IsCopyOfThePanel; public static event Action IsOpenMaininterface; PlayerMainDate onMainModel { get { return ModelCenter.Instance.GetModel(); } } TaskModel onPlayerTask { get { return ModelCenter.Instance.GetModel(); } } BuffModel Buffmodel { get { return ModelCenter.Instance.GetModel(); } } PKModel pKModel { get { return ModelCenter.Instance.GetModel(); } } FairyGrabBossModel fairyGrabBossModel { get { return ModelCenter.Instance.GetModel(); } } FeatureNoticeModel featureNoticeModel { get { return ModelCenter.Instance.GetModel(); } } TreasureModel treasureModel { get { return ModelCenter.Instance.GetModel(); } } #region Built-in private bool IsUpdateBool = true; protected override void BindController() { m_MapSwitchingBehaviour.InitAwake(); recordPositionBool = true; TaskSwithBool = true; m_MainPositionTween.SetTaskPos(true); m_MailObj.SetActive(true); ListBossMapId.Clear(); string strBoss = FuncConfigConfig.Get("TaskRetract").Numerical1; string[] bossList = ConfigParse.GetMultipleStr(strBoss);//解析出数组| for (int i = 0; i < bossList.Length; i++) { ListBossMapId.Add(int.Parse(bossList[i])); } } protected override void AddListeners() { UIEventTrigger.Get(_DownButton.gameObject).OnDown = DownButton; UIEventTrigger.Get(_DownButton.gameObject).OnUp = UpButton; _MarkRay.AddListener(MarkRayButton); _SwitchShowBtn.SetListener(SwitchShowButton); m_TaskSwithButton.SetListener(TaskSwithButton); } protected override void OnPreOpen() { if (IsOpenMaininterface != null) { IsOpenMaininterface(); } IsUpdateBool = true; SliderOpen = true; m_InGamePusher.Init(); m_SkillContainer.Init(); m_FunctionForecastTip.Init(); m_HeadPortraitTip.Init(); m_LowSettingTip.Init(); m_ChatTip.Init(); m_HighSettingTip.Init(); m_HighSettingFadeInFadeOut.Init(); m_TaskListTip.Init(); m_IsShowXp.Init(); m_TopRightTip.Init(); m_SkillButtonEffects.Init(); m_AnimationFadeOut.Init(); m_TeamInvitationEntrance.Init(); m_FairyCallBehaviour.Init(); m_MapSwitchingBehaviour.Init(); m_FairyLeagueRemind.Init(); m_MainButtonMisc.Init(); m_BossBriefInfos.gameObject.SetActive(false); ArticleExperience();//关于经验条 CheckChatTipOpen(); PlayerDatas.Instance.playerDataRefreshEvent += Updatefighting; FunctionUnlockFlyObject.functionUnLockShowBeginEvent += UnFlodFunctionArea; GA_Hero.OnEnterOrExitArea += OnEnterOrExitArea; NewBieCenter.Instance.guideBeginEvent += OnGuideBegin; NewBieCenter.Instance.guideCompletedEvent += OnGuideCompleted; WindowCenter.Instance.windowAfterOpenEvent += WindowAfterEvent; WindowCenter.Instance.windowAfterCloseEvent += WindowAfterEvent; NewBieCenter.Instance.guideBeginEvent += GuideBeginEvent; fairyGrabBossModel.bossGrabHintEvent += bossGrabHintEvent; GlobalTimeEvent.Instance.secondEvent += secondEvent; ProcessCrossServerOneVsOne(); } protected override void OnActived() { m_MainButtonMisc.OnActived(); IsShowTaskPanel();//是否显示任务面板 } protected override void OnAfterOpen() { bool IsBossBool = PlayerDatas.Instance.hero != null && MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域 var inDungeon = IsDungeon(); var judge1 = onMainModel.IsDead || (onMainModel.IsBossAreaTask && !IsBossBool && !m_MainPositionTween.IsTaskAndPanelShow); var judge2 = mapId != PlayerDatas.Instance.baseData.MapID; if (judge1) { TaskSwithButton(); onMainModel.IsBossAreaTask = false; onMainModel.IsDead = false; } if (m_AnimationFadeOut.GetIsFadeIn()) { _MarkRay.gameObject.SetActive(true); } else { _MarkRay.gameObject.SetActive(false); } if (inDungeon) { m_FunctionForecastTip.gameObject.SetActive(false); if (judge2) { SetTipPanelOrBossList(false, false); } if (m_AnimationFadeOut.GetIsFadeIn() && judge2) { m_MailObj.SetActive(true); m_MainPositionTween.SetSkillTipOrRightTipPos(true); recordPositionBool = true; } } else { m_FunctionForecastTip.gameObject.SetActive(true); var isNeutralMap = GeneralDefine.neutralBossMaps.Contains(PlayerDatas.Instance.baseData.MapID); if (isNeutralMap) { m_BossBriefInfos.gameObject.SetActive(true); if (PlayerDatas.Instance.baseData.MapID == DogzDungeonModel.DATA_MAPID) { var bosses = ModelCenter.Instance.GetModel().GetBosses(); m_BossBriefInfos.Display(bosses); } else if (PlayerDatas.Instance.baseData.MapID == CrossServerBossModel.DATA_MAPID) { var bosses = ModelCenter.Instance.GetModel().GetBosses(); m_BossBriefInfos.Display(bosses); } else { var bosses = ModelCenter.Instance.GetModel().GetWorldBosses(PlayerDatas.Instance.baseData.MapID); m_BossBriefInfos.Display(bosses); } } else { m_BossBriefInfos.gameObject.SetActive(false); } if (isNeutralMap && judge2) { SetTipPanelOrBossList(false, false); } else if (!isNeutralMap && !IsBossBool) { SetTipPanelOrBossList(true, false); } } 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_HighSettingFadeInFadeOut.UnInit(); m_TaskListTip.UnInit(); m_TopRightTip.UnInit(); m_SkillButtonEffects.UnInit(); m_FunctionForecastTip.Unit(); m_AnimationFadeOut.Unit(); m_TeamInvitationEntrance.UnInit(); m_FairyCallBehaviour.UnInit(); m_FairyLeagueRemind.UnInit(); m_MainButtonMisc.UnInit(); PlayerDatas.Instance.playerDataRefreshEvent -= Updatefighting; FunctionUnlockFlyObject.functionUnLockShowBeginEvent -= UnFlodFunctionArea; GA_Hero.OnEnterOrExitArea -= OnEnterOrExitArea; NewBieCenter.Instance.guideBeginEvent -= OnGuideBegin; NewBieCenter.Instance.guideCompletedEvent -= OnGuideCompleted; WindowCenter.Instance.windowAfterOpenEvent -= WindowAfterEvent; WindowCenter.Instance.windowAfterCloseEvent -= WindowAfterEvent; NewBieCenter.Instance.guideBeginEvent -= GuideBeginEvent; GlobalTimeEvent.Instance.secondEvent -= secondEvent; fairyGrabBossModel.bossGrabHintEvent -= bossGrabHintEvent; } protected override void LateUpdate() { base.LateUpdate(); var judge1 = PlayerDatas.Instance.hero != null && PlayerDatas.Instance.hero.State == E_ActorState.AutoRun && onMainModel.MoveBool; var judge2 = WindowCenter.Instance.IsOpen(); if (judge1 && !judge2) { WindowCenter.Instance.Open(true); } if (!judge1 && judge2) { onMainModel.MoveBool = false; WindowCenter.Instance.Close(); } if (onPlayerTask.TaskOverBool) { onPlayerTask.TaskOverBool = false; EffectMgr.Instance.PlayUIEffect(1100, 1100, m_EffectTask, false); } } protected override void OnAfterClose() { } #endregion private void secondEvent() { SetAtkType(); if (IsUpdateBool) { StartCoroutine(featureNoticeModel.WhetherToPlayTheBox());//功能预告 IsUpdateBool = false; } } private void GuideBeginEvent() { var judge = NewBieCenter.Instance.inGuiding && (NewBieCenter.Instance.currentGuide == 89 || NewBieCenter.Instance.currentGuide == TrialDungeonModel.TRIALEXCHANGE_GUIDE); if (judge) { UnFlodFunctionArea(true, 0); } } private void OnGuideBegin()//引导开始 { if (!m_MainPositionTween.IsTaskAndPanelShow) { TaskSwithButton(); } } private void OnGuideCompleted(int obj)//引导结束 { if (m_AnimationFadeOut.GetIsFadeIn()) { _MarkRay.gameObject.SetActive(true); } } private void OnEnterOrExitArea(MapArea.E_Type _areaType, bool _enter) { if (PlayerDatas.Instance.baseData.MapID == 10040 && _areaType != MapArea.E_Type.Boss && _enter) { DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)onMainModel.AreaState); } if ((_areaType == MapArea.E_Type.Neutral || _areaType == MapArea.E_Type.Boss) && _enter) { WindowCenter.Instance.Open(); AtkTypeChange(); } 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) { if (m_MainPositionTween.IsTaskAndPanelShow && ListBossMapId.Contains(PlayerDatas.Instance.baseData.MapID)) { TaskSwithButton(); onMainModel.IsBossAreaTask = true; } if (m_MainPositionTween.IsSetCopyOfThePanelShow) { 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 = GeneralDefine.neutralBossMaps.Contains(PlayerDatas.Instance.baseData.MapID); if (_areaType == MapArea.E_Type.Boss && !_enter) { if (!m_MainPositionTween.IsSetCopyOfThePanelShow && !inDungeon && !isNeutralMap) { SetTipPanelOrBossList(true, true); } } } private void AtkTypeChange()//骑宠争夺是否切换状态 { var mapID = PlayerDatas.Instance.baseData.MapID; var config = MapConfig.Get(mapID); var atkInt = pKModel.GetArea(config.AtkType); var IsBossBool = MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域 var Line = 0; fairyGrabBossModel.TryGetFairyGrabBossLine(out Line); if (PlayerDatas.Instance.baseData.MapID == 10040 && IsBossBool && Line == PlayerDatas.Instance.baseData.FBID) { DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)0); onMainModel.AreaState = Buffmodel.PkType; return; } if (PlayerDatas.Instance.baseData.MapID == 10040 && IsBossBool && Line != PlayerDatas.Instance.baseData.FBID)//逍遥城普通Boss区域处理 { DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)5); onMainModel.AreaState = Buffmodel.PkType; return; } if (!onMainModel.ShieldedArea.Contains(PlayerDatas.Instance.baseData.MapID))//前四只Boss和活动Boss特殊处理 { if (IsBossBool && atkInt.Count > 1 && Buffmodel.PkType != 5) { onMainModel.AreaState = Buffmodel.PkType; DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)5); } } } private void SetAtkType()//逍遥城非boss区域特殊处理 { if (PlayerDatas.Instance.hero != null) { bool IsBossBool = MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域 if (PlayerDatas.Instance.baseData.MapID == 10040 && !IsBossBool && Buffmodel.PkType != 0) { DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)0); Buffmodel.PkType = 0; } } } public void MarkRayButton() { if (NewBieCenter.Instance.inGuiding) { return; } if (treasureModel.treasureStageUpShow || treasureModel.newGotShowing) { return; } var inDungeon = IsDungeon(); var inBossArea = PlayerDatas.Instance.hero == null ? false : MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域 var isNeutralMap = GeneralDefine.neutralBossMaps.Contains(PlayerDatas.Instance.baseData.MapID); if (!recordPositionBool) { if (inDungeon || inBossArea || isNeutralMap) { SetTipPanelOrBossList(false, true); } if (!inBossArea) { if (!m_MainPositionTween.IsSetCopyOfThePanelShow && !inDungeon) { SetTipPanelOrBossList(true, true); } } m_MailObj.SetActive(true); recordPositionBool = true; m_MainPositionTween.SetRotation(false); m_MainPositionTween.SetSkillTipOrRightTipPosTween(true); } } void DownButton(GameObject go) { _ExpRate.gameObject.SetActive(true); } void UpButton(GameObject go) { _ExpRate.gameObject.SetActive(false); } void TaskSwithButton() { if (TaskSwithBool)//隐藏 { m_MainPositionTween.SetTaskPosTween(false); } else//显示 { m_MainPositionTween.SetTaskPosTween(true); } if (onMainModel.IsBossAreaTask) { onMainModel.IsBossAreaTask = false; } TaskSwithBool = !TaskSwithBool; } void SwitchShowButton() { var inDungeon = IsDungeon(); bool IsBossBool = MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss); var isNeutralMap = GeneralDefine.neutralBossMaps.Contains(PlayerDatas.Instance.baseData.MapID); var judge1 = inDungeon || IsBossBool || isNeutralMap; var judge2 = !IsBossBool && !m_MainPositionTween.IsSetCopyOfThePanelShow && !inDungeon; if (recordPositionBool)//显示功能入口 { if (judge1 || judge2) { SetTipPanelOrBossList(true, true); } m_MailObj.SetActive(false); _MarkRay.gameObject.SetActive(true); m_MainPositionTween.SetSkillTipOrRightTipPosTween(false); m_MainPositionTween.SetRotation(true); } else//显示默认 { if (judge1) { SetTipPanelOrBossList(false, true); } if (judge2) { SetTipPanelOrBossList(true, true); } m_MailObj.SetActive(true); _MarkRay.gameObject.SetActive(false); m_MainPositionTween.SetSkillTipOrRightTipPosTween(true); m_MainPositionTween.SetRotation(false); } recordPositionBool = !recordPositionBool; } // 前期战斗用强制设置任务位置逻辑 public void ForceShowTaskPanel() { if (onMainModel.IsBossAreaTask) { onMainModel.IsBossAreaTask = false; } m_MainPositionTween.SetTaskPos(true); TaskSwithBool = !TaskSwithBool; } void ArticleExperience()//关于经验条 { int NowLv = (int)PlayerDatas.Instance.baseData.LV; if (PlayerLVConfig.Get(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 = 0.1f; } ExpValueFloat = ((float)nowVlaue / (float)maxValue); int MapID = PlayerDatas.Instance.baseData.MapID; if (ExpValueFloat != _ExpSlider.value && MapID == 31080) { 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; } if ((float)Math.Round((double)nowVlaue / maxValue, 2, MidpointRounding.AwayFromZero) >= 1f) { _ExpRate.text = "99.9%"; } else { _ExpRate.text = (float)Math.Round((double)nowVlaue / maxValue, 2, MidpointRounding.AwayFromZero) * 100 + "%"; } } } void Updatefighting(PlayerDataType _tCDBPlayerRefresh)//数据的刷新 { ArticleExperience();//关于经验条 if (_tCDBPlayerRefresh == PlayerDataType.LV) { IsUpdateBool = true; } if (_tCDBPlayerRefresh == PlayerDataType.ExAttr5)//判断是否再跨服 { ProcessCrossServerOneVsOne(); } } private bool IsDungeon() { var mapId = PlayerDatas.Instance.baseData.MapID; var mapConfig = MapConfig.Get(mapId); return mapConfig != null && mapConfig.MapFBType != 0; } private void UnFlodFunctionArea(bool _unflod, int _skillGroup) { if (_unflod) { if (!m_MainPositionTween.IsTaskAndPanelShow)//任务面板 { TaskSwithButton(); onMainModel.IsBossAreaTask = false; } ShowBtnGroup();//显示按钮组隐藏技能组(强制切换) m_HighSettingFadeInFadeOut.SwitchImmedidately(true); } } void HandleAchievement() { if (AchievementGoto.achievementType == AchievementGoto.ExcuteSkill) { if (m_MainPositionTween.IsRightTipPanelShow)//技能面板收起状态 { ShowCastSkill();//显示技能组隐藏按钮组(强制切换) } var _cfg = SuccessConfig.Get(AchievementGoto.guideAchievementId); var _skillId = SkillConfig.FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job); if (_skillId != 0) { if (ModelCenter.Instance.GetModel().GetXpSkillID() != _skillId) { return; } if (PlayerDatas.Instance.hero.SkillMgr.Get(_skillId).cd > 0) { ServerTipDetails.DisplayNormalTip(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.IsOpen(); m_ChatTip.gameObject.SetActive(!_chatWinOpen); } private void WindowAfterEvent(Window _win) { if (_win is ChatWin) { CheckChatTipOpen(); } } public void IsShowButtonGroup() { if (m_MainPositionTween.IsRightTipPanelShow)//技能面板展示 { ShowBtnGroup();//显示按钮组隐藏技能组(强制切换) } } private void ShowBtnGroup()//显示按钮组,隐藏技能组(强制切换) { m_MainPositionTween.SetSkillTipOrRightTipPos(false); m_MailObj.SetActive(false); m_MainPositionTween.SetRotation(true); recordPositionBool = false; _MarkRay.gameObject.SetActive(true); } private void ShowCastSkill()//显示技能组,隐藏按钮组(强制切换) { m_MainPositionTween.SetSkillTipOrRightTipPos(true); m_MailObj.SetActive(true); m_MainPositionTween.SetRotation(false); recordPositionBool = true; _MarkRay.gameObject.SetActive(false); } private void IsShowTaskPanel()//是否显示任务面板 { var inDungeon = IsDungeon(); var judge = inDungeon || fairyGrabBossModel.grabBossHintOpen || CrossServerUtility.IsCrossServer() || ClientCrossServerOneVsOne.isClientCrossServerOneVsOne; if (judge) { m_TaskAndTeamTip.SetActive(false); m_TaskSwithButton.gameObject.SetActive(false); } else { m_TaskAndTeamTip.SetActive(true); m_TaskSwithButton.gameObject.SetActive(true); } } private void bossGrabHintEvent() { IsShowTaskPanel(); AtkTypeChange(); } private void ProcessCrossServerOneVsOne() { if (CrossServerUtility.IsCrossServerOneVsOne())//是否再跨服副本中 { WindowCenter.Instance.Open(); m_HeadPortraitTip.gameObject.SetActive(false); CopyOfThePanel.gameObject.SetActive(false); _SwitchShowBtn.gameObject.SetActive(false); m_ChatTip.gameObject.SetActive(false); m_FunctionForecastTip.gameObject.SetActive(false); m_TaskSwithButton.gameObject.SetActive(false); m_InGamePusher.gameObject.SetActive(false); IsShowTaskPanel(); if (m_MainPositionTween.IsRightTipPanelShow)//技能面板收起状态 { ShowCastSkill();//显示技能组,隐藏按钮组(强制切换) } } else { WindowCenter.Instance.Close(); m_HeadPortraitTip.gameObject.SetActive(true); CopyOfThePanel.gameObject.SetActive(true); _SwitchShowBtn.gameObject.SetActive(true); m_ChatTip.gameObject.SetActive(true); m_FunctionForecastTip.gameObject.SetActive(true); m_TaskSwithButton.gameObject.SetActive(true); m_InGamePusher.gameObject.SetActive(true); if (WindowCenter.Instance.IsOpen()) { WindowCenter.Instance.Close(); } } } private void SetTipPanelOrBossList(bool _bool, bool _isTween)//顶层按钮组和boss列表的相互切换 { var inDungeon = IsDungeon(); m_BossBriefInfos.Unfold(false); if (_bool) { if (IsCopyOfThePanel != null) { IsCopyOfThePanel(true); } if (Event_Duplicates != null && inDungeon) { Event_Duplicates(true, m_MainPositionTween.rightTopSwitchTime); } onMainModel.MainTopPanelShow = true; if (_isTween) { m_MainPositionTween.SetTipAndBossTweenPos(true); } else { m_MainPositionTween.SetTipAndBossPos(true); } } else { if (IsCopyOfThePanel != null) { IsCopyOfThePanel(false); } if (Event_Duplicates != null && inDungeon) { Event_Duplicates(false, m_MainPositionTween.rightTopSwitchTime); } onMainModel.MainTopPanelShow = false; if (_isTween) { m_MainPositionTween.SetTipAndBossTweenPos(false); } else { m_MainPositionTween.SetTipAndBossPos(false); } } } } }