public PedestrianGame() { Instance = this; graphics = new GraphicsDeviceManager(this) { // Fill player's screen resolution PreferredBackBufferWidth = GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Width, PreferredBackBufferHeight = GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Height, }; Content.RootDirectory = "Content"; Events = new EventEmitter <GameEvents, IEntity>(new CoreEventsComparer()); Events.AddObserver(GameEvents.GameStart, (e) => { CurrentState = GameState.Playing; if (scene != null) { scene.Unload(); } scene = new Scene(NumPlayers); SoundEffect.MasterVolume = 1; }); Events.AddObserver(GameEvents.GameOver, (e) => { CurrentState = GameState.GameOver; SoundEffect.MasterVolume = 0; }); Events.AddObserver(GameEvents.LoadMenu, (e) => { CurrentState = GameState.Menu; }); Events.AddObserver(GameEvents.Exit, (e) => { Exit(); }); Events.AddObserver(GameEvents.Resume, (e) => { CurrentState = GameState.Playing; }); }