private void CleanUpTrackedEntities() { if (_trackedEntitiesToRemove.Count <= 0) { return; } foreach (var entity in _trackedEntitiesToRemove) { TrackedEntities.Remove(entity); } _trackedEntitiesToRemove.Clear(); }
public void AddTrackedEntity(IEntity entity) { TrackedEntities.Add(entity); entity.Destroy += OnTrackedEntityDestroyed; }
public bool AnythingCollidesWith(Tile tile) => TrackedEntities.Any(entity => entity != tile && tile.GetCurrentBounds().Intersects(entity.GetCurrentBounds()));