feat: added new yields
This commit is contained in:
@@ -1,10 +0,0 @@
|
|||||||
using System;
|
|
||||||
|
|
||||||
namespace Engine.Core;
|
|
||||||
|
|
||||||
public class CoroutineYield(Func<bool> condition) : ICoroutineYield
|
|
||||||
{
|
|
||||||
private readonly Func<bool> condition = condition;
|
|
||||||
|
|
||||||
public bool Yield() => condition.Invoke();
|
|
||||||
}
|
|
||||||
10
Engine.Core/Systems/Yields/WaitUntilYield.cs
Normal file
10
Engine.Core/Systems/Yields/WaitUntilYield.cs
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Engine.Core;
|
||||||
|
|
||||||
|
public class WaitUntilYield(Func<bool> condition) : ICoroutineYield
|
||||||
|
{
|
||||||
|
private readonly Func<bool> condition = condition;
|
||||||
|
|
||||||
|
public bool Yield() => !condition.Invoke();
|
||||||
|
}
|
||||||
@@ -2,4 +2,4 @@ using Engine.Core;
|
|||||||
|
|
||||||
namespace Engine.Systems.Tween;
|
namespace Engine.Systems.Tween;
|
||||||
|
|
||||||
public class WaitForTweenCompleteCoroutineYield(ITween tween) : CoroutineYield(() => tween.State == TweenState.Completed);
|
public class WaitForTweenCompleteCoroutineYield(ITween tween) : WaitUntilYield(() => tween.State == TweenState.Completed);
|
||||||
|
|||||||
@@ -2,4 +2,4 @@ using Engine.Core;
|
|||||||
|
|
||||||
namespace Engine.Systems.Tween;
|
namespace Engine.Systems.Tween;
|
||||||
|
|
||||||
public class WaitWhileTweenActiveCoroutineYield(ITween tween) : CoroutineYield(() => tween.State.CheckFlag(TweenState.Completed | TweenState.Cancelled));
|
public class WaitWhileTweenActiveCoroutineYield(ITween tween) : WaitUntilYield(() => tween.State.CheckFlag(TweenState.Completed | TweenState.Cancelled));
|
||||||
|
|||||||
Reference in New Issue
Block a user