@randsum/daggerheart
Version:
A flexible, type-safe dice roller for building Daggerheart-compatible applications
23 lines (22 loc) • 618 B
JavaScript
import { rollDH } from './rollDH';
export function meetOrBeatDH(difficultyClass, rollArg) {
const result = rollDH(rollArg);
const core = {
...result,
success: result.type === 'critical hope' ? true : result.total >= difficultyClass,
target: difficultyClass
};
return {
...core,
description: formatDescription(core)
};
}
function formatDescription({ type, success }) {
if (type === 'critical hope') {
return 'Critical Success (With Hope)';
}
if (success) {
return `Success with ${type}`;
}
return `Failure with ${type}`;
}