aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/commands/fun/coinFlip.ts26
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);
+ }
+}