// This code is part of the Fungus library (http://fungusgames.com) maintained by Chris Gregan (http://twitter.com/gofungus). // It is released for free under the MIT open source license (https://github.com/snozbot/fungus/blob/master/LICENSE) namespace Fungus { /// <summary> /// Standard comparison operators. /// </summary> public enum CompareOperator { /// <summary> == mathematical operator.</summary> Equals, /// <summary> != mathematical operator.</summary> NotEquals, /// <summary> < mathematical operator.</summary> LessThan, /// <summary> > mathematical operator.</summary> GreaterThan, /// <summary> <= mathematical operator.</summary> LessThanOrEquals, /// <summary> >= mathematical operator.</summary> GreaterThanOrEquals } /// <summary> /// Scope types for Variables. /// </summary> public enum VariableScope { /// <summary> Can only be accessed by commands in the same Flowchart. </summary> Private, /// <summary> Can be accessed from any command in any Flowchart. </summary> Public } /// <summary> /// A Fungus variable that can be used with Commands. /// </summary> public interface IVariable { /// <summary> /// Visibility scope for the variable. /// </summary> VariableScope Scope { get; } /// <summary> /// String identifier for the variable. /// </summary> string Key { get; set; } /// <summary> /// Callback to reset the variable if the Flowchart is reset. /// </summary> void OnReset(); } }