Skip to content

Commit

Permalink
deno fmt + added docs on cwod dice
Browse files Browse the repository at this point in the history
  • Loading branch information
Burn-E99 committed Jun 29, 2022
1 parent f95d243 commit ed0a12c
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 9 deletions.
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,10 @@ The Artificer comes with a few supplemental commands to the main rolling command
* `[[4d20r1!]]` will roll 4 d20 dice, rerolling any dice that land on 1, and repeatedly rolling a new d20 for any critical success rolled.
* `[[d20/40]]` will roll a d20 die and divide it by 40.
* `[[((d20+20) - 10) / 5]]` will roll a d20, add 20 to that roll, subtract off 10, and finally divide by 5.
* This command can also handle some custom format dice:
* CWOD Dice - `[[xcwody]]`
* `x` - Number of CWOD dice to roll
* `y` - Difficulty to roll at
* This command also has some useful decorators that can used. These decorators simply need to be placed after all rolls in the message:
* `-c` - Count - Shows the Count Embed, containing the count of successful rolls, failed rolls, rerolls, drops, and explosions
* `-nd` - No Details - Suppresses all details of the requested roll
Expand Down
25 changes: 21 additions & 4 deletions src/commands/rollHelp.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,17 @@ export const rollHelp = (message: DiscordenoMessage) => {
message.send({
embeds: [
{
color: infoColor2,
color: infoColor1,
title: 'The Artificer\'s Roll Command Details:',
description: `You can chain as many of these options as you want, as long as the option does not disallow it.
This command also can fully solve math equations with parenthesis.
The Artificer supports most of the [Roll20 formatting](https://artificer.eanm.dev/roll20). More details and examples can be found [here](https://artificer.eanm.dev/roll20).`,
This command also can fully solve math equations with parenthesis.
The Artificer supports most of the [Roll20 formatting](https://artificer.eanm.dev/roll20). More details and examples can be found [here](https://artificer.eanm.dev/roll20).`,
},
{
color: infoColor2,
title: 'Roll20 Dice Options:',
fields: [
{
name: `\`${config.prefix}xdydzracsq!${config.postfix}\` ...`,
Expand Down Expand Up @@ -165,6 +169,19 @@ export const rollHelp = (message: DiscordenoMessage) => {
},
{
color: infoColor1,
title: 'Custom Dice Options',
fields: [
{
name: 'CWOD Rolling',
value: `\`${config.prefix}xcwody${config.postfix}\`
\`x\` - Number of CWOD dice to roll
\`y\` - Difficulty to roll at`,
inline: true,
},
],
},
{
color: infoColor2,
title: 'Roll Command Decorators:',
description: `This command also has some useful decorators that can used. These decorators simply need to be placed after all rolls in the message.
Expand Down
4 changes: 2 additions & 2 deletions src/solver/rollFormatter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export const formatRoll = (rollConf: string, maximiseRoll: boolean, nominalRoll:

if (!e.dropped && !e.rerolled) {
// If the roll was not dropped or rerolled, add it to the stepTotal and flag the critHit/critFail
switch(e.type) {
switch (e.type) {
case 'ova':
case 'roll20':
tempTotal += e.roll;
Expand Down Expand Up @@ -67,7 +67,7 @@ export const formatRoll = (rollConf: string, maximiseRoll: boolean, nominalRoll:
// After the looping is done, remove the extra " + " from the details and cap it with the closing ]
tempDetails = tempDetails.substring(0, tempDetails.length - 3);
if (tempRollSet[0]?.type === 'cwod') {
tempDetails += `, ${tempRollSet.filter(e => e.critHit).length} Successes, ${tempRollSet.filter(e => e.critFail).length} Fails`;
tempDetails += `, ${tempRollSet.filter((e) => e.critHit).length} Successes, ${tempRollSet.filter((e) => e.critFail).length} Fails`;
}
tempDetails += ']';

Expand Down
4 changes: 2 additions & 2 deletions src/solver/roller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {
LT,
} from '../../deps.ts';

import { RollSet, RollConf, RollType } from './solver.d.ts';
import { RollConf, RollSet, RollType } from './solver.d.ts';
import { compareOrigidx, compareRolls, genRoll, loggingEnabled } from './rollUtils.ts';

// roll(rollStr, maximiseRoll, nominalRoll) returns RollSet
Expand Down Expand Up @@ -104,7 +104,7 @@ export const roll = (rollStr: string, maximiseRoll: boolean, nominalRoll: boolea

// Use critScore to set the difficulty
rollConf.critScore.on = true;
const difficulty = parseInt(cwodParts[1] || '10')
const difficulty = parseInt(cwodParts[1] || '10');
for (let i = difficulty; i <= rollConf.dieSize; i++) {
loggingEnabled && log(LT.LOG, `handling cwod ${rollStr} | Parsing difficulty ${i}`);
rollConf.critScore.range.push(i);
Expand Down
2 changes: 1 addition & 1 deletion src/solver/solver.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,4 +97,4 @@ export type RollConf = {
once: boolean;
nums: number[];
};
}
};

0 comments on commit ed0a12c

Please sign in to comment.