TrailRendererTimeline.cs 780 B

12345678910111213141516171819202122232425262728293031323334
  1. using UnityEngine;
  2. namespace Chronos
  3. {
  4. public class TrailRendererTimeline : ComponentTimeline<TrailRenderer>
  5. {
  6. private float _time;
  7. /// <summary>
  8. /// How long does the trail take to fade out before time effects. Use this property instead of TrailRenderer.time, which will be overwritten by the timeline at runtime.
  9. /// </summary>
  10. public float time
  11. {
  12. get { return _time; }
  13. set
  14. {
  15. _time = value;
  16. AdjustProperties();
  17. }
  18. }
  19. public TrailRendererTimeline(Timeline timeline, TrailRenderer component) : base(timeline, component) { }
  20. public override void CopyProperties(TrailRenderer source)
  21. {
  22. _time = source.time;
  23. }
  24. public override void AdjustProperties(float timeScale)
  25. {
  26. component.time = time / Mathf.Abs(timeScale);
  27. }
  28. }
  29. }