perf!: events refactored throughout all the project to use Event<> class
All delegate events are refactored to use the Event<TSender> and Event<TSender, TArgument> for performance issues regarding delegate events creating garbage, also this gives us better control on event invocation since C# Delegates did also create unnecessary garbage during Delegate.DynamicInvoke
This commit is contained in:
@@ -15,7 +15,7 @@ public class TweenManager : UniverseObject, ITweenManager
|
||||
public ITween StartTween(float duration, ITweenManager.TweenSetCallback? setCallback = null)
|
||||
{
|
||||
Tween tween = Get(duration);
|
||||
tween.OnUpdated += tween => setCallback?.Invoke(tween.Value);
|
||||
tween.OnUpdated.AddListener(tween => setCallback?.Invoke(tween.Value));
|
||||
runningCoroutines.Add(tween, coroutineManager.StartCoroutine(RunTween(tween)));
|
||||
return tween;
|
||||
}
|
||||
@@ -59,6 +59,7 @@ public class TweenManager : UniverseObject, ITweenManager
|
||||
}
|
||||
|
||||
runningCoroutines.Remove(tween);
|
||||
Return(tween);
|
||||
}
|
||||
|
||||
public void CancelTween(ITween tween)
|
||||
|
Reference in New Issue
Block a user