function Uniform(width, height, options) {
      var _this13;
      _this13 = _Dungeon.call(this, width, height) || this;
      _this13._options = {
        roomWidth: [3, 9],
        roomHeight: [3, 5],
        roomDugPercentage: 0.1,
        timeLimit: 1000 /* we stop after this much time has passed (msec) */
      };

      Object.assign(_this13._options, options);
      _this13._map = [];
      _this13._dug = 0;
      _this13._roomAttempts = 20; /* new room is created N-times until is considered as impossible to generate */
      _this13._corridorAttempts = 20; /* corridors are tried N-times until the level is considered as impossible to connect */
      _this13._connected = []; /* list of already connected rooms */
      _this13._unconnected = []; /* list of remaining unconnected rooms */
      _this13._digCallback = _this13._digCallback.bind(_assertThisInitialized(_this13));
      _this13._canBeDugCallback = _this13._canBeDugCallback.bind(_assertThisInitialized(_this13));
      _this13._isWallCallback = _this13._isWallCallback.bind(_assertThisInitialized(_this13));
      return _this13;
    }
@class Dungeon generator which tries to fill the space evenly. Generates independent rooms and tries to connect them.
@augments ROT.Map.Dungeon