EasyTalk API
Loading...
Searching...
No Matches
EasyTalk.Nodes.Common.OptionModifierNode Class Reference

A node which allows presented dialogue options to be modified during runtime. More...

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

Public Member Functions

 OptionModifierNode ()
 Creates a new OptionModifierNode.
 
void 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.

 
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.

 
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

bool IsDisplayed [get, set]
 Gets or sets whether the option(s) this modifier node is connected to should be displayed.
 
bool IsSelectable [get, set]
 Gets or sets whether the option(s) this modifier node is connected to should be selectable.
 
- 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

bool isDisplayed = true
 Whether the option should be displayed.
 
bool isSelectable = true
 Whether the option should be selectable.
 

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 node which allows presented dialogue options to be modified during runtime.

Constructor & Destructor Documentation

◆ OptionModifierNode()

EasyTalk.Nodes.Common.OptionModifierNode.OptionModifierNode ( )

Creates a new OptionModifierNode.

Member Function Documentation

◆ DetermineAndStoreValue()

void EasyTalk.Nodes.Common.OptionModifierNode.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.

Implements EasyTalk.Nodes.Core.FunctionalNode.

◆ GetDependencyOutputIDs()

List< int > EasyTalk.Nodes.Common.OptionModifierNode.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.

◆ HasDependencies()

bool EasyTalk.Nodes.Common.OptionModifierNode.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

◆ isDisplayed

bool EasyTalk.Nodes.Common.OptionModifierNode.isDisplayed = true
private

Whether the option should be displayed.

◆ isSelectable

bool EasyTalk.Nodes.Common.OptionModifierNode.isSelectable = true
private

Whether the option should be selectable.

Property Documentation

◆ IsDisplayed

bool EasyTalk.Nodes.Common.OptionModifierNode.IsDisplayed
getset

Gets or sets whether the option(s) this modifier node is connected to should be displayed.

◆ IsSelectable

bool EasyTalk.Nodes.Common.OptionModifierNode.IsSelectable
getset

Gets or sets whether the option(s) this modifier node is connected to should be selectable.