public EGameState Update(GameTime time) { if (!character.sprite.Intersects(mapRectangle)) { return(EGameState.Lost); } character.Update(time); enemyHandler.Update(time); if (!enemyHandler.BossIsStillAlive) { return(EGameState.Won); } List <Character> c = enemyHandler.List; c.Add(character); BulletsEverywhere.Update(time, map, c); character.Collide(map); enemyHandler.Collide(map); camera.Position = character.collision.Center.ToVector2(); camera.SetVisibilityContainedIn(mapRectangle); effect.Parameters["Time"].SetValue((float)time.TotalGameTime.TotalSeconds); if (character.dead) { return(EGameState.Lost); } return(EGameState.InGame); }