feat: ICoroutineYield for Delaying Coroutines

This commit is contained in:
2024-11-02 22:27:04 +03:00
parent eb445604e8
commit cb60c71184
4 changed files with 30 additions and 0 deletions

View File

@@ -36,8 +36,13 @@ public class PhysicsCoroutineManager : HierarchyObjectBase
private void OnPhysicsStep(IPhysicsEngine2D sender, float stepDeltaTime)
{
for (int i = enumerators.Count - 1; i >= 0; i--)
{
if (enumerators[i].Current is ICoroutineYield coroutineYield && coroutineYield.Yield())
continue;
if (!enumerators[i].MoveNext())
enumerators.RemoveAt(i);
}
}
protected override void OnExitingHierarchy(IGameManager gameManager)