Beispiel #1
0
    /// <summary>
    /// 配置状态机信息(添加映射关系)
    /// </summary>
    private void ConfigFSM()
    {
        states = new List <FSMState>();
        var dic = AIResourceManager.BuildDic();

        foreach (var stateName in dic.Keys)
        {
            FSMState state = CreatStateObject(stateName);
            states.Add(state);
            foreach (var map in dic[stateName])
            {
                var triggerID = (FSMTriggerID)Enum.Parse(typeof(FSMTriggerID), map.Key);
                var stateID   = (FSMStateID)Enum.Parse(typeof(FSMStateID), map.Value);
                state.AddMap(triggerID, stateID);
            }
        }
    }