summaryrefslogtreecommitdiff
path: root/dist/commands/fun/drawcards.js
blob: b1e8f9346f5677f28b7208aae33da5f07553b799 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const discord_js_commando_1 = require("discord.js-commando");
const Util_js_1 = require("../../utils/Util.js");
const suits = ['♣', '♥', '♦', '♠'];
const faces = ['Jack', 'Queen', 'King'];
module.exports = class DrawCardsFun extends discord_js_commando_1.Command {
    constructor(client) {
        super(client, {
            name: 'drawcards',
            aliases: [
                'draw-cards',
                'drawhand',
                'draw-hand'
            ],
            group: 'fun',
            memberName: 'drawcards',
            description: 'Draw a hand of playing cards.',
            examples: ['uwu!drawcards 5'],
            throttling: {
                usages: 5,
                duration: 30
            },
            userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
            clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
            args: [
                {
                    key: 'aAmount',
                    label: 'hand size',
                    prompt: 'How many cards would you like to draw?',
                    type: 'integer',
                    max: 10,
                    min: 1
                },
                {
                    key: 'aJokers',
                    prompt: 'Do you want to include jokers in the draw?',
                    type: 'boolean',
                    default: false
                }
            ],
        });
        this.deck = null;
    }
    run(msg, { aAmount, aJokers }) {
        if (!this.deck)
            this.deck = this.generateDeck();
        let cards = this.deck;
        if (!aJokers)
            cards = cards.filter(card => !card.includes('Joker'));
        return msg.reply(`${aAmount === 1 ? '' : '\n'}${Util_js_1.shuffle(cards).slice(0, aAmount).join('\n')}`);
    }
    generateDeck() {
        const deck = [];
        for (const suit of suits) {
            deck.push(`${suit} Ace`);
            for (let i = 2; i <= 10; i++)
                deck.push(`${suit} ${i}`);
            for (const face of faces)
                deck.push(`${suit} ${face}`);
        }
        deck.push('⭐ Joker');
        deck.push('⭐ Joker');
        return deck;
    }
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2NhcmRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL2Z1bi9kcmF3Y2FyZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw2REFBK0Q7QUFDL0QsaURBQTZDO0FBQzdDLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUE7QUFDbEMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFBO0FBRXZDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsTUFBTSxZQUFhLFNBQVEsNkJBQU87SUFDL0MsWUFBWSxNQUFNO1FBQ2QsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNWLElBQUksRUFBRSxXQUFXO1lBQ2pCLE9BQU8sRUFBRTtnQkFDTCxZQUFZO2dCQUNaLFVBQVU7Z0JBQ1YsV0FBVzthQUNkO1lBQ0QsS0FBSyxFQUFFLEtBQUs7WUFDWixVQUFVLEVBQUUsV0FBVztZQUN2QixXQUFXLEVBQUUsK0JBQStCO1lBQzVDLFFBQVEsRUFBRSxDQUFDLGlCQUFpQixDQUFDO1lBQzdCLFVBQVUsRUFBRTtnQkFDUixNQUFNLEVBQUUsQ0FBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNmO1lBQ0QsZUFBZSxFQUFFLENBQUMsZUFBZSxFQUFFLHNCQUFzQixDQUFDO1lBQzFELGlCQUFpQixFQUFFLENBQUMsZUFBZSxFQUFFLHNCQUFzQixDQUFDO1lBQzVELElBQUksRUFBRTtnQkFDRjtvQkFDSSxHQUFHLEVBQUUsU0FBUztvQkFDZCxLQUFLLEVBQUUsV0FBVztvQkFDbEIsTUFBTSxFQUFFLHdDQUF3QztvQkFDaEQsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsR0FBRyxFQUFFLEVBQUU7b0JBQ1AsR0FBRyxFQUFFLENBQUM7aUJBQ1Q7Z0JBQ0Q7b0JBQ0ksR0FBRyxFQUFFLFNBQVM7b0JBQ2QsTUFBTSxFQUFFLDRDQUE0QztvQkFDcEQsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsT0FBTyxFQUFFLEtBQUs7aUJBQ2pCO2FBQ0o7U0FDSixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtJQUNwQixDQUFDO0lBQ0QsR0FBRyxDQUFDLEdBQW9CLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUFFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFBO1FBQy9DLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDckIsSUFBSSxDQUFDLE9BQU87WUFBRSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQ25FLE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLGlCQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQ2xHLENBQUM7SUFDRCxZQUFZO1FBQ1IsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFBO1FBQ2YsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7WUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksTUFBTSxDQUFDLENBQUE7WUFDeEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUU7Z0JBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ3ZELEtBQUssTUFBTSxJQUFJLElBQUksS0FBSztnQkFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDLENBQUE7U0FDekQ7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDcEIsT0FBTyxJQUFJLENBQUE7SUFDZixDQUFDO0NBQ0osQ0FBQyJ9