Tanoda
FloatTween.cs
Go to the documentation of this file.
1
3
5
7{
8 public struct FloatTween : ITweenValue
9 {
10 public class FloatTweenCallback : UnityEvent<float> {}
11 public class FloatFinishCallback : UnityEvent {}
12
13 private float m_StartFloat;
14 private float m_TargetFloat;
15 private float m_Duration;
16 private bool m_IgnoreTimeScale;
17 private FloatTweenCallback m_Target;
18 private FloatFinishCallback m_Finish;
19
24 public float startFloat
25 {
26 get { return m_StartFloat; }
27 set { m_StartFloat = value; }
28 }
29
34 public float targetFloat
35 {
36 get { return m_TargetFloat; }
37 set { m_TargetFloat = value; }
38 }
39
44 public float duration
45 {
46 get { return m_Duration; }
47 set { m_Duration = value; }
48 }
49
54 public bool ignoreTimeScale
55 {
56 get { return m_IgnoreTimeScale; }
57 set { m_IgnoreTimeScale = value; }
58 }
59
64 public void TweenValue(float floatPercentage)
65 {
66 if (!ValidTarget())
67 return;
68
69 m_Target.Invoke( Mathf.Lerp (m_StartFloat, m_TargetFloat, floatPercentage) );
70 }
71
76 public void AddOnChangedCallback(UnityAction<float> callback)
77 {
78 if (m_Target == null)
79 m_Target = new FloatTweenCallback();
80
81 m_Target.AddListener(callback);
82 }
83
88 public void AddOnFinishCallback(UnityAction callback)
89 {
90 if (m_Finish == null)
91 m_Finish = new FloatFinishCallback();
92
93 m_Finish.AddListener(callback);
94 }
95
96 public bool GetIgnoreTimescale()
97 {
98 return m_IgnoreTimeScale;
99 }
100
101 public float GetDuration()
102 {
103 return m_Duration;
104 }
105
106 public bool ValidTarget()
107 {
108 return m_Target != null;
109 }
110
114 public void Finished()
115 {
116 if (m_Finish != null)
117 m_Finish.Invoke();
118 }
119 }
120}
float targetFloat
Gets or sets the target float.
Definition: FloatTween.cs:35
void TweenValue(float floatPercentage)
Tweens the float based on percentage.
Definition: FloatTween.cs:64
void AddOnFinishCallback(UnityAction callback)
Adds a on finish callback.
Definition: FloatTween.cs:88
float duration
Gets or sets the duration of the tween.
Definition: FloatTween.cs:45
void Finished()
Invokes the on finish callback.
Definition: FloatTween.cs:114
void AddOnChangedCallback(UnityAction< float > callback)
Adds a on changed callback.
Definition: FloatTween.cs:76
float startFloat
Gets or sets the starting float.
Definition: FloatTween.cs:25
bool ignoreTimeScale
Gets or sets a value indicating whether this UnityEngine.UI.Tweens.ColorTween should ignore time scal...
Definition: FloatTween.cs:55