internal override void Load(Level context) { base.Load(context); LevelCompleted = false; foreach (WorldObject s in ToAdd) { OurSprite o = s as OurSprite; if (o != null) { o.Respawn(); } } }
internal override void Update() { This.Game.AudioManager.StopAllLoopingSoundEffects(); List <Sprite> livingPlayers = (This.Game.CurrentLevel as FrostbyteLevel).allies. Where(x => x.State != SpriteState.Dead).ToList(); if (livingPlayers.Count == 0) { foreach (WorldObject sprites in mWorldObjects) { OurSprite s = sprites as OurSprite; if (s != null) { s.Respawn(); } } } base.Update(); RealignViewport(); Vector3 cameraPosition = new Vector3(Camera.Pos, 0); Viewport viewport = This.Game.GraphicsDevice.Viewport; float zoom = This.Game.CurrentLevel.Camera.Zoom; StartDraw = (cameraPosition + new Vector3(viewport.X, viewport.Y, 0)) / Tile.TileSize; EndDraw = (cameraPosition + new Vector3(viewport.X + viewport.Width / zoom, viewport.Y + viewport.Height / zoom, 0)) / Tile.TileSize; if ((This.Game as FrostbyteGame).GlobalController.NextLevel == ReleasableButtonState.Clicked) { Unload(); } }