public static void FSMActionProcessError(FSM FSM, FSMActionProcessingError FSMActionProcessingError) { if (FSMDebug.Instance.FSMDebugConfiguration.WriteInFile) { FormatAndWriteLine(FSMActionProcessingError.Message, FSM); FSMDebug.Instance.Write(FSMActionProcessingError.InnerException.StackTrace + Environment.NewLine + FSMActionProcessingError.StackTrace + Environment.NewLine); } }
private void ProcessActionWithConfigurationArray(FSMAction[] FSMActions) { foreach (var FSMAction in FSMActions) { try { FSMAction.ExecuteAction(); } catch (Exception e) { Debug.LogException(e, this); throw FSMActionProcessingError.FromDetailedExecutionInformation(FSMAction.GetType().ToString(), e); } } }
public void OnExit() { if (FSMExitActions != null) { foreach (var FSMAction in FSMExitActions) { try { FSMAction.ExecuteAction(); } catch (Exception e) { Debug.LogException(e, this); throw FSMActionProcessingError.FromDetailedExecutionInformation(FSMAction.GetType().ToString(), e); } } } }