Table of Contents

Class Edge

Namespace
DialogueDown.Playbook.Edges
Assembly
DialogueDown.Playbook.dll

A way out of a node, and the node it leads to.

[JsonPolymorphic(TypeDiscriminatorPropertyName = "kind")]
[JsonDerivedType(typeof(SuccessionEdge), "succession")]
[JsonDerivedType(typeof(OptionEdge), "option")]
[JsonDerivedType(typeof(RandomOptionEdge), "random-option")]
[JsonDerivedType(typeof(BranchEdge), "branch")]
[JsonDerivedType(typeof(DivertEdge), "divert")]
public abstract record Edge : IEquatable<Edge>
Inheritance
Edge
Implements
Derived
Inherited Members

Remarks

Every edge has a target, so the base carries it; what differs between kinds is why the edge is taken — a player picked it, a condition allowed it, or reading order simply continued.

Properties

Target

Gets the node this edge leads to, as an index into the playbook's node list.