@randsum/daggerheart
Version:
A flexible, type-safe dice roller for building Daggerheart-compatible applications
27 lines (26 loc) • 867 B
TypeScript
type AdvantageDisadvantageDH = "Advantage" | "Disadvantage";
interface RollArgumentDH {
modifier?: number;
rollingWith?: AdvantageDisadvantageDH;
amplifyHope?: boolean;
amplifyFear?: boolean;
}
type RollResultDHType = "hope" | "fear" | "critical hope";
interface RollResultDH {
type: RollResultDHType;
total: number;
rolls: {
hope: number
fear: number
modifier: number
advantage: number | undefined
};
}
interface MeetOrBeatResultDH extends RollResultDH {
success: boolean;
target: number;
description: string;
}
declare function meetOrBeatDH(difficultyClass: number, rollArg: RollArgumentDH): MeetOrBeatResultDH;
declare function rollDH({ modifier, rollingWith, amplifyHope, amplifyFear }: RollArgumentDH): RollResultDH;
export { rollDH, meetOrBeatDH, RollResultDHType, RollResultDH, RollArgumentDH, MeetOrBeatResultDH, AdvantageDisadvantageDH };