Example #1
0
 public void Change <New_State>() where New_State : IState, new()
 {
     if (next != null)
     {
         return;
     }
     if (!_states.TryGetValue(TypeID.Get <New_State>(), out var next_state))
     {
         _states[TypeID.Get <New_State>()] = next_state = new New_State();
         init = true;
     }
     next = next_state;
 }