Skip to content

Commit a5cdeab

Browse files
committed
add changestate immediately
1 parent 917ab7b commit a5cdeab

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

Runtime/StateMachineGeneric.cs

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,6 @@ public void Start(MonoBehaviour owner, STATE_ID startState, params STATE_ID[] ne
9797
_owner.StartCoroutine(UpdateCoroutine());
9898
}
9999

100-
101100
/// <summary>
102101
/// 스테이트를 다음 스테이트로 변경합니다.
103102
/// </summary>
@@ -106,12 +105,27 @@ public void ChangeState(STATE_ID state)
106105
{
107106
if (_debug)
108107
{
109-
Debug.Log($"{_owner.name}.FSM.ChangeState changeState:{state}, wait:{_waitQueue.ToStringCollection()}", _owner);
108+
Debug.Log($"{_owner.name}.FSM.{nameof(ChangeState)} changeState:{state}, wait:{_waitQueue.ToStringCollection()}", _owner);
110109
}
111110

112111
_commandQueue.Add(new Command(CommandType.Change, state));
113112
}
114113

114+
/// <summary>
115+
/// 스테이트를 다음 스테이트로 즉시 변경합니다.
116+
/// </summary>
117+
/// <param name="state">변경할 스테이트</param>
118+
public void ChangeStateImmediately(STATE_ID state)
119+
{
120+
if (_debug)
121+
{
122+
Debug.Log($"{_owner.name}.FSM.{nameof(ChangeStateImmediately)} changeState:{state}, wait:{_waitQueue.ToStringCollection()}", _owner);
123+
}
124+
125+
OnFinishState();
126+
OnStartState(state);
127+
}
128+
115129
/// <summary>
116130
/// 현재 스테이트를 종료합니다.
117131
/// </summary>

0 commit comments

Comments
 (0)