first commit
This commit is contained in:
44
embeds/modLogs.js
Normal file
44
embeds/modLogs.js
Normal file
@ -0,0 +1,44 @@
|
||||
const { EmbedBuilder } = require('discord.js')
|
||||
|
||||
function modLogEmbed(action, member, reason ) {
|
||||
let title, description, color;
|
||||
|
||||
//console.log(reason);
|
||||
switch (action) {
|
||||
case "ban":
|
||||
title = ":hammer: User Banned";
|
||||
description = `**User:** **${member.user.username}** has been banned.`;
|
||||
reason2 = `**Reason:** ${reason}`;
|
||||
color = "#FF0000";
|
||||
break;
|
||||
case "unban":
|
||||
title = ":tada::party_popper: User Unbanned";
|
||||
description = `**User:** **${member.user.username}** has been unbanned.`;
|
||||
reason2 = `**Reason:** ${reason}`;
|
||||
color = "#00FF00";
|
||||
break;
|
||||
case "mute":
|
||||
return muteEmbed(member);
|
||||
case "unmute":
|
||||
return unmuteEmbed(member);
|
||||
case "warn":
|
||||
return warnEmbed(member);
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return new EmbedBuilder()
|
||||
.setTitle(title)
|
||||
.setDescription(`${description}\n${reason2}`)
|
||||
.setColor(color)
|
||||
.setTimestamp()
|
||||
.setFooter({ text: `User ID: ${member.user.id}` })
|
||||
.setThumbnail(member.user.displayAvatarURL({ dynamic: true }));
|
||||
|
||||
}
|
||||
|
||||
|
||||
module.exports = { modLogEmbed };
|
||||
19
embeds/nowPlaying.js
Normal file
19
embeds/nowPlaying.js
Normal file
@ -0,0 +1,19 @@
|
||||
const { EmbedBuilder } = require('discord.js')
|
||||
|
||||
function nowPlayingEmbed(queue) {
|
||||
if (!queue || queue.length === 0) {
|
||||
return new EmbedBuilder()
|
||||
.setTitle('**🎵 Now Playing:**')
|
||||
.setDescription('No song is currently playing.')
|
||||
.setColor('Grey');
|
||||
}
|
||||
|
||||
const currentSong = queue[0]
|
||||
|
||||
return new EmbedBuilder()
|
||||
.setTitle('**🎵 Now Playing:**')
|
||||
.setDescription(`${currentSong.songName}\n**Requested By:** ${currentSong.getMember || 'Unknown User'}`)
|
||||
.setColor('Green')
|
||||
}
|
||||
|
||||
module.exports = { nowPlayingEmbed }
|
||||
15
embeds/queue.js
Normal file
15
embeds/queue.js
Normal file
@ -0,0 +1,15 @@
|
||||
const { EmbedBuilder } = require('discord.js')
|
||||
|
||||
|
||||
function musicQueueEmbed(queue) {
|
||||
const songLines = queue.map((item, index) =>
|
||||
index === 0 ? `**🎵 Now Playing:** ${item.songName} **Requested By:** ${item.getMember}\n` : `${index + 1}. ${item.songName} - **Requested By:** ${item.getMember}\n`
|
||||
);
|
||||
|
||||
return new EmbedBuilder()
|
||||
.setTitle('Current Queue')
|
||||
.setDescription(songLines.join('\n') || 'No Songs in the queue')
|
||||
.setColor('Blue')
|
||||
}
|
||||
|
||||
module.exports = { musicQueueEmbed }
|
||||
33
embeds/userStreaming.js
Normal file
33
embeds/userStreaming.js
Normal file
@ -0,0 +1,33 @@
|
||||
const { EmbedBuilder, ButtonBuilder, ActionRowBuilder } = require('discord.js');
|
||||
|
||||
function userStreamingEmbed(user, status) {
|
||||
|
||||
const username = user?.username || 'Unknown User';
|
||||
const avatarURL = user?.displayAvatarURL({ dynamic: true }) || null;
|
||||
const streamTitle = status?.details || 'No title available';
|
||||
const gameName = status?.name || 'No game available';
|
||||
const streamURL = status?.url || 'No URL available';
|
||||
|
||||
|
||||
const embed = new EmbedBuilder()
|
||||
.setTitle('📡 Live Stream Alert!')
|
||||
.setDescription(`**${username}** Just went Live on Twitch!`)
|
||||
.addFields( { name: 'Stream Title', value: streamTitle, inline: false }, { name: 'Game / Category', value: gameName, inline: true } )
|
||||
.setColor('Green')
|
||||
.setTimestamp()
|
||||
.setFooter({ text: 'User Streaming Status' })
|
||||
.setThumbnail(avatarURL);
|
||||
|
||||
const streamButton = new ButtonBuilder()
|
||||
.setLabel('🎥 Watch Stream')
|
||||
.setURL(streamURL)
|
||||
.setStyle(5);
|
||||
|
||||
const row = new ActionRowBuilder()
|
||||
.addComponents(streamButton);
|
||||
return { embeds: [embed], components: [row] };
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
userStreamingEmbed
|
||||
};
|
||||
32
embeds/welcomeMember.js
Normal file
32
embeds/welcomeMember.js
Normal file
@ -0,0 +1,32 @@
|
||||
const { GuildMember, EmbedBuilder } = require("discord.js");
|
||||
|
||||
/**
|
||||
* @param {Client} client
|
||||
* @param {GuildMember} member
|
||||
*/
|
||||
|
||||
function welcomeEmbed(member) {
|
||||
let welcomeMessages = [
|
||||
`Welcome to the server ${member.user.username}. We hope you enjoy your stay.`,
|
||||
`We hope you brought pizza ${member.user.username}.`,
|
||||
`Yippe.... Welcome to the server ${member.user.username}.`,
|
||||
`A wild ${member.user.username} has appeared.`,
|
||||
];
|
||||
const randomMessage =
|
||||
welcomeMessages[Math.floor(Math.random() * welcomeMessages.length)];
|
||||
|
||||
return new EmbedBuilder()
|
||||
.setTitle("**New Member**")
|
||||
.setDescription(randomMessage)
|
||||
.addFields(
|
||||
{ name: "Joined at", value: `${member.joinedAt}`, inline: true },
|
||||
{
|
||||
name: "User Created at",
|
||||
value: `${member.user.createdAt}`,
|
||||
inline: true,
|
||||
}
|
||||
)
|
||||
.setThumbnail(member.user.avatarURL());
|
||||
}
|
||||
|
||||
module.exports = { welcomeEmbed };
|
||||
Reference in New Issue
Block a user