dnd-roller
Version:
A simple command-line dice roller for dungeons and dragons
30 lines (24 loc) • 711 B
JavaScript
import dice from 'dice.js';
import configManager from '../lib/config-manager.js';
/**
* Rolls a dice roll.
* Usage:
* dnd roll 1d12 + 9
*/
export default function roll(rollCommand, { configPath }) {
const userConfig = configManager.getConfig(configPath);
let result;
if (userConfig.aliases[rollCommand]) {
console.log(`rolling ${userConfig.aliases[rollCommand]}`)
result = dice.roll(userConfig.aliases[rollCommand]);
} else {
console.log(`rolling ${rollCommand}`)
result = dice.roll(rollCommand);
}
if (result.rightSide === 1) {
console.log('Critical miss!');
} else if (result.rightSide === 20) {
console.log('Critical hit!');
}
console.log(+result);
};