VisibleIfAttributeNode.cs 797 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using GraphProcessor;
  5. using System.Linq;
  6. [System.Serializable, NodeMenuItem("Custom/VisibleIfAttributeNode")]
  7. public class VisibleIfAttributeNode : BaseNode
  8. {
  9. public enum Test1
  10. {
  11. A,
  12. B,
  13. C,
  14. D
  15. }
  16. public enum Test2
  17. {
  18. T1,
  19. T2,
  20. T3,
  21. }
  22. public Test1 t1;
  23. [VisibleIf(nameof(t1), Test1.A)]
  24. public float f1;
  25. [VisibleIf(nameof(t1), Test1.B)]
  26. public int f2;
  27. [VisibleIf(nameof(t1), Test1.C)]
  28. public string s1;
  29. [VisibleIf(nameof(t1), Test1.C)]
  30. public Test2 t2;
  31. [Input(name = "In")]
  32. public float input;
  33. [Output(name = "Out")]
  34. public float output;
  35. public override string name => "VisibleIfAttributeNode";
  36. protected override void Process()
  37. {
  38. output = input * 42;
  39. }
  40. }