A game about forced loneliness, made by TACStudios
1#pragma warning disable 618
2
3namespace Unity.VisualScripting
4{
5 [UnitShortTitle("Is Variable Defined")]
6 public abstract class IsVariableDefinedUnit : VariableUnit
7 {
8 protected IsVariableDefinedUnit() : base() { }
9
10 protected IsVariableDefinedUnit(string defaultName) : base(defaultName) { }
11
12 /// <summary>
13 /// Whether the variable is defined.
14 /// </summary>
15 [DoNotSerialize]
16 [PortLabel("Defined")]
17 [PortLabelHidden]
18 public new ValueOutput isDefined { get; private set; }
19
20 protected override void Definition()
21 {
22 base.Definition();
23
24 isDefined = ValueOutput(nameof(isDefined), IsDefined);
25
26 Requirement(name, isDefined);
27 }
28
29 protected virtual bool IsDefined(Flow flow)
30 {
31 var name = flow.GetValue<string>(this.name);
32
33 return GetDeclarations(flow).IsDefined(name);
34 }
35 }
36}