Route.cs 876 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using System;
  2. using System.Collections.Generic;
  3. using Roads;
  4. using UnityEditor;
  5. using UnityEngine;
  6. using UnityEngine.Rendering;
  7. namespace Routes
  8. {
  9. [Serializable]
  10. public struct RouteItem
  11. {
  12. [SerializeReference]
  13. public Turn turn;
  14. public RoadDirection from;
  15. public RoadDirection to;
  16. public void Apply()
  17. {
  18. turn.comingFrom = from;
  19. turn.goingTo = to;
  20. }
  21. public void Clear()
  22. {
  23. turn.comingFrom = RoadDirection.None;
  24. turn.goingTo = RoadDirection.None;
  25. }
  26. }
  27. [Serializable]
  28. public class Route
  29. {
  30. public List<RouteItem> items;
  31. public void Clear()
  32. {
  33. items.ForEach(i => i.Clear());
  34. }
  35. public void Show()
  36. {
  37. items.ForEach(i => i.Apply());
  38. }
  39. }
  40. }