canto/Assets/Scripts/System/SerializableDuration.cs

24 lines
608 B
C#

using System;
using UnityEngine;
using UnityEngine.UIElements;
namespace KitsuneCafe.System
{
[Serializable]
public class SerializableDuration
{
[SerializeField]
private float duration;
[SerializeField]
private TimeUnit unit = TimeUnit.Seconds;
public static implicit operator Duration(SerializableDuration d) => Duration.From(d.duration, d.unit);
public static implicit operator TimeValue(SerializableDuration d)
{
Duration duration = d;
return new TimeValue(duration.Into(TimeUnit.Seconds));
}
}
}