public static void DestroyAll() { foreach (var mono in MonoBehaviours) { WaitingForDestruction.Enqueue(mono); } }
public static void UpdateObjects(GameTime gameTime) { foreach (var mono in MonoBehaviours) { mono.Update(gameTime); mono.gameObject.Update(gameTime); } while (WaitingForAdding.Count > 0) { MonoBehaviours.Add(WaitingForAdding.Dequeue()); } while (WaitingForDestruction.Count > 0) { MonoBehaviours.Remove(WaitingForDestruction.Dequeue()); } }
public static void Destroy(MonoBehaviour monoBehaviour) { WaitingForDestruction.Enqueue(monoBehaviour); }