@warriorjs/cli
Version:
WarriorJS command line
49 lines (34 loc) • 1.36 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
var _ansiEscapes = require('ansi-escapes');
var _ansiEscapes2 = _interopRequireDefault(_ansiEscapes);
var _print = require('./print');
var _print2 = _interopRequireDefault(_print);
var _printFloorMap = require('./printFloorMap');
var _printFloorMap2 = _interopRequireDefault(_printFloorMap);
var _printWarriorStatus = require('./printWarriorStatus');
var _printWarriorStatus2 = _interopRequireDefault(_printWarriorStatus);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const warriorStatusRows = 2;
/**
* Prints the game board after moving the cursor up a given number of rows.
*
* @param {Object[][]} floorMap The map of the floor.
* @param {Object} warriorStatus The status of the warrior.
* @param {number} offset The number of rows.
*/
function printBoard(floorMap, warriorStatus, offset) {
if (offset > 0) {
const floorMapRows = floorMap.length;
(0, _print2.default)(_ansiEscapes2.default.cursorUp(offset + floorMapRows + warriorStatusRows));
}
(0, _printWarriorStatus2.default)(warriorStatus);
(0, _printFloorMap2.default)(floorMap);
if (offset > 0) {
(0, _print2.default)(_ansiEscapes2.default.cursorDown(offset));
}
}
exports.default = printBoard;
module.exports = exports.default;
;