| | |
| | |
|
| | | [SerializeField] MainPositionTween m_MainPositionTween;
|
| | | [SerializeField] MainButtonMisc m_MainButtonMisc;
|
| | |
|
| | | #region
|
| | | private bool TaskSwithBool = true;
|
| | | private float ExpValueFloat = 0;
|
| | |
| | | public static event Action<bool> IsCopyOfThePanel;
|
| | | public static event Action IsOpenMaininterface;
|
| | |
|
| | | RealmModel realmModel { get { return ModelCenter.Instance.GetModel<RealmModel>(); } }
|
| | | MountModel horsemodel { get { return ModelCenter.Instance.GetModel<MountModel>(); } }
|
| | | PlayerMainDate onMainModel { get { return ModelCenter.Instance.GetModel<PlayerMainDate>(); } }
|
| | | TaskModel onPlayerTask { get { return ModelCenter.Instance.GetModel<TaskModel>(); } }
|
| | | BuffModel Buffmodel { get { return ModelCenter.Instance.GetModel<BuffModel>(); } }
|
| | | PKModel pKModel { get { return ModelCenter.Instance.GetModel<PKModel>(); } }
|
| | | 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>(); } }
|
| | | FairyGrabBossModel fairyGrabBossModel { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } }
|
| | | FeatureNoticeModel featureNoticeModel { get { return ModelCenter.Instance.GetModel<FeatureNoticeModel>(); } }
|
| | | IceCrystalVeinModel iceCrystalVeinModel { get { return ModelCenter.Instance.GetModel<IceCrystalVeinModel>(); } }
|
| | | JadeDynastyTowerModel jadeDynastyTowerModel { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
|
| | | TreasureModel treasureModel { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
|
| | |
|
| | | #region Built-in
|
| | | private bool IsUpdateBool = true;
|
| | | protected override void BindController()
|
| | | {
|
| | | var inst = BossShowModel.Instance;
|
| | | m_MapSwitchingBehaviour.InitAwake();
|
| | | recordPositionBool = true;
|
| | | TaskSwithBool = true;
|
| | |
| | | NewBieCenter.Instance.guideCompletedEvent += OnGuideCompleted;
|
| | | WindowCenter.Instance.windowAfterOpenEvent += WindowAfterEvent;
|
| | | WindowCenter.Instance.windowAfterCloseEvent += WindowAfterEvent;
|
| | | //TaskModel.CompletionOfTaskEvent += CompletionOfTaskEvent;
|
| | | NewBieCenter.Instance.guideBeginEvent += GuideBeginEvent;
|
| | | fairyGrabBossModel.bossGrabHintEvent += bossGrabHintEvent;
|
| | | GlobalTimeEvent.Instance.secondEvent += secondEvent;
|
| | | IsCrossServerOneVsOne();
|
| | | ProcessCrossServerOneVsOne();
|
| | | }
|
| | |
|
| | | protected override void OnActived()
|
| | |
| | | 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);
|
| | |
| | | NewBieCenter.Instance.guideCompletedEvent -= OnGuideCompleted;
|
| | | WindowCenter.Instance.windowAfterOpenEvent -= WindowAfterEvent;
|
| | | WindowCenter.Instance.windowAfterCloseEvent -= WindowAfterEvent;
|
| | | //TaskModel.CompletionOfTaskEvent -= CompletionOfTaskEvent;
|
| | | NewBieCenter.Instance.guideBeginEvent -= GuideBeginEvent;
|
| | | GlobalTimeEvent.Instance.secondEvent -= secondEvent;
|
| | | fairyGrabBossModel.bossGrabHintEvent -= bossGrabHintEvent;
|
| | |
| | |
|
| | | }
|
| | | #endregion
|
| | | //private void CompletionOfTaskEvent(int obj)
|
| | | //{
|
| | | // EffectMgr.Instance.PlayUIEffect(1100, 1100, m_EffectTask, false);
|
| | | //}
|
| | |
|
| | | private void secondEvent()
|
| | | {
|
| | |
| | |
|
| | | private void OnEnterOrExitArea(MapArea.E_Type _areaType, bool _enter)
|
| | | {
|
| | | //DebugEx.LogError(_areaType + ".." + _enter);
|
| | | if (PlayerDatas.Instance.baseData.MapID == 10040 && _areaType != MapArea.E_Type.Boss && _enter)
|
| | | {
|
| | | DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)onMainModel.AreaState);
|
| | |
| | | SwitchShowButton();
|
| | | }
|
| | | }
|
| | |
|
| | | if ((_areaType == MapArea.E_Type.Boss && !_enter) || (_areaType != MapArea.E_Type.Normal && (_areaType != MapArea.E_Type.Boss && _enter)))
|
| | | {
|
| | | if (onMainModel.IsBossAreaTask)
|
| | |
| | | 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)
|
| | |
| | |
|
| | | private void AtkTypeChange()//骑宠争夺是否切换状态
|
| | | {
|
| | | int mapID = PlayerDatas.Instance.baseData.MapID;
|
| | | var mapID = PlayerDatas.Instance.baseData.MapID;
|
| | | var config = MapConfig.Get(mapID);
|
| | | int[] atkInt = pKModel.GetArea(config.AtkType).ToArray();
|
| | | bool IsBossBool = MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域
|
| | | int Line = 0;
|
| | | 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)
|
| | | {
|
| | |
| | | onMainModel.AreaState = Buffmodel.PkType;
|
| | | return;
|
| | | }
|
| | |
|
| | | if (PlayerDatas.Instance.baseData.MapID == 10040 && IsBossBool && Line != PlayerDatas.Instance.baseData.FBID)//逍遥城普通Boss区域处理
|
| | | {
|
| | |
|
| | |
| | | onMainModel.AreaState = Buffmodel.PkType;
|
| | | return;
|
| | | }
|
| | |
|
| | | if (!onMainModel.ShieldedArea.Contains(PlayerDatas.Instance.baseData.MapID))//前四只Boss和活动Boss特殊处理
|
| | | {
|
| | | if (IsBossBool && atkInt.Length > 1 && Buffmodel.PkType != 5)
|
| | | if (IsBossBool && atkInt.Count > 1 && Buffmodel.PkType != 5)
|
| | | {
|
| | | onMainModel.AreaState = Buffmodel.PkType;
|
| | | DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)5);
|
| | |
| | | {
|
| | | return;
|
| | | }
|
| | | var _treasureModel = ModelCenter.Instance.GetModel<TreasureModel>();
|
| | | if (_treasureModel.treasureStageUpShow || _treasureModel.newGotShowing)
|
| | |
|
| | | 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);//是否在Boss区域
|
| | | 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 || IsBossBool || isNeutralMap)
|
| | | if (inDungeon || inBossArea || isNeutralMap)
|
| | | {
|
| | | SetTipPanelOrBossList(false, true);
|
| | | }
|
| | | if (!IsBossBool)
|
| | | if (!inBossArea)
|
| | | {
|
| | | if (!m_MainPositionTween.IsSetCopyOfThePanelShow && !inDungeon)
|
| | | {
|
| | |
| | |
|
| | | void DownButton(GameObject go)
|
| | | {
|
| | | |
| | | _ExpRate.gameObject.SetActive(true);
|
| | | }
|
| | |
|
| | |
| | | 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)
|
| | | {
|
| | | SetTipPanelOrBossList(true, true);
|
| | | }
|
| | | if (judge2)
|
| | | if (judge1 || judge2)
|
| | | {
|
| | | SetTipPanelOrBossList(true, true);
|
| | | }
|
| | |
| | |
|
| | | if (_tCDBPlayerRefresh == PlayerDataType.ExAttr5)//判断是否再跨服
|
| | | {
|
| | | IsCrossServerOneVsOne();
|
| | | ProcessCrossServerOneVsOne();
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | AtkTypeChange();
|
| | | }
|
| | |
|
| | | private void IsCrossServerOneVsOne()
|
| | | private void ProcessCrossServerOneVsOne()
|
| | | {
|
| | | if (CrossServerUtility.IsCrossServerOneVsOne())//是否再跨服副本中
|
| | | {
|