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>();
        }
Beispiel #2
0
        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();
        }