public sealed class GoapDomainDocumentA GOAP domain, open for editing: three tables, and a graph derived from them.
Remarks
⚠ The tables are edited and the graph is not — doc 37 § Part 5. The edges of a GOAP graph are computed from which effects satisfy which conditions, so drawing them by hand would be authoring the same fact twice and the two copies would disagree the first time somebody changed a condition.
Fields and properties (6)
public const string ExtensionWhat a GOAP domain is written as.
public string AssetPathWhere the file is, absolute.
public GoapDomainContent ContentThe domain as a file holds it.
public string? LoadErrorWhy the file would not read, or .
public IReadOnlyList<BehaviorTreeDiagnostic> DiagnosticsWhat the last Compile had to say.
public GoapDomain? DomainWhat the last Compile produced, or .
Events (1)
public Action<GoapDomainDocument>? ChangedRaised after anything changes.
Methods (6)
public GoapDomainDocument(EditorProject project, AssetId asset, string path)Opens a domain.
public string ToYaml()The domain as it would be written.
public GoapDomain? Compile(BehaviorTreeResolver? resolver = null)Compiles the domain, which is what builds the graph the viewer draws.
public void Edit(string name, Action<GoapDomainContent> gesture, string? mergeKey = null)Runs a gesture as one undo entry.
protected override void SaveCore()Writes the document back to wherever it came from.
public static GoapDomainContent Copy(GoapDomainContent content)A deep copy of a domain, for an undo entry.
Used by (5)
- GoapDomainDocumentTestsVixen.Editor.AssetEditors.Tests
- GoapDomainEditorFactoryVixen.Editor.AssetEditors
- GoapDomainViewVixen.Editor.AssetEditors
- GoapGraphProjectionTestsVixen.Editor.AssetEditors.Tests
- SnapshotCommandVixen.Editor.AssetEditors