Dateien nach "commands/info-search" hochladen
This commit is contained in:
parent
cd5f32bb1c
commit
a87d20e238
|
@ -0,0 +1,52 @@
|
|||
const Discord = require("discord.js");
|
||||
|
||||
const malScraper = require('mal-scraper');
|
||||
|
||||
|
||||
module.exports = {
|
||||
name: "anime",
|
||||
category: "suchen",
|
||||
description: "Informieren Sie sich über einen Anime",
|
||||
usage: "[command | Anime]",
|
||||
run: async (client, message, args) => {
|
||||
//command
|
||||
const search = `${args}`;
|
||||
if (!search)
|
||||
return message.reply('Bitte geben Sie eine Suchanfrage ein!');
|
||||
|
||||
malScraper.getInfoFromName(search)
|
||||
.then((data) => {
|
||||
const malEmbed = new Discord.MessageEmbed()
|
||||
.setAuthor(`Meine Anime-Liste Suchergebnis für ${args}`.split(',').join(' '))
|
||||
.setThumbnail(data.picture)
|
||||
.setColor('RANDOM') //What ever u want color!
|
||||
.addField('Premiered', `\`${data.premiered}\``, true)
|
||||
.addField('Broadcast', `\`${data.broadcast}\``, true)
|
||||
.addField('Genres', `\`${data.genres}\``, true)
|
||||
.addField('English Title', `\`${data.englishTitle}\``, true)
|
||||
.addField('Japanese Title', `\`${data.japaneseTitle}\``, true)
|
||||
.addField('Type', `\`${data.type}\``, true)
|
||||
.addField('Episodes', `\`${data.episodes}\``, true)
|
||||
.addField('Rating', `\`${data.rating}\``, true)
|
||||
.addField('Aired', `\`${data.aired}\``, true)
|
||||
.addField('Score', `\`${data.score}\``, true)
|
||||
.addField('Favorite', `\`${data.favorites}\``, true)
|
||||
.addField('Ranked', `\`${data.ranked}\``, true)
|
||||
.addField('Duration', `\`${data.duration}\``, true)
|
||||
.addField('Studios', `\`${data.studios}\``, true)
|
||||
.addField('Popularity', `\`${data.popularity}\``, true)
|
||||
.addField('Members', `\`${data.members}\``, true)
|
||||
.addField('Score Stats', `\`${data.scoreStats}\``, true)
|
||||
.addField('Source', `\`${data.source}\``, true)
|
||||
.addField('Synonyms', `\`${data.synonyms}\``, true)
|
||||
.addField('Status', `\`${data.status}\``, true)
|
||||
.addField('Identifier', `\`${data.id}\``, true)
|
||||
.addField('Link', data.url, true)
|
||||
.setTimestamp()
|
||||
.setFooter(`Requested ${message.member.displayName}`, message.author.displayAvatarURL({ dynamic: true }))
|
||||
|
||||
message.channel.send(malEmbed);
|
||||
|
||||
})
|
||||
}
|
||||
};
|
|
@ -0,0 +1,41 @@
|
|||
const Discord = require('discord.js');
|
||||
|
||||
|
||||
|
||||
|
||||
module.exports = {
|
||||
|
||||
name:"invites",
|
||||
aliases: ["invs"],
|
||||
category: "info",
|
||||
accessableby: ""
|
||||
,
|
||||
run: async (bot, message, args) => {
|
||||
try {
|
||||
let member = await message.mentions.members.first() || message.guild.members.cache.get(args[0]) || message.guild.members.cache.find(r => r.user.username.toLowerCase() === args.join(' ').toLocaleLowerCase()) || message.guild.members.cache.find(r => r.displayName.toLowerCase() === args.join(' ').toLocaleLowerCase()) || message.member;
|
||||
|
||||
let invites = await message.guild.fetchInvites()
|
||||
|
||||
let memberInvites = invites.filter(i => i.inviter && i.inviter.id === member.user.id);
|
||||
|
||||
if (memberInvites.size <= 0) {
|
||||
return message.channel.send(`**${member.displayName} hat niemanden auf den Server eingeladen!**`, (member === message.member ? null : member));
|
||||
{} }
|
||||
|
||||
let content = memberInvites.map(i => i.code).join("\n");
|
||||
let index = 0;
|
||||
memberInvites.forEach(invite => index += invite.uses);
|
||||
|
||||
let embed = new Discord.MessageEmbed()
|
||||
.setColor("GREEN")
|
||||
.setFooter(message.guild.name, message.guild.iconURL())
|
||||
.setAuthor(`Invite Tracker für ${message.guild.name}`)
|
||||
.setDescription(`Informationen zu Einladungen von ${member.displayName}`)
|
||||
.addField("**Keine. Eingeladene Personen**", index)
|
||||
.addField("Invitation Codes\n\n", content);
|
||||
message.channel.send(embed);
|
||||
} catch (e) {
|
||||
return message.channel.send(e.message)
|
||||
}
|
||||
}
|
||||
};
|
|
@ -0,0 +1,39 @@
|
|||
const Discord = require("discord.js");
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const { Color } = require("../../config.json");
|
||||
|
||||
module.exports = {
|
||||
name: "avatar",
|
||||
aliases: ["icon", "pfp"],
|
||||
category: "fun",
|
||||
description: "Mitglieder-Avatar anzeigen!",
|
||||
usage: "Avatar | <Mention Member>",
|
||||
accessableby: "everyone",
|
||||
run: async (client, message, args) => {
|
||||
//Start
|
||||
|
||||
let Member = message.mentions.users.first() || message.guild.member(args[0]) || message.author;
|
||||
|
||||
let embed = new Discord.MessageEmbed()
|
||||
.setColor(Color)
|
||||
.addField(
|
||||
"Links",
|
||||
`[Png](${Member.displayAvatarURL({
|
||||
format: "png",
|
||||
dynamic: true
|
||||
})}) | [Jpg](${Member.displayAvatarURL({
|
||||
format: "jpg",
|
||||
dynamic: true
|
||||
})}) | [Webp](${Member.displayAvatarURL({
|
||||
format: "webp",
|
||||
dynamic: true
|
||||
})})`
|
||||
)
|
||||
.setImage(Member.displayAvatarURL({ dynamic: true }))
|
||||
.setTimestamp();
|
||||
|
||||
message.channel.send(embed);
|
||||
|
||||
//End
|
||||
}
|
||||
};
|
|
@ -0,0 +1,21 @@
|
|||
const { Client, Message, MessageEmbed } = require('discord.js');
|
||||
|
||||
module.exports = {
|
||||
|
||||
name: 'badges',
|
||||
category: 'info',
|
||||
/**
|
||||
* @param {Client} client
|
||||
* @param {Message} message
|
||||
* @param {String[]} args
|
||||
*/
|
||||
run: async(client, message, args) => {
|
||||
const user = message.mentions.users.first() || message.author;
|
||||
|
||||
const flags = user.flags.toArray();
|
||||
|
||||
console.log(flags);
|
||||
|
||||
message.channel.send(`${user}'s badges: ${flags.join(', ')}`)
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
const db = require("quick.db");
|
||||
const Discord = require ("discord.js")
|
||||
const { version } = require('../../package.json');
|
||||
const ms = require('pretty-ms');
|
||||
const { version: discordjsVersion } = require('discord.js');
|
||||
module.exports = {
|
||||
|
||||
name: "botinfo",
|
||||
|
||||
category: "info",
|
||||
aliases: ['uptime', 'botstats', 'stats'],
|
||||
description: 'Check\'s bot\'s status',
|
||||
run: async (client, message, args, del, member) => {
|
||||
message.delete();
|
||||
message.channel.send(new Discord.MessageEmbed()
|
||||
.setColor('RANDOM')
|
||||
.setTitle(`${message.author.tag}`)
|
||||
.setThumbnail(client.user.displayAvatarURL({ dynamic: true }))
|
||||
.addField('**• Version**', `1.0.0`, true)
|
||||
.addField(`**• Users**`, `${client.users.cache.size} users`, true)
|
||||
.addField('**• Servers**', `${client.guilds.cache.size} guilds`, true)
|
||||
.addField('**• Discord.js**', `13.2.0`, true)
|
||||
.addField('**• Ping**', `${client.ws.ping}ms`, true)
|
||||
.addField('**• Commands**', `${client.commands.size} cmds`,true)
|
||||
.addField('Wichtige Links ','**• [Support](https://difficult-knights.de/index.php?site=ticketcenter)** • **[Website](https://difficult-knights.de)** ** • [Invite Me](https://discord.com/api/oauth2/authorize?client_id=974563800319676446&permissions=8&scope=bot)**')
|
||||
|
||||
.setTimestamp()
|
||||
.setFooter(
|
||||
`Difficult-Knights BOT`,
|
||||
client.user.displayAvatarURL()
|
||||
))
|
||||
}
|
||||
};
|
|
@ -0,0 +1,29 @@
|
|||
const db = require("quick.db");
|
||||
const Discord = require ("discord.js")
|
||||
const { version } = require('../../package.json');
|
||||
const ms = require('pretty-ms');
|
||||
const { version: discordjsVersion } = require('discord.js');
|
||||
module.exports = {
|
||||
|
||||
name: "dashboard",
|
||||
|
||||
category: "info",
|
||||
aliases: ['dash', 'dashboard', 'dashboards'],
|
||||
description: 'Check\'s bot\'s dashboard',
|
||||
run: async (client, message, args, del, member) => {
|
||||
|
||||
const members = message.guild.members.cache;
|
||||
|
||||
message.channel.send(new Discord.MessageEmbed()
|
||||
.setColor('RANDOM')
|
||||
.setTitle(`${message.author.tag}`)
|
||||
.setThumbnail(client.user.displayAvatarURL({ dynamic: true }))
|
||||
.addField('**• Websites**', `**[Dash](https://Difficult-Knights.de/)**`, true)
|
||||
|
||||
.setTimestamp()
|
||||
.setFooter(
|
||||
`Difficult-Knights BOT`,
|
||||
client.user.displayAvatarURL()
|
||||
))
|
||||
}
|
||||
};
|
|
@ -0,0 +1,32 @@
|
|||
const db = require("quick.db");
|
||||
const Discord = require ("discord.js")
|
||||
const { version } = require('../../package.json');
|
||||
const ms = require('pretty-ms');
|
||||
const { version: discordjsVersion } = require('discord.js');
|
||||
module.exports = {
|
||||
|
||||
name: "developer",
|
||||
|
||||
category: "info",
|
||||
aliases: ['developers', 'developer'],
|
||||
description: 'Check\'s bot\'s status',
|
||||
run: async (client, message, args, del, member) => {
|
||||
message.delete();
|
||||
message.channel.send(new Discord.MessageEmbed()
|
||||
.setColor('RANDOM')
|
||||
.setTitle(`${message.author.tag}`)
|
||||
.setThumbnail(client.user.displayAvatarURL({ dynamic: true }))
|
||||
.addField(
|
||||
"**• Developers**",
|
||||
"</Npg>#0001 , ↷ ! Miu ༉‧#0002"
|
||||
)
|
||||
|
||||
.addField('Wichtige Links ','**• [Support](https://difficult-knights.de/index.php?site=ticketcenter)** • **[Website](https://Difficult-Knights.de/)** ** • [Invite Me](https://discord.com/api/oauth2/authorize?client_id=974563800319676446&permissions=8&scope=bot)**')
|
||||
|
||||
.setTimestamp()
|
||||
.setFooter(
|
||||
`Difficult-Knights BOT`,
|
||||
client.user.displayAvatarURL()
|
||||
))
|
||||
}
|
||||
};
|
|
@ -0,0 +1,45 @@
|
|||
const fetch = require("node-fetch");
|
||||
|
||||
module.exports = {
|
||||
|
||||
name: "discord",
|
||||
category: "search",
|
||||
aliases: ["discorddocs", "djs", "docs"],
|
||||
|
||||
run: async(client, message, args) => {
|
||||
const search = args[0];
|
||||
if (!search) return message.channel.send({
|
||||
embed: {
|
||||
"color": 0x4D5E94,
|
||||
"description": "❌ **Was suchst du?**"
|
||||
|
||||
}
|
||||
});
|
||||
let version = args[1];
|
||||
if (!version) version = `stable`;
|
||||
|
||||
fetch(`https://djsdocs.sorta.moe/v2/embed?src=${encodeURIComponent(version)}&q=${encodeURIComponent(search)}`)
|
||||
.then(res => res.json())
|
||||
.then(body => {
|
||||
if (body === null) return message.channel.send({
|
||||
embed: {
|
||||
"color": 0x4D5E94,
|
||||
"author": {
|
||||
"name": "Discord.js Docs (master)",
|
||||
"url": "https://discord.js.org/#/docs/main/master",
|
||||
"icon_url": "https://discord.js.org/favicon.ico"
|
||||
},
|
||||
"title": "Search results:",
|
||||
"description": "❌ **Keine Ergebnisse, bitte versuchen Sie es erneut.**"
|
||||
}
|
||||
});
|
||||
body.color = 0x4D5E94;
|
||||
message.channel.send({ embed: body });
|
||||
})
|
||||
.catch(e => {
|
||||
message.channel.send({
|
||||
embed: { "color": 0x4D5E94, "author": { "name": "Discord.js Docs (master)", "url": "https://discord.js.org/#/docs/main/master", "icon_url": "https://discord.js.org/favicon.ico" }, "title": "Search results:", "description": "No results." }
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
|
@ -0,0 +1,147 @@
|
|||
const Discord = require("discord.js")
|
||||
|
||||
module.exports = {
|
||||
|
||||
name: 'embedgen',
|
||||
|
||||
aliases: ["emb"],
|
||||
|
||||
description: 'embed Generator',
|
||||
|
||||
category: "info",
|
||||
|
||||
run: async (client, message, args) => {
|
||||
|
||||
try {
|
||||
|
||||
const filter = msg => msg.author.id == message.author.id;
|
||||
|
||||
const options = {
|
||||
|
||||
max: 1
|
||||
|
||||
};
|
||||
|
||||
//===============================================================================================
|
||||
|
||||
// Getting Started
|
||||
|
||||
const embed = new Discord.MessageEmbed();
|
||||
|
||||
message.channel.send("Reply `skip` or `no` for next question, Reply `cancel` to stop the command.");
|
||||
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
|
||||
// Getting Title
|
||||
|
||||
message.channel.send("So, Do you want your embed to have any title?");
|
||||
|
||||
let title = await message.channel.awaitMessages(filter, options);
|
||||
|
||||
if (title.first().content == 'cancel') return message.channel.send('Embed Generator Cancelled.')
|
||||
|
||||
if (title.first().content !== 'skip' && title.first().content !== 'cancel') embed.setTitle(title.first().content);
|
||||
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
|
||||
// Getting Description
|
||||
|
||||
message.channel.send("great, now o you want your embed to have any Description?");
|
||||
|
||||
let Description = await message.channel.awaitMessages(filter, options);
|
||||
|
||||
if (Description.first().content == 'cancel') return message.channel.send('Embed Generator Cancelled.')
|
||||
|
||||
if (Description.first().content !== 'skip' && Description.first().content !== 'cancel') embed.setDescription(Description.first().content);
|
||||
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
|
||||
// Getting Footer
|
||||
|
||||
message.channel.send("So, Do you want your embed to have any Footer?");
|
||||
|
||||
let Footer = await message.channel.awaitMessages(filter, options);
|
||||
|
||||
if (Footer.first().content == 'cancel') return message.channel.send('Embed Generator Cancelled. ')
|
||||
|
||||
if (Footer.first().content !== 'skip' && Footer.first().content !== 'cancel') embed.setFooter(Footer.first().content);
|
||||
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
|
||||
// Getting URL
|
||||
|
||||
if (title.first().content !== 'skip' && title.first().content !== 'cancel') {
|
||||
|
||||
message.channel.send("So, Do you want your embed to have any masked link on title?, say `no` if you do not have set title");
|
||||
|
||||
let URL = await message.channel.awaitMessages(filter, options);
|
||||
|
||||
if (URL.first().content == 'cancel') return message.channel.send('Embed Generator Cancelled.')
|
||||
|
||||
if (URL.first().content !== 'skip' && URL.first().content !== 'cancel') embed.setURL(URL.first().content);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
|
||||
// Getting Color
|
||||
|
||||
message.channel.send("So, Do you want your embed to have any specifci color? Default is Black");
|
||||
|
||||
let Color = await message.channel.awaitMessages(filter, options);
|
||||
|
||||
if (Color.first().content == 'cancel') return message.channel.send('Embed Generator Cancelled.')
|
||||
|
||||
if (Color.first().content !== 'skip' && Color.first().content !== 'cancel') embed.setColor(Color.first().content.toUpperCase() || "2f3136")
|
||||
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
|
||||
// Getting Author Field
|
||||
|
||||
message.channel.send("So, Do you want your embed to have any Author Field?");
|
||||
|
||||
let Author = await message.channel.awaitMessages(filter, options);
|
||||
|
||||
if (Author.first().content == 'cancel') return message.channel.send('Embed Generator Cancelled.')
|
||||
|
||||
if (Author.first().content !== 'skip' && Author.first().content !== 'cancel') embed.setAuthor(Author.first().content);
|
||||
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
|
||||
// Getting TimeStamp
|
||||
|
||||
message.channel.send("So, Do you want your embed to have any TimeStamp? Reply `yes` or `no`");
|
||||
|
||||
let TimeStamp = await message.channel.awaitMessages(filter, options);
|
||||
|
||||
if (TimeStamp.first().content == 'cancel') return message.channel.send('Embed Generator Cancelled.')
|
||||
|
||||
if (TimeStamp.first().content !== 'yes') embed.setTimestamp();
|
||||
|
||||
|
||||
|
||||
message.channel.send(embed)
|
||||
|
||||
} catch (error) {
|
||||
|
||||
console.error(error);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,72 @@
|
|||
const Discord = require("discord.js")
|
||||
module.exports = {
|
||||
name: 'embedgen',
|
||||
aliases: ["emb"],
|
||||
description: 'Einbettungsgenerator',
|
||||
category: "info",
|
||||
run: async (client, message, args) => {
|
||||
|
||||
try {
|
||||
|
||||
const filter = msg => msg.author.id == message.author.id;
|
||||
const options = {
|
||||
max: 1
|
||||
};
|
||||
//===============================================================================================
|
||||
// Getting Started
|
||||
const embed = new Discord.MessageEmbed();
|
||||
message.channel.send("Antworten Sie mit `skip` oder `no` für die nächste Frage. Antworten Sie mit `cancel`, um den Befehl zu stoppen.");
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
// Getting Title
|
||||
message.channel.send("Also, möchten Sie, dass Ihre Einbettung einen Titel hat?");
|
||||
let title = await message.channel.awaitMessages(filter, options);
|
||||
if (title.first().content == 'cancel') return message.channel.send('Einbettungsgenerator abgebrochen.')
|
||||
if (title.first().content !== 'skip' && title.first().content !== 'cancel') embed.setTitle(title.first().content);
|
||||
|
||||
//===============================================================================================
|
||||
// Getting Description
|
||||
message.channel.send("Toll, jetzt möchten Sie, dass Ihre Einbettung eine Beschreibung hat?");
|
||||
let Description = await message.channel.awaitMessages(filter, options);
|
||||
if (Description.first().content == 'cancel') return message.channel.send('Einbettungsgenerator abgebrochen.')
|
||||
if (Description.first().content !== 'skip' && Description.first().content !== 'cancel') embed.setDescription(Description.first().content);
|
||||
|
||||
//===============================================================================================
|
||||
// Getting Footer
|
||||
message.channel.send("Also, möchten Sie, dass Ihre Einbettung eine Fußzeile hat? Oder Abbrechen");
|
||||
let Footer = await message.channel.awaitMessages(filter, options);
|
||||
if (Footer.first().content == 'cancel') return message.channel.send('Einbettungsgenerator abgebrochen. ')
|
||||
if (Footer.first().content !== 'skip' && Footer.first().content !== 'cancel') embed.setFooter(Footer.first().content);
|
||||
|
||||
//===============================================================================================
|
||||
// Getting URL
|
||||
|
||||
|
||||
//===============================================================================================
|
||||
// Getting Color
|
||||
message.channel.send("Möchten Sie also, dass Ihre Einbettung eine bestimmte Farbe hat? Standard ist Schwarz");
|
||||
let Color = await message.channel.awaitMessages(filter, options);
|
||||
if (Color.first().content == 'cancel') return message.channel.send('Einbettungsgenerator abgebrochen.')
|
||||
if (Color.first().content !== 'skip' && Color.first().content !== 'cancel') embed.setColor(Color.first().content.toUpperCase() || "2f3136")
|
||||
|
||||
//===============================================================================================
|
||||
// Getting Author Field
|
||||
message.channel.send("Möchten Sie also, dass Ihre Einbettung ein Autorenfeld hat?");
|
||||
let Author = await message.channel.awaitMessages(filter, options);
|
||||
if (Author.first().content == 'cancel') return message.channel.send('Einbettungsgenerator abgebrochen.')
|
||||
if (Author.first().content !== 'skip' && Author.first().content !== 'cancel') embed.setAuthor(Author.first().content);
|
||||
|
||||
//===============================================================================================
|
||||
// Getting TimeStamp
|
||||
message.channel.send("Wollen Sie also, dass Ihre Einbettung einen TimeStamp hat? Antworten Sie mit `yes` oder `no`.");
|
||||
let TimeStamp = await message.channel.awaitMessages(filter, options);
|
||||
if (TimeStamp.first().content == 'cancel') return message.channel.send('Einbettungsgenerator abgebrochen.')
|
||||
if (TimeStamp.first().content !== 'yes') embed.setTimestamp();
|
||||
|
||||
message.channel.send(embed)
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
const { Discord, discord } = require("discord.js");
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const moment = require("moment");
|
||||
const fetch = require("node-fetch")
|
||||
|
||||
module.exports = {
|
||||
name: "github",
|
||||
aliases: ["git"],
|
||||
category: "search",
|
||||
usage: "Github <Name>",
|
||||
exmaple: "Github Emoji",
|
||||
description: `Github User Account Information!`,
|
||||
run: async (client, message, args) => {
|
||||
|
||||
try {
|
||||
|
||||
if (!args[0]) return message.channel.send(`Bitte geben Sie mir einen Benutzernamen!`)
|
||||
|
||||
fetch(`https://api.github.com/users/${args.join('-')}`)
|
||||
.then(res => res.json()).then(body => {
|
||||
if(body.message) return message.channel.send(`Benutzer nicht gefunden | Bitte geben Sie mir einen gültigen Benutzernamen!`);
|
||||
let { login, avatar_url, name, id, html_url, public_repos, followers, following, location, created_at, bio } = body;
|
||||
|
||||
const embed = new MessageEmbed()
|
||||
.setAuthor(`${login} Information!`, avatar_url)
|
||||
.setColor(`#211F1F`)
|
||||
.setThumbnail(`${avatar_url}`)
|
||||
.addField(`Username`, `${login}`)
|
||||
.addField(`ID`, `${id}`)
|
||||
.addField(`Bio`, `${bio || "No Bio"}`)
|
||||
.addField(`Public Repositories`, `${public_repos || "None"}`, true)
|
||||
.addField(`Followers`, `${followers}`, true)
|
||||
.addField(`Following`, `${following}`, true)
|
||||
.addField(`Location`, `${location || "No Location"}`)
|
||||
.addField(`Account Created`, moment.utc(created_at).format("dddd, MMMM, Do YYYY"))
|
||||
.setFooter(`Tysm für die Benutzung von mir! ${message.author.username}`)
|
||||
|
||||
message.channel.send(embed)
|
||||
|
||||
})
|
||||
|
||||
} catch (error) {
|
||||
console.log(`[Befehle] [github] Fehler im Github-Befehl:\n`, error);
|
||||
return message.channel.send(`Etwas ist schief gelaufen Versuchen Sie es später noch einmal!`)
|
||||
}
|
||||
}
|
||||
};
|
|
@ -0,0 +1,36 @@
|
|||
const discord = require("discord.js");
|
||||
const imdb = require("imdb-api");
|
||||
|
||||
module.exports = {
|
||||
name: "imdb",
|
||||
description: "Informieren Sie sich über Serien und Filme",
|
||||
category: "info",
|
||||
usage: "imdb <name>",
|
||||
run: async (client, message, args, color) => {
|
||||
|
||||
if(!args.length) {
|
||||
return message.channel.send("Bitte geben Sie den Namen des Films oder der Serie an")
|
||||
}
|
||||
|
||||
const imob = new imdb.Client({apiKey: "5e36f0db"}) //You need to paste you imdb api
|
||||
|
||||
let movie = await imob.get({'name': args.join(" ")})
|
||||
|
||||
let embed = new discord.MessageEmbed()
|
||||
.setTitle(movie.title)
|
||||
.setColor("RANDOM")
|
||||
.setThumbnail(movie.poster)
|
||||
.setDescription(movie.plot)
|
||||
.setFooter(`Ratings: ${movie.rating}`)
|
||||
.addField("Country", movie.country, true)
|
||||
.addField("Languages", movie.languages, true)
|
||||
.addField("Type", movie.type, true);
|
||||
|
||||
|
||||
message.channel.send(embed)
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,44 @@
|
|||
const axios = require('axios')
|
||||
const { MessageEmbed } = require('discord.js');
|
||||
module.exports = {
|
||||
name: "ig",
|
||||
category: "search",
|
||||
run: async (client, message, args) => {
|
||||
if (!args[0]) {
|
||||
return message.channel.send(`Bitte geben Sie einen Kanalnamen ein`)
|
||||
}
|
||||
let url, response, account, details;
|
||||
try {
|
||||
url = `https://instagram.com/${args[0]}/?__a=1`;
|
||||
response = await axios.get(url)
|
||||
account = response.data
|
||||
details = account.graphql.user
|
||||
} catch (error) {
|
||||
return message.channel.send(`Kein Konto`)
|
||||
}
|
||||
|
||||
const embed = new MessageEmbed()
|
||||
.setTitle(`${details.is_verified ? `${details.username} <a:verified:727820439497211994>` : ` ${details.username}`} ${details.is_private ? '🔒' : ''} `)
|
||||
.setDescription(details.biography)
|
||||
.setThumbnail(details.profile_pic_url)
|
||||
.addFields(
|
||||
{
|
||||
name: "Total Posts:",
|
||||
value: details.edge_owner_to_timeline_media.count.toLocaleString(),
|
||||
inline: true
|
||||
},
|
||||
{
|
||||
name: "Followers:",
|
||||
value: details.edge_followed_by.count.toLocaleString(),
|
||||
inline: true
|
||||
},
|
||||
{
|
||||
name: "Following:",
|
||||
value: details.edge_follow.count.toLocaleString(),
|
||||
inline: true
|
||||
}
|
||||
)
|
||||
await message.channel.send(embed)
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
|
|
@ -0,0 +1,32 @@
|
|||
const db = require("quick.db");
|
||||
const Discord = require ("discord.js")
|
||||
const { version } = require('../../package.json');
|
||||
const ms = require('pretty-ms');
|
||||
const { version: discordjsVersion } = require('discord.js');
|
||||
module.exports = {
|
||||
|
||||
name: "membercount",
|
||||
|
||||
category: "info",
|
||||
aliases: ['membercount', 'membercounts', 'mc'],
|
||||
description: 'Überprüfen Sie den Status des Bots',
|
||||
run: async (client, message, args, del, member) => {
|
||||
|
||||
const members = message.guild.members.cache;
|
||||
|
||||
message.channel.send(new Discord.MessageEmbed()
|
||||
.setColor('RANDOM')
|
||||
.setTitle(`${message.author.tag}`)
|
||||
.setThumbnail(client.user.displayAvatarURL({ dynamic: true }))
|
||||
.addField('**• Membercount**', `${message.guild.memberCount}`, true)
|
||||
.addField(`**• Humans**`, `${members.filter(member => !member.user.bot).size} users`, true)
|
||||
.addField('**• Bots**', `${members.filter(member => member.user.bot).size} bots`, true)
|
||||
.addField('Wichtige Links ','**• [Support](https://difficult-knights.de/index.php?site=ticketcenter)** • **[Website](https://Difficult-Knights.de/)** ** • [Invite Me](https://discord.com/api/oauth2/authorize?client_id=974563800319676446&permissions=8&scope=bot)**')
|
||||
|
||||
.setTimestamp()
|
||||
.setFooter(
|
||||
`Difficult-Knights BOT`,
|
||||
client.user.displayAvatarURL()
|
||||
))
|
||||
}
|
||||
};
|
|
@ -0,0 +1,52 @@
|
|||
const { MessageEmbed } = require("discord.js");
|
||||
const fetch = require("node-fetch");
|
||||
const moment = require("moment");
|
||||
module.exports = {
|
||||
name: "npm",
|
||||
description: "Suchen Sie nach Paketen auf npm!",
|
||||
category: "search",
|
||||
run: async (client, message, args) => {
|
||||
let query = args.join(' ');
|
||||
if (!query) query = await awaitMessages(message);
|
||||
if (!query) return;
|
||||
const res = await fetch(`https://registry.npmjs.com/${encodeURIComponent(query)}`).catch(err => console.log(err));
|
||||
if (res.status === 404) return message.channel.send('Keine Suchergebnisse gefunden, versuchen Sie vielleicht, nach etwas zu suchen, das existiert.');
|
||||
const body = await res.json();
|
||||
const embed = new MessageEmbed()
|
||||
.setColor(0xde2c2c)
|
||||
.setTitle(body.name)
|
||||
.setURL(`https://www.npmjs.com/package/${body.name}`)
|
||||
.setDescription(body.description || 'No description.')
|
||||
.addField('❯ Version', body['dist-tags'].latest, true)
|
||||
.addField('❯ License', body.license || 'None', true)
|
||||
.addField('❯ Author', body.author ? body.author.name : '???', true)
|
||||
.addField('❯ Creation Date', moment.utc(body.time.created).format('YYYY/MM/DD hh:mm:ss'), true)
|
||||
.addField('❯ Modification Date', body.time.modified ? moment.utc(body.time.modified).format('YYYY/MM/DD hh:mm:ss') : 'None', true)
|
||||
.addField('❯ Repository', body.repository ? `[View Here](${body.repository.url.split('+')[1]})` : 'None', true)
|
||||
.addField('❯ Maintainers', body.maintainers.map(user => user.name).join(', '))
|
||||
message.channel.send(embed);
|
||||
|
||||
|
||||
async function awaitMessages(message) {
|
||||
let responce;
|
||||
|
||||
const filter = (user) => {
|
||||
return user.author.id === message.author.id;
|
||||
};
|
||||
|
||||
message.channel.send('**Wonach möchten Sie suchen?** \nGeben Sie „cancel“ ein, um den Befehl abzubrechen.');
|
||||
|
||||
await message.channel.awaitMessages(filter, { max: 1, time: 120000, errors: ['time'] })
|
||||
.then((msg) => {
|
||||
const firstMsg = msg.first();
|
||||
if (firstMsg.content.toLowerCase() === 'cancel') return firstMsg.react('👍');
|
||||
responce = firstMsg.content;
|
||||
})
|
||||
.catch(() => {
|
||||
message.channel.send('Nun, Sie haben zu lange gebraucht, um den Befehl abzubrechen.');
|
||||
});
|
||||
|
||||
return responce;
|
||||
}
|
||||
},
|
||||
};
|
|
@ -0,0 +1,16 @@
|
|||
const discord = require("discord.js");
|
||||
|
||||
module.exports = {
|
||||
name: "ping",
|
||||
category: "info",
|
||||
description: "Gibt Latenz und API-Ping zurück",
|
||||
run: async (client, message, args) => {
|
||||
|
||||
let embed = new discord.MessageEmbed()
|
||||
.setDescription(`Pong - ${client.ws.ping}ms`)
|
||||
.setColor("RANDOM")
|
||||
.setFooter(`Angefordert von ${message.author.username}`)
|
||||
|
||||
message.channel.send(embed)
|
||||
}
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
const { get } = require("request-promise-native");
|
||||
const { MessageEmbed } = require("discord.js")
|
||||
module.exports = {
|
||||
name: "pokemon",
|
||||
description: "Holen Sie sich eine beliebige Pokemon-Beschreibung",
|
||||
category: "info",
|
||||
usage: "pokemon <name>",
|
||||
run (client, message, args) {
|
||||
|
||||
|
||||
const options = {
|
||||
url: `https://courses.cs.washington.edu/courses/cse154/webservices/pokedex/pokedex.php?pokemon=${args.join(" ")}`,
|
||||
json: true
|
||||
|
||||
}
|
||||
|
||||
message.channel.send(`<a:Exe_Nitro3:743845033475702794>Fetching Informtion for the Pokemon`).then(msg => {
|
||||
get(options).then(body => {
|
||||
|
||||
let embed = new MessageEmbed()
|
||||
.setAuthor(body.name, `https://courses.cs.washington.edu/courses/cse154/webservices/pokedex/${body.images.typeIcon}`)
|
||||
.setDescription(`Typ dieses Pokémon ist **${body.info.type}**. ${body.info.description}`)
|
||||
.setThumbnail(`https://courses.cs.washington.edu/courses/cse154/webservices/pokedex/${body.images.photo}`)
|
||||
.setColor("RANDOM")
|
||||
.setFooter(`Schwäche von Pokémon- ${body.info.weakness}`, `https://courses.cs.washington.edu/courses/cse154/webservices/pokedex/${body.images.weaknessIcon}`)
|
||||
|
||||
message.channel.send(embed)
|
||||
msg.delete()
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,115 @@
|
|||
const { MessageEmbed } = require('discord.js');
|
||||
|
||||
const moment = require('moment');
|
||||
|
||||
const filterLevels = {
|
||||
|
||||
DISABLED: 'Off',
|
||||
|
||||
MEMBERS_WITHOUT_ROLES: 'No Role',
|
||||
|
||||
ALL_MEMBERS: 'Everyone'
|
||||
|
||||
};
|
||||
|
||||
const verificationLevels = {
|
||||
|
||||
NONE: 'None',
|
||||
|
||||
LOW: 'Low',
|
||||
|
||||
MEDIUM: 'Medium',
|
||||
|
||||
HIGH: '(╯°□°)╯︵ ┻━┻',
|
||||
|
||||
VERY_HIGH: '┻━┻ ミヽ(ಠ益ಠ)ノ彡┻━┻'
|
||||
|
||||
};
|
||||
|
||||
const regions = {
|
||||
|
||||
brazil: 'Brazil',
|
||||
|
||||
europe: 'Europe',
|
||||
|
||||
hongkong: 'Hong Kong',
|
||||
|
||||
india: 'India',
|
||||
|
||||
japan: 'Japan',
|
||||
|
||||
russia: 'Russia',
|
||||
|
||||
singapore: 'Singapore',
|
||||
|
||||
southafrica: 'South Africa',
|
||||
|
||||
sydeny: 'Sydeny',
|
||||
|
||||
'us-central': 'US Central',
|
||||
|
||||
'us-east': 'US East',
|
||||
|
||||
'us-west': 'US West',
|
||||
|
||||
'us-south': 'US South'
|
||||
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
|
||||
name: "serverinfo",
|
||||
|
||||
category: "info",
|
||||
|
||||
aliases: ["serverinfo"],
|
||||
|
||||
description: "Informieren Sie sich über Ihren Server.",
|
||||
|
||||
usage: "serverinfo ",
|
||||
|
||||
run: (client, message, args) => {
|
||||
|
||||
const roles = message.guild.roles.cache.sort((a, b) => b.position - a.position).map(role => role.toString());
|
||||
|
||||
const members = message.guild.members.cache;
|
||||
|
||||
const channels = message.guild.channels.cache;
|
||||
|
||||
const emojis = message.guild.emojis.cache;
|
||||
|
||||
const embed = new MessageEmbed()
|
||||
|
||||
.setDescription(`**Gildeninformationen für __${message.guild.name}__**`)
|
||||
|
||||
.setColor('BLUE')
|
||||
|
||||
.setThumbnail(message.guild.iconURL({ dynamic: true }))
|
||||
|
||||
.addField('**• Owner:**', `${message.guild.owner.user.tag}`, true)
|
||||
.addField('** • Created At**', `${moment(message.guild.createdTimestamp).format('LL')} ${moment(message.guild.createdTimestamp).fromNow()}`, true)
|
||||
.addField('** • Roles**', ` ${roles.length}`, true)
|
||||
.addField('** • Emojis**', ` ${emojis.size}`, true)
|
||||
.addField('** • Boost Count**', ` ${message.guild.premiumSubscriptionCount || '0'}`, true)
|
||||
.addField('** • Verification Level**', ` ${verificationLevels[message.guild.verificationLevel]}`, true)
|
||||
.addField('** • Content Filter**', ` ${filterLevels[message.guild.explicitContentFilter]}`, true)
|
||||
.addField('** • Member**', ` ${message.guild.memberCount}`, true)
|
||||
.addField('** • Shard**', `0`, true)
|
||||
.addField('** • Channels**', `⌨️ ${channels.filter(channel => channel.type === 'text').size} | 🔈 ${channels.filter(channel => channel.type === 'voice').size}`, true)
|
||||
.addField('** • Bots**', `${members.filter(member => member.user.bot).size}`, true)
|
||||
|
||||
|
||||
|
||||
|
||||
.setFooter(
|
||||
`Difficult-Knights BOT`,
|
||||
client.user.displayAvatarURL()
|
||||
)
|
||||
.setTimestamp();
|
||||
|
||||
|
||||
message.channel.send(embed);
|
||||
|
||||
}
|
||||
|
||||
};
|
|
@ -0,0 +1,19 @@
|
|||
const discord = require("discord.js")
|
||||
|
||||
module.exports = {
|
||||
name: "servericon",
|
||||
aliases: ["sav", "guildavatar"],
|
||||
category: "info",
|
||||
description: "Holen Sie sich einen Avatar des Servers",
|
||||
run: async (client, message, args) => {
|
||||
|
||||
let embed = new discord.MessageEmbed()
|
||||
|
||||
embed.setDescription(`[Download](${message.guild.iconURL({ dynamic: true, size: 1024 })})`)
|
||||
embed.setImage(message.guild.iconURL({ dynamic: true, size: 1024 }))
|
||||
embed.setColor("RANDOM")
|
||||
|
||||
message.channel.send(embed)
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
const Discord = require("discord.js")
|
||||
const db = require("quick.db")
|
||||
|
||||
module.exports = {
|
||||
name: "snipe",
|
||||
aliases: ["ms", "messagesnipe"],
|
||||
category: "info",
|
||||
usage: "(prefix)snipe",
|
||||
description: "Holen Sie sich die letzte gelöschte Nachricht mit Autor und Bild (falls vorhanden)",
|
||||
run:async (client, message, args) => {
|
||||
|
||||
const msg = client.snipes.get(message.channel.id)
|
||||
if(!msg) return message.channel.send("Es gibt nichts zu schnüffeln!")
|
||||
const embed = new Discord.MessageEmbed()
|
||||
.setAuthor(msg.author)
|
||||
.setDescription(msg.content)
|
||||
if(msg.image)embed
|
||||
.setImage(msg.image)
|
||||
.setColor("00FFFF")
|
||||
.setTimestamp()
|
||||
.setFooter(
|
||||
`Difficult-Knights BOT`,
|
||||
client.user.displayAvatarURL()
|
||||
)
|
||||
|
||||
message.channel.send(embed)
|
||||
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
|
||||
const Discord = require("discord.js")
|
||||
const request = require("node-superfetch") //npm i node-superfetch
|
||||
const {stripIndents} = require("common-tags") //npm i common-tags
|
||||
const twitter = require("twitter-api.js") //npm i twitter-api.js
|
||||
module.exports = {
|
||||
name: "twitter",
|
||||
aliases: ["twe"],
|
||||
category: "search",
|
||||
premiumOnly: "true",
|
||||
run: async (client, msg, args) => {
|
||||
let user = args[0]
|
||||
if(!user) return msg.channel.send("Geben Sie Ihren Twitter-Namen an")
|
||||
|
||||
try {
|
||||
const body = await twitter.users(user)
|
||||
const tweet = new Discord.MessageEmbed()
|
||||
.setColor("BLUE")
|
||||
.setAuthor(`@${body.screen_name.toLowerCase()}`, body.verified ? "https://emoji.gg/assets/emoji/6817_Discord_Verified.png" : null)
|
||||
.setDescription(stripIndents` ${body.description}
|
||||
\`•\` Followers: **${(body.followers_count).toLocaleString()}**
|
||||
\`•\` Following: **${(body.friends_count).toLocaleString()}**
|
||||
\`•\` Tweets: **${(body.statuses_count).toLocaleString()}**
|
||||
\`•\` Account Created At: ${body.created_at}`)
|
||||
.setFooter(`Twitter ID: ${body.id}`, "https://abs.twimg.com/favicons/twitter.ico")
|
||||
.setThumbnail(body.profile_image_url_https.replace('_normal', ''))
|
||||
.setImage(body.profile_banner_url)
|
||||
msg.channel.send(tweet)
|
||||
} catch (e) {
|
||||
if(e.status === 403) return msg.channel.send("Dieser Benutzer im privaten Modus oder gelöschtes Konto")
|
||||
else if(e.status === 404) return msg.channel.send("Not Found")
|
||||
else return msg.channel.send(`Unknown error: \`${e.message}\``)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
const { MessageEmbed } = require("discord.js");
|
||||
const Discord = require("discord.js");
|
||||
module.exports = {
|
||||
name: "uptime",
|
||||
category: "info",
|
||||
description: "Zeigt die Betriebszeit des Bots an.",
|
||||
usage: "uptime",
|
||||
|
||||
run: async (client, message, args) => {
|
||||
let days = Math.floor(client.uptime / 86400000);
|
||||
let hours = Math.floor(client.uptime / 3600000) % 24;
|
||||
let minutes = Math.floor(client.uptime / 60000) % 60;
|
||||
let seconds = Math.floor(client.uptime / 1000) % 60;
|
||||
|
||||
return message.channel.send(`__Uptime:__\n${days}d ${hours}h ${minutes}m ${seconds}s`);
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,101 @@
|
|||
const { MessageEmbed } = require("discord.js")
|
||||
const moment = require("moment")
|
||||
|
||||
module.exports = {
|
||||
name: "userinfo",
|
||||
category: "info",
|
||||
aliases: ["whois", "user"],
|
||||
usage: "userinfo <MENTION>",
|
||||
description: "Holen Sie sich Vorab-Statistiken einer bestimmten Person oder sich selbst",
|
||||
run: async (client, message, args) => {
|
||||
|
||||
|
||||
let user;
|
||||
|
||||
if (!args[0]) {
|
||||
user = message.member;
|
||||
} else {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
user = message.mentions.members.first() || await message.guild.members.fetch(args[0]).catch(err => { return message.channel.send(":x: Kann diese Person nicht finden") })
|
||||
}
|
||||
|
||||
if (!user) {
|
||||
return message.channel.send(":x: Kann diese Person nicht finden!")
|
||||
}
|
||||
|
||||
|
||||
//OPTIONS FOR STATUS
|
||||
|
||||
let stat = {
|
||||
online: "https://emoji.gg/assets/emoji/9166_online.png",
|
||||
idle: "https://emoji.gg/assets/emoji/3929_idle.png",
|
||||
dnd: "https://emoji.gg/assets/emoji/2531_dnd.png",
|
||||
offline: "https://emoji.gg/assets/emoji/7445_status_offline.png"
|
||||
}
|
||||
|
||||
//NOW BADGES
|
||||
let badges = await user.user.flags
|
||||
badges = await badges ? badges.toArray() : ["None"]
|
||||
|
||||
let newbadges = [];
|
||||
badges.forEach(m => {
|
||||
newbadges.push(m.replace("_", " "))
|
||||
})
|
||||
|
||||
let embed = new MessageEmbed()
|
||||
.setThumbnail(user.user.displayAvatarURL({ dynamic: true }))
|
||||
|
||||
//ACTIVITY
|
||||
let array = []
|
||||
if (user.user.presence.activities.length) {
|
||||
|
||||
let data = user.user.presence.activities;
|
||||
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
let name = data[i].name || "None"
|
||||
let xname = data[i].details || "None"
|
||||
let zname = data[i].state || "None"
|
||||
let type = data[i].type
|
||||
|
||||
array.push(`**${type}** : \`${name} : ${xname} : ${zname}\``)
|
||||
|
||||
if (data[i].name === "Spotify") {
|
||||
embed.setThumbnail(`https://i.scdn.co/image/${data[i].assets.largeImage.replace("spotify:", "")}`)
|
||||
}
|
||||
|
||||
embed.setDescription(array.join("\n"))
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
//EMBED COLOR BASED ON member
|
||||
embed.setColor(user.displayHexColor === "#000000" ? "#ffffff" : user.displayHexColor)
|
||||
|
||||
//OTHER STUFF
|
||||
embed.setAuthor(user.user.tag, user.user.displayAvatarURL({ dynamic: true }))
|
||||
|
||||
//CHECK IF USER HAVE NICKNAME
|
||||
if (user.nickname !== null) embed.addField("Nickname", user.nickname)
|
||||
embed.addField("Joined At", moment(user.joinedAt).format("LLLL"))
|
||||
.addField("Account Created At", moment(user.user.createdAt).format("LLLL"))
|
||||
.addField("Common Information", `ID: \`${user.user.id}\`\nDiscriminator: ${user.user.discriminator}\nBot: ${user.user.bot}\nDeleted User: ${user.deleted}`)
|
||||
.addField("Badges", newbadges.join(", ").toLowerCase() || "None")
|
||||
.setFooter(user.user.presence.status, stat[user.user.presence.status])
|
||||
|
||||
|
||||
|
||||
return message.channel.send(embed).catch(err => {
|
||||
return message.channel.send("Error : " + err)
|
||||
})
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
Loading…
Reference in New Issue