diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/commands/fun/coinFlip.ts | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/commands/fun/coinFlip.ts b/src/commands/fun/coinFlip.ts new file mode 100644 index 0000000..b0805cd --- /dev/null +++ b/src/commands/fun/coinFlip.ts @@ -0,0 +1,26 @@ +import { BushCommand, type BushMessage, type BushSlashMessage } from '#lib'; + +export default class CoinFlipCommand extends BushCommand { + public constructor() { + super('coinFlip', { + aliases: ['coin-flip', 'cf'], + category: 'fun', + description: 'Flip a virtual coin.', + usage: ['coinflip'], + examples: ['coinflip'], + clientPermissions: (m) => util.clientSendAndPermCheck(m), + userPermissions: [], + slash: true + }); + } + + public override async exec(message: BushMessage | BushSlashMessage) { + const random = Math.random(); + let result: string; + const fall = message.author.id === '322862723090219008' ? 0.1 : 0.001; //dw about it + if (random < fall) result = 'The coin fell off the table :('; + else if (random <= 0.5 + fall / 2) result = 'Heads'; + else result = 'Tails'; + await message.util.reply(result); + } +} |