Files
xiao/commands/textedit/morse.js
T
Daniel Odendahl Jr 8074fe51bd Move to snekfetch 🐍
2017-04-16 01:12:22 +00:00

39 lines
1.4 KiB
JavaScript

const { Command } = require('discord.js-commando');
const translator = require('custom-translate');
const { dictionary } = require('./morsemappings.json');
module.exports = class MorseCommand extends Command {
constructor(client) {
super(client, {
name: 'morse',
aliases: [
'morsecode'
],
group: 'textedit',
memberName: 'morse',
description: 'Translates text to morse code. (;morse This is Morse Code.)',
examples: [';morse This is Morse Code.'],
args: [{
key: 'text',
prompt: 'What text would you like to convert to morse?',
type: 'string',
validate: content => {
if (translator.letterTrans(content, dictionary, ' ').length < 1900) {
return true;
}
return 'Your text to encode is too long.';
}
}]
});
}
run(message, args) {
if (message.channel.type !== 'dm') {
if (!message.channel.permissionsFor(this.client.user).hasPermission(['SEND_MESSAGES', 'READ_MESSAGES'])) return;
}
const text = args.text.toLowerCase();
const encoded = translator.letterTrans(text, dictionary, ' ');
return message.say(encoded);
}
};