示例#1
0
    /// <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);
    }
示例#2
0
        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;
        }
示例#3
0
    /// <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);
    }
示例#4
0
 /// <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);
 }