Пример #1
0
 public void SetMonsterTipVisible(EnumMonsterTipArrow tip = EnumMonsterTipArrow.None)
 {
     gameObject.SetActive(tip != EnumMonsterTipArrow.None);
     if (m_left)
     {
         SetLeftMonsterTip(tip);
     }
     else
     {
         SetRightMonsterTip(tip);
     }
 }
Пример #2
0
 public void DispathMonsterTip(EnumMonsterTipArrow tipDir)
 {
     DispatchModuleEvent(EventMonsterTip, tipDir);
 }
Пример #3
0
 private void SetRightMonsterTip(EnumMonsterTipArrow tip)
 {
     m_bossTip.SetActive((tip & EnumMonsterTipArrow.BossRight) > 0);
     m_monTip.SetActive((tip & EnumMonsterTipArrow.MonsterRight) > 0);
     m_npcObj.SetActive((tip & EnumMonsterTipArrow.NpcRight) > 0);
 }
Пример #4
0
 private void SetLeftMonsterTip(EnumMonsterTipArrow tip)
 {
     m_bossTip.SetActive((tip & EnumMonsterTipArrow.BossLeft) > 0);
     m_monTip.SetActive((tip & EnumMonsterTipArrow.MonserLeft) > 0);
     m_npcObj.SetActive((tip & EnumMonsterTipArrow.NpcLeft) > 0);
 }
Пример #5
0
    private void _ME(ModuleEvent <Module_PVE> e)
    {
        switch (e.moduleEvent)
        {
        //复活
        case Module_PVE.EventRebornState:
            bool isSuccess = (bool)e.param1;
            if (isSuccess)
            {
                countDownPanel.UnInitialize();
            }
            else
            {
                var levelBattle = Level.current as Level_Battle;
                countDownPanel.enableUpdate = levelBattle?.IsPlayerAllDead() ?? false;
            }
            //复活成功处理
            if (isSuccess && !modulePVE.isTeamMode)
            {
                //复活次数+1
                modulePVE.currentReviveTimes++;
                m_pvePlayerRevivePanel.SetPanelVisible(false);
                m_hero1.Revive();
                modulePVEEvent.pauseEvent = false;
            }
            break;

        case Module_PVE.EventMonsterTip:
            EnumMonsterTipArrow tip = (EnumMonsterTipArrow)e.param1;
            if (m_leftMonTip != null)
            {
                m_leftMonTip.SetMonsterTipVisible(tip);
            }
            if (m_rightMonTip != null)
            {
                m_rightMonTip.SetMonsterTipVisible(tip);
            }
            break;

        case Module_PVE.EventTransportSceneToUI:
            bool begin = (bool)e.param1;
            if (begin)
            {
                if (m_pvePlayerRevivePanel.enable)
                {
                    m_pvePlayerRevivePanel?.SetPanelVisible(false);
                }
                if (m_labyrinthTipPanel.enable)
                {
                    m_labyrinthTipPanel?.SetPanelVisible(false);
                }
            }
            else if (!begin && m_player)
            {
                if (m_player.health == 0)
                {
                    var levelBattle = Level.current as Level_Battle;
                    if (!modulePVE.isTeamMode)
                    {
                        m_pvePlayerRevivePanel?.OpenRevivePanel();
                    }
                    else if (levelBattle != null)
                    {
                        if (levelBattle.IsPlayerAllDead())
                        {
                            m_pvePlayerRevivePanel?.OpenRevivePanel();
                            countDownPanel.Initialize(PveCombat_CountDown.Mode.ReviveCountDown);
                        }

                        if (levelBattle.IsState(BattleStates.Watch))
                        {
                            levelBattle.QuitState(BattleStates.Watch);
                            levelBattle.EnterState(BattleStates.Watch);
                        }
                    }
                }
                else if (m_player.health > 0)
                {
                    ApplyAutoBattle();
                }
            }
            break;

        case Module_PVE.EventTriggerTransportTip:
            int dir = (int)e.param1;
            if (dir != m_lastTransportDir)
            {
                m_lastTransportDir = dir;
                m_transportTip.SetActive(dir != 0);
                m_leftTransortTip.SetActive((dir & (int)EnumMonsterTipArrow.MonserLeft) > 0);
                m_rightTransportTip.SetActive((dir & (int)EnumMonsterTipArrow.MonsterRight) > 0);
            }
            break;

        case Module_PVE.EventBossCameraAnimWhiteFadeIn: OnBossCameraAnimWhiteFadeIn(); break;

        case Module_PVE.EventDisplayBossReward: OnShowBossReward((PItem2[])e.param1); break;
        }
    }