/// <summary> /// /// </summary> /// <typeparam name="T"></typeparam> /// <param name="nState"></param> /// <param name="funcCommand"></param> /// <param name="eCommand1"></param> /// <param name="eCommand2"></param> public void AddFSMState <T>(T nState, EACommanMethod funcCommand, T eCommand1, T eCommand2) { T eCommand3 = (T)Enum.ToObject(typeof(T), 0); T eCommand4 = (T)Enum.ToObject(typeof(T), 0); AddFSM <T>(nState, funcCommand, eCommand1, eCommand2, eCommand3, eCommand4); }
public EAFSMCommand(EACommanMethod funcCommand, uint eCommand1 = 0, uint eCommand2 = 0, uint eCommand3 = 0, uint eCommand4 = 0) { m_eTransitionCommand = new uint[4]; m_eTransitionCommand[0] = eCommand1; m_eTransitionCommand[1] = eCommand2; m_eTransitionCommand[2] = eCommand3; m_eTransitionCommand[3] = eCommand4; m_funcCommand = funcCommand; }
/// <summary> /// add fsm /// </summary> /// <typeparam name="T"></typeparam> /// <param name="nState"></param> /// <param name="eCommand1"></param> /// <param name="eCommand2"></param> /// <param name="eCommand3"></param> /// <param name="eCommand4"></param> /// <param name="funcCommand"></param> private void AddFSM <T>(T nState, EACommanMethod funcCommand, T eCommand1, T eCommand2, T eCommand3, T eCommand4) { Type typeParameterType = typeof(T); if (typeParameterType.IsEnum == false) { Debug.Log("invalid type - type is not null"); return; } uint idx_1 = System.Convert.ToUInt32(eCommand1); uint idx_2 = System.Convert.ToUInt32(eCommand2); uint idx_3 = System.Convert.ToUInt32(eCommand3); uint idx_4 = System.Convert.ToUInt32(eCommand4); EAFSMCommand command = new EAFSMCommand(funcCommand, idx_1, idx_2, idx_3, idx_4); uint idx = System.Convert.ToUInt32(nState); AddState(idx, command); }
/// <summary> /// /// </summary> /// <typeparam name="T"></typeparam> /// <param name="nState"></param> /// <param name="funcCommand"></param> /// <param name="eCommand1"></param> /// <param name="eCommand2"></param> /// <param name="eCommand3"></param> /// <param name="eCommand4"></param> public void AddFSMState <T>(T nState, EACommanMethod funcCommand, T eCommand1, T eCommand2, T eCommand3, T eCommand4) { AddFSM <T>(nState, funcCommand, eCommand1, eCommand2, eCommand3, eCommand4); }