EasyTalk API
Loading...
Searching...
No Matches
EasyTalk.Nodes.Logic.CompareStringsNode Class Reference

A conditional node which compares two string values, outputs the result of the comparison, and continues down the dialogue flow path attributed to the result. More...

Inherits EasyTalk.Nodes.Core.Node, EasyTalk.Nodes.Core.DialogueFlowNode, EasyTalk.Nodes.Core.ConditionalNode, and EasyTalk.Nodes.Core.FunctionalNode.

Public Member Functions

 CompareStringsNode ()
 Creates a new CompareStringNode.
 
bool DetermineAndStoreValue (NodeHandler nodeHandler, Dictionary< int, object > nodeValues, GameObject convoOwner=null)
 Determines the value of this node and stores it in the provided Dictionary of node and connection IDs to values.
Parameters
nodeHandlerThe node handler being used.
nodeValuesA mapping between node or connection IDs and the values attributed to them.
convoOwnerThe GameObject which on which the dialogue logic is currently running.
Returns
Returns true if the value was determined and stored successfully. IF the value could not be determined (perhaps due to needing to await feedback or other processing), this method returns false.

 
List< int > GetDependencyOutputIDs ()
 Returns a List of IDs for output connections that this node is dependent on in order to evaluate itself and determine the value to store.
Returns
The List of output connections that this node is dependent on.

 
NodeConnection GetFalseOutput ()
 Returns the dialogue flow output connection for when the result of the node's condition is false.
Returns
The dialogue flow output connection for when the result of the node's condition is false.

 
NodeConnection GetFlowInput ()
 Returns the dialogue flow input for the node.
Returns
The dialogue flow input for the node.

 
NodeConnection GetFlowOutput ()
 Returns the dialogue flow output for the node.
Returns
The dialogue flow output for the node.

 
NodeConnection GetOutput (bool value)
 Returns the dialogue flow output which corresponds to the specified boolean value.
Parameters
valueThe value to retrieve a dialogue flow output for.
Returns
The dialogue flow output which corresponds to the specified boolean value.

 
NodeConnection GetTrueOutput ()
 Returns the dialogue flow output connection for when the result of the node's condition is true.
Returns
The dialogue flow output connection for when the result of the node's condition is true.

 
bool HasDependencies ()
 Returns whether the node is dependent on values coming into input connections.
Returns
Whether the node has dependencies.

 
- Public Member Functions inherited from EasyTalk.Nodes.Core.Node
void AddInput (NodeConnection input)
 Adds the provided input connection to the node's inputs.
 
void AddOutput (NodeConnection output)
 Adds the provided output connection to the node's outputs.
 
NodeConnection AddInput (InputOutputType connectionType)
 Adds a new input connection of the specified type to the node's inputs.
 
NodeConnection AddOutput (InputOutputType connectionType)
 Adds a new output connection of the specified type to the node's outputs.
 
NodeConnection FindOutputOfType (InputOutputType outputType)
 Finds the first output which matches the specified output type.
 
NodeConnection FindInputOfType (InputOutputType inputType)
 Finds the first input which matches the specified input type.
 
bool HasConnectedInputs ()
 Returns true if this node has inputs which are connected to other node outputs.
 
bool HasConnectedOutputs ()
 Returns true if this node has outputs which are connected to other node inputs.
 
List< int > FindDependencyOutputIDs ()
 Finds and returns a List of all output IDs which are connected to this node's value (non-dialogue-flow) inputs.
 
string GetJSON ()
 Returns a JSON string representation of the node.
 

Properties

string ComparisonTypeString [get, set]
 Gets or sets the type of comparison this node should perform (from a string equivalent to a StringComparisonType toString() value).
 
StringComparisonType ComparisonType [get, set]
 Gets or sets the string comparison type to perform.
 
string ValueA [get, set]
 Gets or sets the first value to use in the comparison.
 
string ValueB [get, set]
 Gets or sets the second value to use in the comparison.
 
- Properties inherited from EasyTalk.Nodes.Core.Node
int ID [get, set]
 Gets or sets the node ID.
 
string NodeTypeString [get, set]
 Gets or sets the node type string.
 
float XPosition [get, set]
 Gets or sets the X position of the node.
 
float YPosition [get, set]
 Gets or sets the Y position of the node.
 
string Name [get, set]
 Gets or sets the name of the node.
 
float Width [get, set]
 Gets or sets the width of the node.
 
float Height [get, set]
 Gets or sets the height of the node.
 
NodeType NodeType [get, set]
 Gets or sets the node type.
 
List< NodeConnectionInputs [get, set]
 Gets or sets the List of input connections of the node.
 
List< NodeConnectionOutputs [get, set]
 Gets or sets the List of output connections of the node.
 

Private Attributes

StringComparisonType comparisonType
 The type of string comparison to perform.
 
string valueA
 The first value to use in the comparison.
 
string valueB
 The second value to use in the comparison.
 

Additional Inherited Members

- Static Public Member Functions inherited from EasyTalk.Nodes.Core.Node
static Node Deserialize (string json)
 Deserializes a Node from the specified JSON string.
 
- Protected Member Functions inherited from EasyTalk.Nodes.Core.Node
List< NodeConnectionFindFlowInputs ()
 Finds and returns a List of all inputs which are dialogue flow inputs.
 
