summaryrefslogtreecommitdiff
path: root/src/commands/crypto/btcchange.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/commands/crypto/btcchange.ts')
-rw-r--r--src/commands/crypto/btcchange.ts48
1 files changed, 48 insertions, 0 deletions
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