public TitleScreenState() { var possibleKeys = new[] { Keyboard.Key.Delete, Keyboard.Key.P, Keyboard.Key.BackSlash, Keyboard.Key.Escape, Keyboard.Key.Tab, Keyboard.Key.Period, Keyboard.Key.F5, Keyboard.Key.D }; startKey = possibleKeys[Content.Random.Next(possibleKeys.Length)]; logo = new SpriteComponent { Sprite = new Sprite(Content.Logo) }; prompt = new TextComponent { Text = new Text("Press " + startKey.ToString().ToUpper(), Content.Font, 16) }; input = new InputComponent(); input.KeyEvents[startKey] = (key, mod, time) => Program.TransitionToState<GameplayState>(); }
public GameplayState() { Map = new MapObject(Content.Level); Player = new Player(Map.Spawn); camera = new CameraComponent("scroll", Map.Map.Height * Map.Map.TileHeight, 160); // could be worse GraphicsSubsystem.Instance.SwitchCamera("scroll"); score = new TextComponent { Text = new Text("", Content.Font, 16) }; meterBack = new SpriteComponent { Sprite = new Sprite(Content.MeterBack) }; meterFront = new SpriteComponent { Sprite = new Sprite(Content.MeterFront) }; Score = 0; Content.Music.PlayingOffset = TimeSpan.Zero; Content.Music.Play(); }