Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Property in
Gets or sets the that is called when a command is to be delivered to the game.
Property in
Gets the name of the node that this Dialogue is currently executing.
If has never been called, this value will be null .
Property in
Invoked when the Dialogue needs to report debugging information.
Property in
Gets the names of the nodes in the currently loaded Program.
Property in
Gets or sets the that is called when a node is started.
Property in
Gets the parent of this type.
All types have as their ultimate parent type (except for itself.)
public CommandHandler CommandHandler
{
get; set; }public string CurrentNode
{
get; }public Logger LogDebugMessage { get; set; }public IEnumerable<string> NodeNames
{
get; }public NodeStartHandler NodeStartHandler
{
get; set; }IType Parent { get; }Property in BuiltinTypes
Gets the type representing any value.
public static IType Any { get; };Property in BuiltinTypes
Gets the type representing boolean values.
public static IType Boolean { get; };Property in BuiltinTypes
Gets the type representing numbers.
public static IType Number { get; };Property in BuiltinTypes
Gets the type representing strings.
public static IType String { get; };Property in BuiltinTypes
Gets a dictionary that maps CLR types to their corresponding Yarn types.
public static IReadOnlyDictionary<System.Type, Yarn.IType> TypeMappings { get; };Field in Dialogue
The node that execution will start from.
public const string DefaultStartNodeName = "Start";Method in Dialogue
Gets a value indicating whether a specified node exists in the Program.
string nodeName
The name of the node.
true if a node named nodeName exists in the Program, false otherwise.
Method in Dialogue
Immediately stops the Dialogue .
public void Stop()The DialogueCompleteHandler will not be called if the dialogue is ended by calling Stop() .
Property in Dialogue
Gets or sets the DialogueCompleteHandler that is called when the dialogue reaches its end.
public DialogueCompleteHandler DialogueCompleteHandler
{
get; set; }Property in Dialogue
Gets a value indicating whether the Dialogue is currently executing Yarn instructions.
public bool IsActive { get };Property in Dialogue
Gets or sets the Dialogue 's locale, as an IETF BCP 47 code.
public string LanguageCode { get; set; }This code is used to determine how the plural and ordinal markers determine the plural class of numbers.
For example, the code "en-US" represents the English language as used in the United States.
Property in Dialogue
Gets or sets the LineHandler that is called when a line is ready to be shown to the user.
public LineHandler LineHandler
{
get; set; }Property in Dialogue
Gets or sets the NodeCompleteHandler that is called when a node is complete.
public NodeCompleteHandler NodeCompleteHandler
{
get; set; }Property in Dialogue
Invoked when the Dialogue needs to report an error.
public Logger LogErrorMessage { get; set; }Property in Dialogue
Gets or sets the PrepareForLinesHandler that is called when the dialogue anticipates delivering some lines.
public PrepareForLinesHandler PrepareForLinesHandler
{
get; set; }Property in Dialogue
Gets or sets the object that provides access to storing and retrieving the values of variables.
public IVariableStorage VariableStorage { get; set; }Property in FunctionType
Gets a more verbose description of this type.
public string Description
{
get; set; }Property in FunctionType
Gets the collection of methods that are available on this type.
public MethodCollection Methods { get };Property in FunctionType
Gets the list of the parameter types that this function is called with.
public List<IType> Parameters { get; };The length of this list also determines the number of parameters this function accepts (also known as the function's arity ).
Property in FunctionType
Gets the parent of this type.
public IType Parent { get; }All types have Any as their ultimate parent type (except for Any itself.)
Property in FunctionType
Gets the type of value that this function returns.
public IType ReturnType { get; internal set; }Property in IType
Gets the collection of methods that are available on this type.
MethodCollection Methods { get; }Property in Node
The tags associated with this node.
public pbc::RepeatedField<string> Tags {
get; }Property in Node
the entry in the program's string table that contains the original text of this node; null if this is not available
public string SourceTextStringID {
get; set; }public bool NodeExists(string nodeName)Method in Dialogue
Loads the nodes from the specified Program , and adds them to the nodes already loaded.
public void AddProgram(Program program)If Yarn.Dialogue.Program is null , this method has the effect as calling SetProgram(Program) .
Method in Dialogue
Returns the string ID that contains the original, uncompiled source text for a node.
public string GetStringIDForNode(string nodeName)A node's source text will only be present in the string table if its tags header contains rawText.
Because the Dialogue class is designed to be unaware of the contents of the string table, this method does not test to see if the string table contains an entry with the line ID. You will need to test for that yourself.
The string ID.
Method in Dialogue
Parses a line of text, and produces a MarkupParseResult containing the results.
public MarkupParseResult ParseMarkup(string line)The MarkupParseResult 's Text will have any select , plural or ordinal markers replaced with the appropriate text, following this Dialogue 's LanguageCode .
The results of parsing the markup.
Method in IVariableStorage
Stores a string in this VariableStorage.
void SetValue(string variableName, string stringValue);string variableName
Method in Library
Removes a function from the Library.
public void DeregisterFunction(string name)If no function with the given name is present in the Library, this method does nothing.
string name
Class in Yarn
Inherits from System.Object
Contains the built-in types available in the Yarn language.
public static class BuiltinTypesStruct in
Inherits from System.ValueType
A command, sent from the to the game.
You do not create instances of this struct yourself. They are created by the during program execution.
Delegate in
Inherits from System.MulticastDelegate
Represents the method that is called when the Dialogue delivers a .
Method in
Replaces all substitution markers in a text with the given substitution list.
This method replaces substitution markers - for example, {0}
with the corresponding entry in substitutions . If text contains a substitution marker whose index is not present in substitutions , it is ignored.
Method in
Returns the tags for the node nodeName .
The tags for a node are defined by setting the tags header in the node's source code. This header must be a space-separated list.
Method in
Prepares the that the user intends to start running a node.
After this method is called, you call to start executing it.
If has been set, it may be called when this method is invoked, as the Dialogue determines which lines may be delivered during the startNode node's execution.
Method in
Loads all nodes from the provided .
This method replaces any existing nodes have been loaded. If you want to load nodes from an additional Program, use the method.
Property in
Gets or sets the that is called when a set of options are ready to be shown to the user.
The Options Handler delivers an to the game. Before can be called to resume execution, must be called to indicate which was selected by the user. If is not called, an exception is thrown.
Delegate in
Inherits from System.MulticastDelegate
Represents the method that is called when the dialogue has reached its end, and no more code remains to be run.
: Represents the method that is called when the Dialogue delivers a .
Interface in
Defines properties that describe a type in the Yarn language.
Interface in
Provides a mechanism for storing and retrieving instances of the Yarn.Value class.
Method in
Stores a bool in this VariableStorage.
Method in
Registers a new function that returns a value, which can be called from a Yarn program.
Method in
Registers a new function that returns a value, which can be called from a Yarn program.
Contains classes for working with compiled Yarn programs.
Method in
Registers a new function that returns a value, which can be called from a Yarn program.
Method in
Stores a float in this VariableStorage.
Method in
Stores a float in this VariableStorage.
Field in
The values that should be inserted into the user-facing text before delivery.
Method in
Stores a string in this VariableStorage.
Method in
Returns a System.Delegate with a given name.
Yarn.Program program
The additional program to load.
The name to associate with this variable.
string stringValue
The string to store.
The name of the function to remove.
Gets the type representing any value.
Gets the type representing boolean values.
Gets the type representing numbers.
Gets the type representing strings.
Gets a dictionary that maps CLR types to their corresponding Yarn types.
string nodeName
The name of the node.
string line
The line of text to parse.
The name of the function to look for.
The library to import functions from.
string text
The text containing substitution markers.
System.Collections.Generic.IList<string> substitutions
The list of substitutions.
text , with the content from substitutions inserted.
string nodeName
The name of the node.
The node's tags, or null if the node is not present in the Program.
public OptionsHandler OptionsHandler
{
get; set; }CommandHandler: Represents the method that is called when the Dialogue delivers a Command .
NodeStartHandler: Represents the method that is called when the Dialogue begins executing a node.
NodeCompleteHandler: Represents the method that is called when the Dialogue reaches the end of a node.
bool boolValue
The boolean value to store.
string variableName
The name to associate with this variable.
System.Delegate implementation
The method to be invoked when the function is called.
TResult
The return type of the function.
string name
The name of the function.
float floatValue
The number to store.
string variableName
The name to associate with this variable.
float floatValue
The number to store.
string variableName
The name to associate with this variable.
public string[] Substitutions;string stringValue
The string to store.
string variableName
The name to associate with this variable.
The System.Delegate .
string name
The name of the function to retrieve.
Property in Node
A jump table, mapping the names of labels to positions in the instructions list.
public pbc::MapField<string, int> Labels {
get; }Property in Option
Gets the name of the node that will be run if this option is selected.
public string DestinationNode { get; private set; }The value of this property not be valid if this is a shortcut option.
Property in Node
The list of instructions in this node.
public pbc::RepeatedField<global::Yarn.Instruction> Instructions {
get; }public static string ExpandSubstitutions(string text, IList<string> substitutions)public IEnumerable<string> GetTagsForNode(string nodeName)public delegate void DialogueCompleteHandler();void SetValue(string variableName, bool boolValue);public void RegisterFunction(string name, Delegate implementation)void SetValue(string variableName, float floatValue);public void SetValue(string variableName, float floatValue)public void SetValue(string variableName, string stringValue)public Delegate GetFunction(string name)Gets the text of the command.
Dialogue.CommandHandler: Gets or sets the CommandHandler that is called when a command is to be delivered to the game.
public struct CommandThe that has been delivered.
LineHandler: Represents the method that is called when the Dialogue delivers a Line .
OptionsHandler: Represents the method that is called when the Dialogue delivers an OptionSet .
NodeStartHandler: Represents the method that is called when the Dialogue begins executing a node.
: Represents the method that is called when the Dialogue reaches the end of a node.
: Represents the method that is called when the dialogue has reached its end, and no more code remains to be run.
public delegate void CommandHandler(Command command);command
string startNode
The name of the node that will be run. The node have been loaded by calling or .
public void SetNode(string startNode = DefaultStartNodeName)The to use.
public void SetProgram(Program program)program
Gets the collection of methods that are available on this type.
Gets the name of this type.
Gets the parent of this type.
public interface ITypeGets a more verbose description of this type.
Stores a bool in this VariableStorage.
Stores a float in this VariableStorage.
Stores a string in this VariableStorage.
Retrieves a value of type T by name.
public interface IVariableStorageRemoves all variables from storage.
System.Func<T1, T2, TResult> implementation
The method to be invoked when the function is called.
TResult
The return type of the function.
TResult
The return type of the function.
public void RegisterFunction<T1, T2, TResult>(string name, Func<T1, T2, TResult> implementation)string name
The name of the function.
Co-ordinates the execution of Yarn programs.
An exception that is thrown by when there is an error in executing a .
A type that represents functions.
A collection of functions that can be called from Yarn programs.
A simple concrete implementation of that keeps all variables in memory.
A node of Yarn script, contained within a , and containing Yarn.Instruction s.
A compiled Yarn program.
Represents the method that is called when the Dialogue delivers a .
Represents the method that is called when the dialogue has reached its end, and no more code remains to be run.
Defines properties that describe a type in the Yarn language.
Provides a mechanism for storing and retrieving instances of the Yarn.Value class.
Contains classes for compiling Yarn code.
Contains classes for working with markup in Yarn lines.
A command, sent from the to the game.
A line of dialogue, sent from the to the game.
Contains the built-in types available in the Yarn language.
System.Func<T1, T2, T3, T4, T5, TResult> implementation
The method to be invoked when the function is called.
TResult
The return type of the function.
TResult
The return type of the function.
public void RegisterFunction<T1, T2, T3, T4, T5, TResult>(string name, Func<T1, T2, T3, T4, T5, TResult> implementation)string name
The name of the function.
Method in Dialogue
Signals to the Dialogue that the user has selected a specified Option .
public void SetSelectedOption(int selectedOptionID)After the Dialogue delivers an OptionSet, this method must be called before Continue() is called.
The ID number that should be passed as the parameter to this method should be the ID field in the Option that represents the user's selection.
: Represents the method that is called when the Dialogue delivers an .
: A set of s, sent from the to the game.
: Starts, or continues, execution of the current Program.
Method in IVariableStorage
Retrieves a value of type T by name.
bool TryGetValue<T>(string variableName, out T result);string variableName
true if a value named variableName of type T was retrieved; false otherwise.
Delegate in Yarn
Inherits from System.MulticastDelegate
Represents the method that is called when the Dialogue delivers a Line .
public delegate void LineHandler(Line line);: Represents the method that is called when the Dialogue delivers an .
: Represents the method that is called when the Dialogue delivers a .
: Represents the method that is called when the Dialogue begins executing a node.
Method in Library
Registers a new function that returns a value, which can be called from a Yarn program.
public void RegisterFunction<TResult>(string name, Func<TResult> implementation)string name
The name of the function.
Class in Yarn
Inherits from System.Object
A simple concrete implementation of IVariableStorage that keeps all variables in memory.
public class MemoryVariableStore : IVariableStorageMethod in Library
Registers a new function that returns a value, which can be called from a Yarn program.
public void RegisterFunction<T1, TResult>(string name, Func<T1, TResult> implementation)string name
The name of the function.
Method in MemoryVariableStore
Retrieves a value of type T by name.
public bool TryGetValue<T>(string variableName, out T result)string variableName
true if a value named variableName of type T was retrieved; false otherwise.
Delegate in Yarn
Inherits from System.MulticastDelegate
Represents a method that receives diagnostic messages and error information from a Dialogue .
public delegate void Logger(string message);The text that this delegate receives may be output to a console, or sent to a log.
Delegate in Yarn
Inherits from System.MulticastDelegate
Represents the method that is called when the Dialogue reaches the end of a node.
public delegate void NodeCompleteHandler(string completedNodeName);This method may be called multiple times over the course of code execution. A node being complete does not necessarily represent the end of the conversation.
: Represents the method that is called when the Dialogue delivers a .
: Represents the method that is called when the Dialogue delivers an .
: Represents the method that is called when the Dialogue delivers a .
Method in
Starts, or continues, execution of the current Program.
This method repeatedly executes instructions until one of the following conditions is encountered:
The or is called. After calling either of these handlers, the Dialogue will wait until is called. Continue may be called from inside the or , or may be called at any future time.
Method in
Registers a new function that returns a value, which can be called from a Yarn program.
Property in
Gets a value indicating whether the player should be permitted to select this option.
If this value is false, this option had a line condition on it that failed. The option will still be delivered to the game, but, depending on the needs of the game, the game may decide to not allow the player to select it, or not offer it to the player at all.
This is intended for situations where games wish to show options that the player _could_ have taken, if some other condition had been met (e.g. having enough "charisma" points).
Method in
Removes all variables from storage.
Method in
Stores a bool in this VariableStorage.
Property in
Gets the s that should be presented to the user.
: An option to be presented to the user.
T1
The type of the function's first argument.
T2
The type of the function's second argument.
T1
The type of the function's first argument.
T2
The type of the function's second argument.
T3
The type of the function's third argument.
T4
The type of the function's fourth argument.
T5
The type of the function's fifth argument.
Removes all variables from storage.
Stores a bool in this VariableStorage.
Stores a float in this VariableStorage.
Stores a string in this VariableStorage.
Retrieves a value of type T by name.
string message
The text that should be logged.
The name of the variable to retrieve the value of.
T result
On return, if this method returned true, contains the retrieved value. If this method returned false, contains the default value of T (for example, 0 for float values, null for strings, and so on.)
T
The type of the variable to retrieve.
System.Func<TResult> implementation
The method to be invoked when the function is called.
TResult
The return type of the function.
The name of the variable to retrieve the value of.
T result
On return, if this method returned true, contains the retrieved value. If this method returned false, contains the default value of T (for example, 0 for float values, null for strings, and so on.)
T
The type of the variable to retrieve.
int selectedOptionID
The ID number of the Option that the user selected.
DialogueCompleteHandler: Represents the method that is called when the dialogue has reached its end, and no more code remains to be run.
Yarn.Line line
The Line that has been delivered.
NodeStartHandler: Represents the method that is called when the Dialogue begins executing a node.
DialogueCompleteHandler: Represents the method that is called when the dialogue has reached its end, and no more code remains to be run.
string completedNodeName
The name of the node.
Represents the method that is called when the Dialogue delivers a Line .
Represents a method that receives diagnostic messages and error information from a Dialogue .
Represents the method that is called when the Dialogue reaches the end of a node.
Represents the method that is called when the Dialogue begins executing a node.
Represents the method that is called when the Dialogue delivers an OptionSet .
Represents the method that is called when the dialogue anticipates that it will deliver lines.
Contains classes for working with Yarn Spinner in the Unity game engine.
The type of the function's first argument.
System.Func<T1, TResult> implementation
The method to be invoked when the function is called.
TResult
The return type of the function.
TResult
The return type of the function.
T1
public bool IsAvailable { get; private set; }public void Clear()bool boolValue
The boolean value to store.
string variableName
The name to associate with this variable.
public Option[] Options { get; private set; }Property in Option
Gets the identifying number for this option.
public int ID { get; private set; }When the user selects this option, this value should be used as the parameter for SetSelectedOption(int) .
public void SetValue(string variableName, bool boolValue)The name of this node.
the entry in the program's string table that contains the original text of this node; null if this is not available
The tags associated with this node.
The list of instructions in this node.
A jump table, mapping the names of labels to positions in the instructions list.
The Program reaches its end. When this occurs, SetNode(string) must be called before Continue() is called again.
An error occurs while executing the Program.
This method has no effect if it is called while the Dialogue is currently in the process of executing instructions.
LineHandler: Represents the method that is called when the Dialogue delivers a Line .
OptionsHandler: Represents the method that is called when the Dialogue delivers an OptionSet .
CommandHandler: Represents the method that is called when the Dialogue delivers a Command .
: Represents the method that is called when the Dialogue reaches the end of a node.
: Represents the method that is called when the dialogue has reached its end, and no more code remains to be run.
public void Continue()System.Func<T1, T2, T3, T4, TResult> implementation
The method to be invoked when the function is called.
TResult
The return type of the function.
TResult
The return type of the function.
public void RegisterFunction<T1, T2, T3, T4, TResult>(string name, Func<T1, T2, T3, T4, TResult> implementation)string name
The name of the function.
Struct in Yarn
Inherits from System.ValueType
A line of dialogue, sent from the Dialogue to the game.
public struct LineWhen the game receives a Line, it should do the following things to prepare the line for presentation to the user.
Use the value in the ID field to look up the appropriate user-facing text in the string table.
Use to replace all substitutions in the user-facing text.
Use to parse all markup in the line.
You do not create instances of this struct yourself. They are created by the during program execution.
: Gets or sets the that is called when a line is ready to be shown to the user.
Struct in Yarn
Inherits from System.ValueType
A set of Option s, sent from the Dialogue to the game.
public struct OptionSetYou do not create instances of this struct yourself. They are created by the Dialogue during program execution.
: Gets or sets the that is called when a set of options are ready to be shown to the user.
Struct in OptionSet
Inherits from System.ValueType
An option to be presented to the user.
public struct OptionDelegate in Yarn
Inherits from System.MulticastDelegate
Represents the method that is called when the Dialogue begins executing a node.
public delegate void NodeStartHandler(string startedNodeName);: Represents the method that is called when the Dialogue delivers a .
: Represents the method that is called when the Dialogue delivers an .
: Represents the method that is called when the Dialogue delivers a .
Class in
Inherits from System.Object
A collection of functions that can be called from Yarn programs.
You do not create instances of this class yourself. The class creates one of its own, which you can access via the property.
Method in
Registers a new function that returns a value, which can be called from a Yarn program.
T1
The type of the function's first argument.
T2
The type of the function's second argument.
T3
The type of the function's third argument.
T4
The type of the function's fourth argument.
Gets the name of the node that will be run if this option is selected.
Gets the identifying number for this option.
Gets a value indicating whether the player should be permitted to select this option.
Gets the Line that should be presented to the user for this option.
The string ID for this line.
The values that should be inserted into the user-facing text before delivery.
Gets the Option s that should be presented to the user.
An option to be presented to the user.
NodeCompleteHandler: Represents the method that is called when the Dialogue reaches the end of a node.
DialogueCompleteHandler: Represents the method that is called when the dialogue has reached its end, and no more code remains to be run.
string startedNodeName
The name of the node.
Removes a function from the Library.
Gets a value indicating whether this contains a function named name .
Returns a System.Delegate with a given name.
Loads functions from another .
Dialogue: Co-ordinates the execution of Yarn programs.
public class LibrarySystem.Func<T1, T2, T3, TResult> implementation
The method to be invoked when the function is called.
TResult
The return type of the function.
TResult
The return type of the function.
public void RegisterFunction<T1, T2, T3, TResult>(string name, Func<T1, T2, T3, TResult> implementation)string name
The name of the function.
Class in Yarn
Inherits from System.Object
A type that represents functions.
public class FunctionType : ITypeFunctions have parameters and a return type, and can be called from script. Instances of this type are created when the host application registers new functions (such as through using the RegisterFunction(string,Delegate) methods or similar.)
T1
The type of the function's first argument.
T2
The type of the function's second argument.
T3
The type of the function's third argument.
Gets a more verbose description of this type.
Gets the collection of methods that are available on this type.
Gets the name of this type.
Gets the list of the parameter types that this function is called with.
Registers a new function that returns a value, which can be called from a Yarn program.
Registers a new function that returns a value, which can be called from a Yarn program.
Registers a new function that returns a value, which can be called from a Yarn program.
Registers a new function that returns a value, which can be called from a Yarn program.
Registers a new function that returns a value, which can be called from a Yarn program.
Registers a new function that returns a value, which can be called from a Yarn program.
Registers a new function that returns a value, which can be called from a Yarn program.
Gets the parent of this type.
Gets the type of value that this function returns.
Class in Yarn
Inherits from System.Object
Co-ordinates the execution of Yarn programs.
public class Dialogue : IAttributeMarkerProcessorInitializes a new instance of the class.
The node that execution will start from.
Loads the nodes from the specified , and adds them to the nodes already loaded.
Starts, or continues, execution of the current Program.
Gets or sets the that is called when a command is to be delivered to the game.
Replaces all substitution markers in a text with the given substitution list.
Returns the string ID that contains the original, uncompiled source text for a node.
Returns the tags for the node nodeName .
Gets a value indicating whether a specified node exists in the Program.
Parses a line of text, and produces a containing the results.
Prepares the that the user intends to start running a node.
Loads all nodes from the provided .
Signals to the that the user has selected a specified .
Immediately stops the .
Unloads all nodes from the Dialogue.
Gets the name of the node that this Dialogue is currently executing.
Gets or sets the that is called when the dialogue reaches its end.
Gets a value indicating whether the Dialogue is currently executing Yarn instructions.
Gets or sets the 's locale, as an IETF BCP 47 code.
Gets the that this Dialogue uses to locate functions.
Gets or sets the that is called when a line is ready to be shown to the user.
Invoked when the Dialogue needs to report debugging information.
Invoked when the Dialogue needs to report an error.
Gets or sets the that is called when a node is complete.
Gets the names of the nodes in the currently loaded Program.
Gets or sets the that is called when a node is started.
Gets or sets the that is called when a set of options are ready to be shown to the user.
Gets or sets the that is called when the dialogue anticipates delivering some lines.
Gets or sets the object that provides access to storing and retrieving the values of variables.