// Returns the actual value of this Value object. private Yarn.Value EvaluateValue(Value value) { switch (value.type) { case Value.Type.Variable: dialogue.LogDebugMessage("Checking value " + value.variableName); return(new Value(dialogue.continuity.GetNumber(value.variableName))); default: return(value); } }
// Prints out the list of tokens that the tokeniser found for this node void PrintTokenList(IEnumerable <Token> tokenList) { // Sum up the result var sb = new System.Text.StringBuilder(); foreach (var t in tokenList) { sb.AppendLine(string.Format("{0} ({1} line {2})", t.ToString(), t.context, t.lineNumber)); } // Let's see what we got dialogue.LogDebugMessage("Tokens:"); dialogue.LogDebugMessage(sb.ToString()); }
public bool SetNode(string nodeName) { if (Program.Nodes.ContainsKey(nodeName) == false) { executionState = ExecutionState.Stopped; throw new DialogueException($"No node named {nodeName}"); } dialogue.LogDebugMessage("Running node " + nodeName); currentNode = Program.Nodes [nodeName]; ResetState(); state.currentNodeName = nodeName; return(true); }
public bool SetNode(string nodeName) { if (Program.Nodes.ContainsKey(nodeName) == false) { var error = "No node named " + nodeName; dialogue.LogErrorMessage(error); executionState = ExecutionState.Stopped; return(false); } dialogue.LogDebugMessage("Running node " + nodeName); currentNode = Program.Nodes [nodeName]; ResetState(); state.currentNodeName = nodeName; return(true); }
public bool SetNode(string nodeName) { if (program.nodes.ContainsKey(nodeName) == false) { var error = "No node named " + nodeName; dialogue.LogErrorMessage(error); executionState = ExecutionState.Stopped; return false; } dialogue.LogDebugMessage ("Running node " + nodeName); // Clear the special variables dialogue.continuity.SetNumber(SpecialVariables.ShuffleOptions, 0.0f); currentNodeInstructions = program.nodes [nodeName].instructions; ResetState (); state.currentNode = nodeName; return true; }
public bool SetNode(string nodeName) { if (Program == null || Program.Nodes.Count == 0) { throw new DialogueException($"Cannot load node {nodeName}: No nodes have been loaded."); } if (Program.Nodes.ContainsKey(nodeName) == false) { executionState = ExecutionState.Stopped; throw new DialogueException($"No node named {nodeName} has been loaded."); } dialogue.LogDebugMessage("Running node " + nodeName); currentNode = Program.Nodes [nodeName]; ResetState(); state.currentNodeName = nodeName; nodeStartHandler?.Invoke(nodeName); return(true); }
public bool SetNode(string nodeName) { if (program.nodes.ContainsKey(nodeName) == false) { var error = "No node named " + nodeName; dialogue.LogErrorMessage(error); executionState = ExecutionState.Stopped; return(false); } dialogue.LogDebugMessage("Running node " + nodeName); // Clear the special variables dialogue.continuity.SetValue(SpecialVariables.ShuffleOptions, new Value(false)); currentNode = program.nodes [nodeName]; ResetState(); state.currentNodeName = nodeName; ExampleDialogueUI.onNewNode.Invoke(); return(true); }