List< NodeConnectionFindFlowOutputs ()
 Finds and returns a List of all outputs which are dialogue flow outputs.
 
- Protected Attributes inherited from EasyTalk.Nodes.Core.Node
int nodeId = NodeUtils.NextID()
 The ID of the node.
 
string name
 The name of the node.
 
NodeType nodeType
 The type of the node.
 
List< NodeConnectioninputs = new List<NodeConnection>()
 A List of input connections of the node.
 
List< NodeConnectionoutputs = new List<NodeConnection>()
 A List of output connections of the node.
 

Detailed Description

A conditional node which compares two string values, outputs the result of the comparison, and continues down the dialogue flow path attributed to the result.

Constructor & Destructor Documentation

◆ CompareStringsNode()

EasyTalk.Nodes.Logic.CompareStringsNode.CompareStringsNode ( )

Creates a new CompareStringNode.

Member Function Documentation

◆ DetermineAndStoreValue()

bool EasyTalk.Nodes.Logic.CompareStringsNode.DetermineAndStoreValue ( NodeHandler nodeHandler,
Dictionary< int, object > nodeValues,
GameObject convoOwner = null )

Determines the value of this node and stores it in the provided Dictionary of node and connection IDs to values.

Parameters
nodeHandlerThe node handler being used.
nodeValuesA mapping between node or connection IDs and the values attributed to them.
convoOwnerThe GameObject which on which the dialogue logic is currently running.
Returns
Returns true if the value was determined and stored successfully. IF the value could not be determined (perhaps due to needing to await feedback or other processing), this method returns false.

Implements EasyTalk.Nodes.Core.FunctionalNode.

◆ GetDependencyOutputIDs()

List< int > EasyTalk.Nodes.Logic.CompareStringsNode.GetDependencyOutputIDs ( )

Returns a List of IDs for output connections that this node is dependent on in order to evaluate itself and determine the value to store.

Returns
The List of output connections that this node is dependent on.

Implements EasyTalk.Nodes.Core.FunctionalNode.

◆ GetFalseOutput()

NodeConnection EasyTalk.Nodes.Logic.CompareStringsNode.GetFalseOutput ( )

Returns the dialogue flow output connection for when the result of the node's condition is false.

Returns
The dialogue flow output connection for when the result of the node's condition is false.

Implements EasyTalk.Nodes.Core.ConditionalNode.

◆ GetFlowInput()

NodeConnection EasyTalk.Nodes.Logic.CompareStringsNode.GetFlowInput ( )

Returns the dialogue flow input for the node.

Returns
The dialogue flow input for the node.

Implements EasyTalk.Nodes.Core.DialogueFlowNode.

◆ GetFlowOutput()

NodeConnection EasyTalk.Nodes.Logic.CompareStringsNode.GetFlowOutput ( )

Returns the dialogue flow output for the node.

Returns
The dialogue flow output for the node.

Implements EasyTalk.Nodes.Core.DialogueFlowNode.

◆ GetOutput()

NodeConnection EasyTalk.Nodes.Logic.CompareStringsNode.GetOutput ( bool value)

Returns the dialogue flow output which corresponds to the specified boolean value.

Parameters
valueThe value to retrieve a dialogue flow output for.
Returns
The dialogue flow output which corresponds to the specified boolean value.

Implements EasyTalk.Nodes.Core.ConditionalNode.

◆ GetTrueOutput()

NodeConnection EasyTalk.Nodes.Logic.CompareStringsNode.GetTrueOutput ( )

Returns the dialogue flow output connection for when the result of the node's condition is true.

Returns
The dialogue flow output connection for when the result of the node's condition is true.

Implements EasyTalk.Nodes.Core.ConditionalNode.

◆ HasDependencies()

bool EasyTalk.Nodes.Logic.CompareStringsNode.HasDependencies ( )

Returns whether the node is dependent on values coming into input connections.

Returns
Whether the node has dependencies.

Implements EasyTalk.Nodes.Core.FunctionalNode.

Member Data Documentation

◆ comparisonType

StringComparisonType EasyTalk.Nodes.Logic.CompareStringsNode.comparisonType
private

The type of string comparison to perform.

◆ valueA

string EasyTalk.Nodes.Logic.CompareStringsNode.valueA
private

The first value to use in the comparison.

◆ valueB

string EasyTalk.Nodes.Logic.CompareStringsNode.valueB
private

The second value to use in the comparison.

Property Documentation

◆ ComparisonType

StringComparisonType EasyTalk.Nodes.Logic.CompareStringsNode.ComparisonType
getset

Gets or sets the string comparison type to perform.

◆ ComparisonTypeString

string EasyTalk.Nodes.Logic.CompareStringsNode.ComparisonTypeString
getset

Gets or sets the type of comparison this node should perform (from a string equivalent to a StringComparisonType toString() value).

◆ ValueA

string EasyTalk.Nodes.Logic.CompareStringsNode.ValueA
getset

Gets or sets the first value to use in the comparison.

◆ ValueB

string EasyTalk.Nodes.Logic.CompareStringsNode.ValueB
getset

Gets or sets the second value to use in the comparison.