diff options
Diffstat (limited to 'src/commands/crypto')
| -rw-r--r-- | src/commands/crypto/btc.ts | 36 | ||||
| -rw-r--r-- | src/commands/crypto/btcchange.ts | 48 |
2 files changed, 84 insertions, 0 deletions
diff --git a/src/commands/crypto/btc.ts b/src/commands/crypto/btc.ts new file mode 100644 index 0000000..c0c14f3 --- /dev/null +++ b/src/commands/crypto/btc.ts @@ -0,0 +1,36 @@ +import { Command, CommandoMessage } from 'discord.js-commando'; +import emoji from 'emoji-random'; +import btc from 'btc-value'; +btc.setApiKey('a43419ce-fc59-4951-8af9-20c5e36ef73f'); + +module.exports = class BTCUtility extends Command { + constructor(client) { + super(client, { + name: 'btc', + aliases: ['bitcoin', 'crypto'], + group: 'utility', + memberName: 'btc', + description: 'Allows you to check current Bitcoin price.', + args: [ + { + key: 'currencyName', + prompt: 'What currency could you like to see it in? (USD, AUD, CAD, etc.)', + type: 'string' + } + ], + examples: [ + 'uwu!bitcoin aud', + 'uwu!crypto cad', + 'uwu!btc usd' + ], + userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], + clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'] + }); + } + run(msg: CommandoMessage, { currencyName }) { + currencyName = currencyName.toUpperCase(); + btc({ isDecimal: true, currencyCode: currencyName }).then(value => { + msg.reply('The current price of *Bitcoin* in **' + currencyName + '** is **' + value + '**. ' + emoji.random()); + }); + } +};
\ No newline at end of file diff --git a/src/commands/crypto/btcchange.ts b/src/commands/crypto/btcchange.ts new file mode 100644 index 0000000..9ef5d4d --- /dev/null +++ b/src/commands/crypto/btcchange.ts @@ -0,0 +1,48 @@ +import { Command, CommandoMessage } from 'discord.js-commando'; +import btc from 'btc-value'; +import emoji from 'emoji-random'; +btc.setApiKey('a43419ce-fc59-4951-8af9-20c5e36ef73f'); + +module.exports = class BTCChangeUtility extends Command { + constructor(client) { + super(client, { + name: 'btcchange', + aliases: ['bitcoinchange', 'cryptochange', 'btcc'], + group: 'utility', + memberName: 'btcchange', + description: 'Allows you to check the fluctuation in Bitcoin prices within a specified amount of time.', + args: [ + { + key: 'timeAmount', + prompt: 'What time range do you want to check the fluction amount in? (day, hour, week)', + type: 'string' + } + ], + examples: [ + 'uwu!btcchange day', + 'uwu!bitcoinchange hour', + 'uwu!cryptochange week', + 'uwu!btcc day' + ], + userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], + clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'] + }); + } + run(msg: CommandoMessage, { timeAmount }) { + if (timeAmount == 'day') { + btc.getPercentageChangeLastDay().then(percentage => { + msg.reply('The fluction amount of *Bitcoin* in the last **' + timeAmount + '** is **' + percentage + '%**. ' + emoji.random()); + }); + } else if (timeAmount == 'hour') { + btc.getPercentageChangeLastHour().then(percentage => { + msg.reply('The fluction amount of *Bitcoin* in the last **' + timeAmount + '** is **' + percentage + '%**. ' + emoji.random()); + }); + } else if (timeAmount == 'week') { + btc.getPercentageChangeLastWeek().then(percentage => { + msg.reply('The fluction amount of *Bitcoin* in the last **' + timeAmount + '** is **' + percentage + '%**. ' + emoji.random()); + }); + } else { + msg.reply('*' + timeAmount + '* is not a valid range. ' + emoji.random()); + } + } +};
\ No newline at end of file |