Maze / Library /PackageCache /com.unity.visualscripting@1.8.0 /Runtime /VisualScripting.Flow /Framework /Graph /GetGraph.cs
| using UnityEngine; | |
| namespace Unity.VisualScripting | |
| { | |
| [] | |
| public abstract class GetGraph<TGraph, TGraphAsset, TMachine> : Unit | |
| where TGraph : class, IGraph, new() | |
| where TGraphAsset : Macro<TGraph> | |
| where TMachine : Machine<TGraph, TGraphAsset> | |
| { | |
| /// <summary> | |
| /// The GameObject to retrieve the graph from. | |
| /// </summary> | |
| [] | |
| [] | |
| [] | |
| public ValueInput gameObject { get; protected set; } | |
| /// <summary> | |
| /// The graph that is set on the GameObject. | |
| /// </summary> | |
| [] | |
| [] | |
| [] | |
| public ValueOutput graphOutput { get; protected set; } | |
| protected override void Definition() | |
| { | |
| gameObject = ValueInput<GameObject>(nameof(gameObject), null).NullMeansSelf(); | |
| graphOutput = ValueOutput(nameof(graphOutput), Get); | |
| } | |
| TGraphAsset Get(Flow flow) | |
| { | |
| var go = flow.GetValue<GameObject>(gameObject); | |
| return go.GetComponent<TMachine>().nest.macro; | |
| } | |
| } | |
| } | |