コード例 #1
0
ファイル: CPath.cs プロジェクト: Deprion/AxGridTools
 /// <summary>
 /// Добавить подноразовое действие в путь Ошибок
 /// </summary>
 /// <param name="action">Действие</param>
 /// <returns>Путь</returns>
 public CPath Error(DPathAction action)
 {
     errors.Enqueue(new PathItem {
         Action2 = action, Error = true
     });
     return(this);
 }
コード例 #2
0
ファイル: CPath.cs プロジェクト: Deprion/AxGridTools
 /// <summary>
 /// Добавить в путь Действие
 /// </summary>
 /// <param name="action">Действие</param>
 /// <returns>Путь</returns>
 public CPath Add(DPathAction action)
 {
     actions.Enqueue(new PathItem {
         Action2 = action
     });
     return(this);
 }
コード例 #3
0
ファイル: CPath.cs プロジェクト: Deprion/AxGridTools
        public static CPath TimeAction(this CPath path, float time, DPathAction action)
        {
            return(path.Add(p =>
            {
                if (p.DeltaF < time)
                {
                    return Status.Continue;
                }
                var status = action.Invoke();
                switch (status)
                {
                case Status.Continue:
                    p.ResetTimerVariables();
                    return Status.Continue;

                default:
                    return status;
                }
            }));
        }