using Thousandto.Core.Support;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Thousandto.Code.Logic
{
///
/// 状态系统接口
///
public interface IStateSystem
{
///
/// 获取状态machine
///
///
StateMachine Fsm { get; }
///
/// 初始化
///
void Initialize();
///
/// 反初始化
///
void UnInitialize();
///
/// 获取当前状态
///
///
IGameState GetCurState();
///
/// 获取前一游戏状态
///
///
IGameState GetPrevState();
///
/// 获取后一游戏状态
///
///
IGameState GetNextState();
///
/// 通过状态id获取游戏状态
///
///
///
IGameState GetStateById(int id);
///
/// 切换游戏状态
///
///
///
void ChangeState(int stateId, object arg = null);
///
/// 是否是当前状态
///
///
///
bool IsCurState(int stateID);
///
/// 处理状态消息
///
///
void HandlerMessage(object msg);
void Update(float dt);
}
}