public GameContext(IPlayer player,
                           IConsoleWriter consoleWriter,
                           IConsoleReader consoleReader,
                           IDirective[] directives,
                           IRoom[] rooms,
                           ISpecialEventManager specialEventManager,
                           IRoomStateManager roomStateManager)
        {
            _player              = player;
            _consoleWriter       = consoleWriter;
            _consoleReader       = consoleReader;
            _directives          = directives;
            _rooms               = rooms;
            _specialEventManager = specialEventManager;
            _roomStateManager    = roomStateManager;

            _isGameOver = false;
        }
 public OpenDirective(IConsoleWriter consoleWriter,
                      IRoomStateManager roomStateManager)
 {
     _consoleWriter    = consoleWriter;
     _roomStateManager = roomStateManager;
 }