NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/Gameplay/Level/State/LevelStateEnd.cs

68 lines
1.9 KiB
C#

using Framework;
using Gameplay.Unit;
using LTGame;
using TGS;
using UnityEngine;
namespace Gameplay.Level
{
public class LevelStateEnd : BaseLevelState
{
public LevelStateEnd(Level level) : base(level, ELevelState.End)
{
}
protected override async void _OnEnter(NBaseState exitState,
object param)
{
base._OnEnter(exitState, param);
_level.SetPause(true);
EventManager.Instance.Send(EventManager.EventName.FightStoryHide);
_WaitBlackOut();
var level = LevelManager.Instance.CurrentLevel;
if (level != null)
{
var levelInfo = level.GetLevelInfo();
if (levelInfo != null && levelInfo.fightStoryData != null)
{
if (LevelManager.Instance.IsFightStorySettle)
{
DebugUtil.Log("FightStory Level Settle");
await LevelManager.Instance.SettleFightStory();
}
else
{
LevelManager.Instance.IsFightStorySettle = true;
}
}
}
//EventManager.Instance.Register(EventManager.EventName.FightStorySettle, _OnSettle);
}
protected override void _OnCellClick(TerrainGridSystem tgs, int cellIndex, int buttonIndex)
{
}
protected override void _OnClick(Vector2 screenPosition)
{
}
// protected override void _OnExit(NBaseState exitState, object param)
// {
// base._OnExit(exitState, param);
//
// //EventManager.Instance.Unregister(EventManager.EventName.FightStorySettle, _OnSettle);
// }
// private void _OnSettle()
// {
//
// }
}
}