merge dev branch(nsfw,scorestreak cmd not finish)
This commit is contained in:
commit
d763390efd
11 changed files with 611 additions and 53 deletions
9
.github/README.md
vendored
9
.github/README.md
vendored
|
@ -44,9 +44,10 @@ If you like this bot, feel free to :star: **Star** this repository.<br>
|
||||||
## <img height="18px" src="../util/assets/images/cod_logo.svg"> **Call of Duty Mobile**
|
## <img height="18px" src="../util/assets/images/cod_logo.svg"> **Call of Duty Mobile**
|
||||||
|
|
||||||
- **Weapon Statistics** courtesy of **Lighthouse v2.1**
|
- **Weapon Statistics** courtesy of **Lighthouse v2.1**
|
||||||
> Will soon be using stats provided by **Round Table** of Cygnoux Familia.
|
> Will soon be using stats provided by **Stats On Duty**.
|
||||||
- **Currated Gunsmith Builds** by various content creators like Jokesta, dHitman, Path.exe and more comming soon.
|
- **Currated Gunsmith Builds** by various content creators like Jokesta, dHitman, Path.exe and more comming soon.
|
||||||
- **Perks** detailed info about the perks.
|
- **Perks** detailed info about the perks.
|
||||||
|
- **Scorestreak** detailed info about scorestreak with preview videos.
|
||||||
- **Randomly Generated Class** Wanna try something challenging? try our Randomly Generated Gunsmith builds.
|
- **Randomly Generated Class** Wanna try something challenging? try our Randomly Generated Gunsmith builds.
|
||||||
|
|
||||||
> We also provide access to our database that includes In-depth Weapon statistics & Gunsmith Builds from various Content Creators, & other Call of duty related info, please [contact us](https://rebrand.ly/cathSupport) for more info.
|
> We also provide access to our database that includes In-depth Weapon statistics & Gunsmith Builds from various Content Creators, & other Call of duty related info, please [contact us](https://rebrand.ly/cathSupport) for more info.
|
||||||
|
@ -59,7 +60,7 @@ If you like this bot, feel free to :star: **Star** this repository.<br>
|
||||||
|
|
||||||
A detailed Deployment guide can be found [here](https://thunder75.gitbook.io/cath-bot/deployment).
|
A detailed Deployment guide can be found [here](https://thunder75.gitbook.io/cath-bot/deployment).
|
||||||
|
|
||||||
<details>
|
<!-- <details>
|
||||||
<summary>Made With</summary>
|
<summary>Made With</summary>
|
||||||
|
|
||||||
[![JavaScript](https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black)](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
|
[![JavaScript](https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black)](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
|
||||||
|
@ -76,9 +77,9 @@ A detailed Deployment guide can be found [here](https://thunder75.gitbook.io/cat
|
||||||
![GitHub Discussions](https://img.shields.io/github/discussions/night0721/cath.exe?color=5865F2&logo=github&logoColor=ffffff&style=for-the-badge)
|
![GitHub Discussions](https://img.shields.io/github/discussions/night0721/cath.exe?color=5865F2&logo=github&logoColor=ffffff&style=for-the-badge)
|
||||||
![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/night0721/cath.exe?color=5865F2&logo=github&logoColor=ffffff&style=for-the-badge)
|
![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/night0721/cath.exe?color=5865F2&logo=github&logoColor=ffffff&style=for-the-badge)
|
||||||
[![Last commit](https://img.shields.io/github/last-commit/night0721/cath.exe?icon=discord&color=5865F2&style=for-the-badge&scale=1.4)](https://github.com/night0721/cath.exe)
|
[![Last commit](https://img.shields.io/github/last-commit/night0721/cath.exe?icon=discord&color=5865F2&style=for-the-badge&scale=1.4)](https://github.com/night0721/cath.exe)
|
||||||
<!-- [![Files](https://tokei.rs/b1/github/night0721/cath.exe?category=files&style=for-the-badge)](https://github.com/night0721/cath.exe) -->
|
<!-- [![Files](https://tokei.rs/b1/github/night0721/cath.exe?category=files&style=for-the-badge)](https://github.com/night0721/cath.exe)
|
||||||
|
|
||||||
</details>
|
</details> -->
|
||||||
|
|
||||||
<h1 align = "center"> Support, Feature Request & Bug Reports </h1>
|
<h1 align = "center"> Support, Feature Request & Bug Reports </h1>
|
||||||
|
|
||||||
|
|
|
@ -82,29 +82,4 @@ function weaponIdentifier(inpWeaponName) {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return "Couldn't identify the weapon: `" + '"' + inpWeaponName + '"`';
|
return "Couldn't identify the weapon: `" + '"' + inpWeaponName + '"`';
|
||||||
}
|
}
|
||||||
// ENABLE AFTER Holloween
|
|
||||||
|
|
||||||
// run: async (client, interaction, args) => {
|
|
||||||
// const embed = new MessageEmbed()
|
|
||||||
// .setTitle(`Prefix commands are now disabled`)
|
|
||||||
// .setDescription(`Please enable **Application commands** in the channel settings to get access to slash commands, we have discontinued prefix commands.`)
|
|
||||||
// .setColor(client.color)
|
|
||||||
// .setThumbnail(interaction.guild.iconURL({ dynamic: true }))
|
|
||||||
// .addFields(
|
|
||||||
// {
|
|
||||||
// name: "Need help ?",
|
|
||||||
// value: `Join our **[Support Server](https://discord.gg/SR7TeNJG67)**`,
|
|
||||||
// inline: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// name: "Support us <a:donate:896985486260846614>",
|
|
||||||
// value: `[KoFi](https://ko-fi.com/cathteam)`,
|
|
||||||
// inline: true,
|
|
||||||
// }
|
|
||||||
// )
|
|
||||||
// .setThumbnail("https://github.com/night0721/cath.js/blob/master/util/assets/images/nyx_logo_transparent.webp")
|
|
||||||
// .setTimestamp();
|
|
||||||
// interaction.followUp({ embeds: [embed] });
|
|
||||||
// },
|
|
||||||
// };
|
|
|
@ -51,7 +51,6 @@ class NYX extends Client {
|
||||||
"614423108388126731", // Camper on Duty
|
"614423108388126731", // Camper on Duty
|
||||||
"767173194943168542", // Dark Bonker
|
"767173194943168542", // Dark Bonker
|
||||||
"718762019586572341", // NYX Nation
|
"718762019586572341", // NYX Nation
|
||||||
"869583978108157972", // Lighthouse Community
|
|
||||||
"840225563193114624", // Command Test
|
"840225563193114624", // Command Test
|
||||||
];
|
];
|
||||||
const client = this;
|
const client = this;
|
||||||
|
|
|
@ -97,7 +97,8 @@ module.exports = {
|
||||||
{
|
{
|
||||||
name: "Swordfish",
|
name: "Swordfish",
|
||||||
value: "swordfish",
|
value: "swordfish",
|
||||||
}, // {
|
},
|
||||||
|
// {
|
||||||
// name: "Kilo 141",
|
// name: "Kilo 141",
|
||||||
// value: "kilo",
|
// value: "kilo",
|
||||||
// },
|
// },
|
||||||
|
@ -116,7 +117,8 @@ module.exports = {
|
||||||
{
|
{
|
||||||
name: "Jokesta",
|
name: "Jokesta",
|
||||||
value: "jokesta",
|
value: "jokesta",
|
||||||
}, // {
|
},
|
||||||
|
// {
|
||||||
// name: "Stats On Duty",
|
// name: "Stats On Duty",
|
||||||
// value: "sod",
|
// value: "sod",
|
||||||
// },
|
// },
|
||||||
|
@ -827,4 +829,4 @@ module.exports = {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
177
command/CODM/scorestreak.js
Normal file
177
command/CODM/scorestreak.js
Normal file
|
@ -0,0 +1,177 @@
|
||||||
|
const { MessageEmbed } = require("discord.js");
|
||||||
|
const { CODMClient } = require("cath");
|
||||||
|
const c = new CODMClient("Gae");
|
||||||
|
module.exports = {
|
||||||
|
name: "scorestreak",
|
||||||
|
description: "Get Scorestreak stats",
|
||||||
|
type: "CHAT_INPUT",
|
||||||
|
usage: "{Scorestreak}",
|
||||||
|
category: "CODM",
|
||||||
|
options: [
|
||||||
|
{
|
||||||
|
type: "SUB_COMMAND",
|
||||||
|
name: "lethal",
|
||||||
|
description: "Lethal Scorestreak",
|
||||||
|
options: [
|
||||||
|
{
|
||||||
|
type: 3,
|
||||||
|
name: "scorestreak",
|
||||||
|
description: "Select a lethal scorestreak",
|
||||||
|
required: true,
|
||||||
|
choices: [
|
||||||
|
{
|
||||||
|
name: "Shield Turret",
|
||||||
|
value: "shieldturret",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Hunter Killer Drone",
|
||||||
|
value: "hunterkillerdrone",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "MQ-27 Dragonfire",
|
||||||
|
value: "mq27dragonfire",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Predator Missile",
|
||||||
|
value: "predatormissile",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Hawk X3",
|
||||||
|
value: "hawkx3",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Sentry Gun",
|
||||||
|
value: "sentrygun",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Lightning Strike",
|
||||||
|
value: "lightningstrike",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Orbital Laser",
|
||||||
|
value: "orbitallaser",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "XS1 Goliath",
|
||||||
|
value: "xs1goliath",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Cluster Strike",
|
||||||
|
value: "clusterstrike",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "XS1 Goliath",
|
||||||
|
value: "xs1goliath",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Stealth Chopper",
|
||||||
|
value: "stealthchopper",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Swarm",
|
||||||
|
value: "swarm",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Napalm",
|
||||||
|
value: "napalm",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "VTOL",
|
||||||
|
value: "vtol",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: "SUB_COMMAND",
|
||||||
|
name: "support",
|
||||||
|
description: "Support Scorestreak",
|
||||||
|
options: [
|
||||||
|
{
|
||||||
|
type: 3,
|
||||||
|
name: "scorestreak",
|
||||||
|
description: "Select a Support Scorestreak",
|
||||||
|
required: true,
|
||||||
|
choices: [
|
||||||
|
{
|
||||||
|
name: "UAV",
|
||||||
|
value: "uav",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Shock RC",
|
||||||
|
value: "shockrc",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Care Package",
|
||||||
|
value: "carepackage",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Counter UAV",
|
||||||
|
value: "cuav",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "SAM Turret",
|
||||||
|
value: "samturret",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Advance UAV",
|
||||||
|
value: "auav",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "EMP Systems",
|
||||||
|
value: "empsystems",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
run: async (client, interaction, args) => {
|
||||||
|
const val = args[1];
|
||||||
|
const d = await c.getscorestreak(val);
|
||||||
|
const embed = new MessageEmbed()
|
||||||
|
.setTitle(d.scorestreak)
|
||||||
|
.setURL(d.preview_video)
|
||||||
|
.setDescription(`\`\`\`${d.description}\`\`\``)
|
||||||
|
.addFields(
|
||||||
|
{
|
||||||
|
name: "Cost",
|
||||||
|
value: `\`\`\`${d.cost}\`\`\``,
|
||||||
|
inline: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Lethal",
|
||||||
|
value: `
|
||||||
|
${d.lethal == true
|
||||||
|
? "<a:nyx_checkmark:897240322411724841> Yes"
|
||||||
|
: "<a:nyx_cross:897244999211696198> No"}`,
|
||||||
|
inline: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "AI-Assisted",
|
||||||
|
value: `
|
||||||
|
${d.manual == false
|
||||||
|
? "<a:nyx_checkmark:897240322411724841> Yes"
|
||||||
|
: "<a:nyx_cross:897244999211696198> No"}`,
|
||||||
|
inline: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "More Info",
|
||||||
|
value: `\`\`\`${d.special}\`\`\``,
|
||||||
|
inline: false
|
||||||
|
}
|
||||||
|
)
|
||||||
|
.setThumbnail(`${d.preview}`)
|
||||||
|
.setFooter(`Made by ${client.author}`, client.user.displayAvatarURL())
|
||||||
|
.setColor(
|
||||||
|
d.type == "lethal"
|
||||||
|
? "FF2222"
|
||||||
|
: d.type == "support"
|
||||||
|
? "22FF4A"
|
||||||
|
: client.color
|
||||||
|
)
|
||||||
|
.setTimestamp();
|
||||||
|
interaction.followUp({ embeds: [embed] });
|
||||||
|
},
|
||||||
|
};
|
148
command/NSFW/nsfw.js
Normal file
148
command/NSFW/nsfw.js
Normal file
|
@ -0,0 +1,148 @@
|
||||||
|
const fetch = require('node-fetch')
|
||||||
|
const { MessageActionRow, MessageButton, MessageEmbed, CommandInteraction } = require('discord.js');
|
||||||
|
module.exports = {
|
||||||
|
name : 'nsfw',
|
||||||
|
description: "nsfw command",
|
||||||
|
/**
|
||||||
|
* @param {Client} client
|
||||||
|
* @param {CommandInteraction} interaction
|
||||||
|
* @param {String[]} args
|
||||||
|
*/
|
||||||
|
run : async(client, interaction) => {
|
||||||
|
|
||||||
|
async function embed() {
|
||||||
|
if(!interaction.channel.nsfw){
|
||||||
|
const embed = new MessageEmbed()
|
||||||
|
.setTitle(`AYO Calm Yo Cheeks`)
|
||||||
|
.setDescription('This command only works in NSFW Channels!')
|
||||||
|
.setImage('https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif')
|
||||||
|
.setColor("#02023a")
|
||||||
|
|
||||||
|
interaction.followUp({ embeds: [embed]})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let subreddits = [
|
||||||
|
'GoneWild',
|
||||||
|
'WorkGoneWild',
|
||||||
|
'GoneWild30Plus',
|
||||||
|
'hentai',
|
||||||
|
'HentaiAnime',
|
||||||
|
'nekogirls',
|
||||||
|
'ass',
|
||||||
|
'BestBooties',
|
||||||
|
'BootyGIFs',
|
||||||
|
'booty_queens',
|
||||||
|
'BlowJob',
|
||||||
|
'blowjobs',
|
||||||
|
'blowjobgifs',
|
||||||
|
'OralSex',
|
||||||
|
'boobs',
|
||||||
|
'GrabHerTitties',
|
||||||
|
'titfuck',
|
||||||
|
'milf',
|
||||||
|
'OnlyHotMilfs',
|
||||||
|
'realmoms',
|
||||||
|
'thighs',
|
||||||
|
'PerfectThighs',
|
||||||
|
'thickthighs'
|
||||||
|
]
|
||||||
|
let reddit = subreddits[Math.round(Math.random() * (subreddits.length - 1))];
|
||||||
|
|
||||||
|
let embed1 = null
|
||||||
|
await fetch(`https://meme-api.herokuapp.com/gimme/${reddit}`).then(res => res.json().then(url => {
|
||||||
|
embed1 = new MessageEmbed()
|
||||||
|
.setAuthor(
|
||||||
|
interaction.user.tag,
|
||||||
|
interaction.user.displayAvatarURL({ dynamic: true })
|
||||||
|
)
|
||||||
|
.setTitle(`${url.title}`)
|
||||||
|
.setImage(`${url.url}`)
|
||||||
|
.setTimestamp()
|
||||||
|
.setColor("RED")
|
||||||
|
.setFooter(`${url.ups} 👍`)
|
||||||
|
}))
|
||||||
|
return embed1
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
const row = new MessageActionRow()
|
||||||
|
.addComponents(
|
||||||
|
new MessageButton()
|
||||||
|
.setCustomId('reload')
|
||||||
|
.setLabel('Reload')
|
||||||
|
.setStyle('SUCCESS'),
|
||||||
|
)
|
||||||
|
const disabled = new MessageActionRow()
|
||||||
|
.addComponents(
|
||||||
|
new MessageButton()
|
||||||
|
.setCustomId('reload')
|
||||||
|
.setLabel('Reload')
|
||||||
|
.setStyle('SECONDARY')
|
||||||
|
.setDisabled(true)
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
let m = await interaction.followUp({
|
||||||
|
embeds: [await embed()],
|
||||||
|
components: [row]
|
||||||
|
})
|
||||||
|
|
||||||
|
const collector = m.createMessageComponentCollector({
|
||||||
|
componentType: 'BUTTON',
|
||||||
|
time: 120000,
|
||||||
|
});
|
||||||
|
collector.on('collect', async i => {
|
||||||
|
if (i.user.id === interaction.user.id) {
|
||||||
|
i.deferUpdate()
|
||||||
|
await update(m)
|
||||||
|
collector.stop()
|
||||||
|
} else {
|
||||||
|
i.reply({
|
||||||
|
content: `These buttons aren't for you!`,
|
||||||
|
ephemeral: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
collector.on('end', (mes, r) => {
|
||||||
|
if (r == 'time') {
|
||||||
|
m.edit({
|
||||||
|
components: [disabled],
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
async function update(m) {
|
||||||
|
m.edit({
|
||||||
|
embeds: [await embed()]
|
||||||
|
}).catch(e => console.log(e.requestData.json.embeds))
|
||||||
|
|
||||||
|
const collector = m.createMessageComponentCollector({
|
||||||
|
componentType: 'BUTTON',
|
||||||
|
time: 120000,
|
||||||
|
});
|
||||||
|
collector.on('collect', async i => {
|
||||||
|
if (i.user.id === interaction.user.id) {
|
||||||
|
|
||||||
|
i.deferUpdate()
|
||||||
|
await update(m)
|
||||||
|
collector.stop()
|
||||||
|
} else {
|
||||||
|
i.reply({
|
||||||
|
content: `These buttons aren't for you!`,
|
||||||
|
ephemeral: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
collector.on('end', (mes, r) => {
|
||||||
|
if (r == 'time') {
|
||||||
|
m.edit({
|
||||||
|
components: [disabled],
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
148
nsfw.js
Normal file
148
nsfw.js
Normal file
|
@ -0,0 +1,148 @@
|
||||||
|
const fetch = require('node-fetch')
|
||||||
|
const { MessageActionRow, MessageButton, MessageEmbed, CommandInteraction } = require('discord.js');
|
||||||
|
module.exports = {
|
||||||
|
name : 'nsfw',
|
||||||
|
description: "nsfw command",
|
||||||
|
/**
|
||||||
|
* @param {Client} client
|
||||||
|
* @param {CommandInteraction} interaction
|
||||||
|
* @param {String[]} args
|
||||||
|
*/
|
||||||
|
run : async(client, interaction) => {
|
||||||
|
|
||||||
|
async function embed() {
|
||||||
|
if(!interaction.channel.nsfw){
|
||||||
|
const embed = new MessageEmbed()
|
||||||
|
.setTitle(`AYO Calm Yo Cheeks`)
|
||||||
|
.setDescription('This command only works in NSFW Channels!')
|
||||||
|
.setImage('https://media.discordapp.net/attachments/851761493815853060/893777701599584266/warning.gif')
|
||||||
|
.setColor("#02023a")
|
||||||
|
|
||||||
|
interaction.followUp({ embeds: [embed]})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let subreddits = [
|
||||||
|
'GoneWild',
|
||||||
|
'WorkGoneWild',
|
||||||
|
'GoneWild30Plus',
|
||||||
|
'hentai',
|
||||||
|
'HentaiAnime',
|
||||||
|
'nekogirls',
|
||||||
|
'ass',
|
||||||
|
'BestBooties',
|
||||||
|
'BootyGIFs',
|
||||||
|
'booty_queens',
|
||||||
|
'BlowJob',
|
||||||
|
'blowjobs',
|
||||||
|
'blowjobgifs',
|
||||||
|
'OralSex',
|
||||||
|
'boobs',
|
||||||
|
'GrabHerTitties',
|
||||||
|
'titfuck',
|
||||||
|
'milf',
|
||||||
|
'OnlyHotMilfs',
|
||||||
|
'realmoms',
|
||||||
|
'thighs',
|
||||||
|
'PerfectThighs',
|
||||||
|
'thickthighs'
|
||||||
|
]
|
||||||
|
let reddit = subreddits[Math.round(Math.random() * (subreddits.length - 1))];
|
||||||
|
|
||||||
|
let embed1 = null
|
||||||
|
await fetch(`https://meme-api.herokuapp.com/gimme/${reddit}`).then(res => res.json().then(url => {
|
||||||
|
embed1 = new MessageEmbed()
|
||||||
|
.setAuthor(
|
||||||
|
interaction.user.tag,
|
||||||
|
interaction.user.displayAvatarURL({ dynamic: true })
|
||||||
|
)
|
||||||
|
.setTitle(`${url.title}`)
|
||||||
|
.setImage(`${url.url}`)
|
||||||
|
.setTimestamp()
|
||||||
|
.setColor("RED")
|
||||||
|
.setFooter(`${url.ups} 👍`)
|
||||||
|
}))
|
||||||
|
return embed1
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
const row = new MessageActionRow()
|
||||||
|
.addComponents(
|
||||||
|
new MessageButton()
|
||||||
|
.setCustomId('reload')
|
||||||
|
.setLabel('Reload')
|
||||||
|
.setStyle('SUCCESS'),
|
||||||
|
)
|
||||||
|
const disabled = new MessageActionRow()
|
||||||
|
.addComponents(
|
||||||
|
new MessageButton()
|
||||||
|
.setCustomId('reload')
|
||||||
|
.setLabel('Reload Meme')
|
||||||
|
.setStyle('SECONDARY')
|
||||||
|
.setDisabled(true)
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
let m = await interaction.followUp({
|
||||||
|
embeds: [await embed()],
|
||||||
|
components: [row]
|
||||||
|
})
|
||||||
|
|
||||||
|
const collector = m.createMessageComponentCollector({
|
||||||
|
componentType: 'BUTTON',
|
||||||
|
time: 120000,
|
||||||
|
});
|
||||||
|
collector.on('collect', async i => {
|
||||||
|
if (i.user.id === interaction.user.id) {
|
||||||
|
i.deferUpdate()
|
||||||
|
await update(m)
|
||||||
|
collector.stop()
|
||||||
|
} else {
|
||||||
|
i.reply({
|
||||||
|
content: `These buttons aren't for you!`,
|
||||||
|
ephemeral: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
collector.on('end', (mes, r) => {
|
||||||
|
if (r == 'time') {
|
||||||
|
m.edit({
|
||||||
|
components: [disabled],
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
async function update(m) {
|
||||||
|
m.edit({
|
||||||
|
embeds: [await embed()]
|
||||||
|
}).catch(e => console.log(e.requestData.json.embeds))
|
||||||
|
|
||||||
|
const collector = m.createMessageComponentCollector({
|
||||||
|
componentType: 'BUTTON',
|
||||||
|
time: 120000,
|
||||||
|
});
|
||||||
|
collector.on('collect', async i => {
|
||||||
|
if (i.user.id === interaction.user.id) {
|
||||||
|
|
||||||
|
i.deferUpdate()
|
||||||
|
await update(m)
|
||||||
|
collector.stop()
|
||||||
|
} else {
|
||||||
|
i.reply({
|
||||||
|
content: `These buttons aren't for you!`,
|
||||||
|
ephemeral: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
collector.on('end', (mes, r) => {
|
||||||
|
if (r == 'time') {
|
||||||
|
m.edit({
|
||||||
|
components: [disabled],
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -40,10 +40,10 @@
|
||||||
"node": "^17.3.0"
|
"node": "^17.3.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"axios": "^0.24.0",
|
"axios": "^0.25.0",
|
||||||
"cath": "^1.4.6",
|
"cath": "^1.4.6",
|
||||||
"discord.js": "^13.6.0",
|
"discord.js": "^13.6.0",
|
||||||
"dotenv": "^11.0.0",
|
"dotenv": "^14.2.0",
|
||||||
"erela.js": "^2.3.3",
|
"erela.js": "^2.3.3",
|
||||||
"erela.js-spotify": "^1.2.0",
|
"erela.js-spotify": "^1.2.0",
|
||||||
"goosecache": "^9.0.14",
|
"goosecache": "^9.0.14",
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
const { MessageEmbed, version: djsversion } = require("discord.js");
|
const { MessageEmbed, version: djsversion } = require("discord.js");
|
||||||
const version = require("../../../package.json").version;
|
const version = require("../../../package.json").version;
|
||||||
const { utc } = require("moment");
|
const { utc } = require("moment");
|
||||||
const os = require("os");
|
// const os = require("os");
|
||||||
module.exports = {
|
module.exports = {
|
||||||
name: "botinfo",
|
name: "botinfo",
|
||||||
description: "Check the info of the bot",
|
description: "Check the info of the bot",
|
||||||
category: "Information",
|
category: "Information",
|
||||||
type: "CHAT_INPUT",
|
type: "CHAT_INPUT",
|
||||||
run: async (client, interaction, args, utils) => {
|
run: async (client, interaction, args, utils) => {
|
||||||
const core = os.cpus()[0];
|
// const core = os.cpus()[0];
|
||||||
const embed = new MessageEmbed()
|
const embed = new MessageEmbed()
|
||||||
.setTitle(`NYX - CODM Gunsmith Bot`)
|
.setTitle(`NYX - CODM Gunsmith Bot`)
|
||||||
.setURL(
|
.setURL(
|
||||||
|
@ -51,18 +51,20 @@ module.exports = {
|
||||||
Discord.js ❯ \`v${djsversion}\`
|
Discord.js ❯ \`v${djsversion}\`
|
||||||
Node.js ❯ \`${process.version}\``,
|
Node.js ❯ \`${process.version}\``,
|
||||||
},
|
},
|
||||||
{
|
// Removed OS Info for troubleshooting.
|
||||||
name: `Hardware`,
|
//
|
||||||
value: `
|
// {
|
||||||
Uptime:** ${utils.timer(os.uptime() * 1000, { long: true })}
|
// name: `Hardware`,
|
||||||
Platform:** ${process.platform}
|
// value: `
|
||||||
CPU:**
|
// Uptime:** ${utils.timer(os.uptime() * 1000, { long: true })}
|
||||||
\u3000 Cores: ${os.cpus().length}
|
// Platform:** ${process.platform}
|
||||||
\u3000 Model: ${core.model}
|
// CPU:**
|
||||||
\u3000 Speed: ${core.speed}MHz
|
// \u3000 Cores: ${os.cpus().length}
|
||||||
**`,
|
// \u3000 Model: ${core.model}
|
||||||
inline: true,
|
// \u3000 Speed: ${core.speed}MHz
|
||||||
}
|
// **`,
|
||||||
|
// inline: true,
|
||||||
|
// }
|
||||||
)
|
)
|
||||||
.addFields({
|
.addFields({
|
||||||
name: `**${client.author}**`,
|
name: `**${client.author}**`,
|
||||||
|
|
|
@ -1015,7 +1015,11 @@
|
||||||
"4x Tactical Scope",
|
"4x Tactical Scope",
|
||||||
"4.4x Tactical Scope"
|
"4.4x Tactical Scope"
|
||||||
],
|
],
|
||||||
"stock": ["YKM Light Stock", "OWC Skeleton Stock", "RTC Steady Stock"],
|
"stock": [
|
||||||
|
"YKM Light Stock",
|
||||||
|
"OWC Skeleton Stock",
|
||||||
|
"RTC Steady Stock"
|
||||||
|
],
|
||||||
"perk": [
|
"perk": [
|
||||||
"FMJ",
|
"FMJ",
|
||||||
"Sleight of Hand",
|
"Sleight of Hand",
|
||||||
|
@ -1035,7 +1039,11 @@
|
||||||
"Tactical Foregrip A",
|
"Tactical Foregrip A",
|
||||||
"Bipod"
|
"Bipod"
|
||||||
],
|
],
|
||||||
"ammo": ["Extended Mag A", "Fast Reload", "Halberd Mag"],
|
"ammo": [
|
||||||
|
"Extended Mag A",
|
||||||
|
"Fast Reload",
|
||||||
|
"Halberd Mag"
|
||||||
|
],
|
||||||
"rear_grip": [
|
"rear_grip": [
|
||||||
"Granulated Grip Tape",
|
"Granulated Grip Tape",
|
||||||
"Ruberized Grip Tape",
|
"Ruberized Grip Tape",
|
||||||
|
@ -1772,6 +1780,54 @@
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"PKM": [
|
||||||
|
{
|
||||||
|
"muzzle": [
|
||||||
|
"OWC Light Suppressor",
|
||||||
|
"Agency Suppressor",
|
||||||
|
"Infantry Compensator",
|
||||||
|
"MIP Flashguard",
|
||||||
|
"OWC Eliminator",
|
||||||
|
"RTC Muzzle Brake"
|
||||||
|
],
|
||||||
|
"barrel": [
|
||||||
|
"Rapid Fire Barrel",
|
||||||
|
"Long-Range Barrel",
|
||||||
|
"MIP Extended Light Barrel"
|
||||||
|
],
|
||||||
|
"optic": [
|
||||||
|
"Red Dot Sight",
|
||||||
|
"Holographic Sight",
|
||||||
|
"3x Tactical Scope",
|
||||||
|
"4x Tactical Scope",
|
||||||
|
"4.4x Tactical Scope"
|
||||||
|
],
|
||||||
|
"stock": [
|
||||||
|
"Light Weight Stock",
|
||||||
|
"Marathon Stock",
|
||||||
|
"No Stock",
|
||||||
|
"Agile Stock"
|
||||||
|
],
|
||||||
|
"perk": [
|
||||||
|
"FMJ",
|
||||||
|
"Sleight of Hand",
|
||||||
|
"Wounding",
|
||||||
|
"Full Ammo",
|
||||||
|
"Disable",
|
||||||
|
"Headshot XP",
|
||||||
|
"Empty Reload"
|
||||||
|
],
|
||||||
|
"laser": ["1mW Steady Aim Laser", "5mW Combat Laser", "Aim Assist Laser"],
|
||||||
|
"underbarrel": ["Crossbar"],
|
||||||
|
"ammo": ["84 Round Hybrid Mag"],
|
||||||
|
"rear_grip": [
|
||||||
|
"Sturdy Grip Tape",
|
||||||
|
"Rustle Grip Tape",
|
||||||
|
"Firm Grip Tape",
|
||||||
|
"Non-Slip Foregrip"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
"RUS_79U": [
|
"RUS_79U": [
|
||||||
{
|
{
|
||||||
"muzzle": [
|
"muzzle": [
|
||||||
|
@ -2542,6 +2598,57 @@
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"PPSh_41": [
|
||||||
|
{
|
||||||
|
"muzzle": [
|
||||||
|
"Tactical Suppressor",
|
||||||
|
"OWC Light Suppressor",
|
||||||
|
"Monolithic Suppressor",
|
||||||
|
"OWC Light Compensator",
|
||||||
|
"MIP Light FLash Guard",
|
||||||
|
"RTC Light Muzzle Brake"
|
||||||
|
],
|
||||||
|
"barrel": [
|
||||||
|
"Gurrilla Light Short",
|
||||||
|
"Last Stand Light",
|
||||||
|
"Banner Heavy"
|
||||||
|
],
|
||||||
|
"optic": [
|
||||||
|
"Red Dot Sight",
|
||||||
|
"Holographic Sight",
|
||||||
|
"Tactical Scope",
|
||||||
|
"3x Tactical Scope"
|
||||||
|
],
|
||||||
|
"stock": ["No Stock", "OWC Skeleton Stock", "RTC Steady Stock"],
|
||||||
|
"perk": [
|
||||||
|
"FMJ",
|
||||||
|
"Sleight of Hand",
|
||||||
|
"Wounding",
|
||||||
|
"Full Ammo",
|
||||||
|
"Disable",
|
||||||
|
"Wild Hip Fire",
|
||||||
|
"Double Kill",
|
||||||
|
"Fast Reload Kill"
|
||||||
|
],
|
||||||
|
"laser": ["RTC Laser 1mW", "MIP Laser 5mW", "OWC Laser - Tactical"],
|
||||||
|
"underbarrel": [
|
||||||
|
"Focused Foregrip",
|
||||||
|
"Tough Foregrip",
|
||||||
|
"Resilient Foregrip",
|
||||||
|
"Tactical Foregrip A",
|
||||||
|
"Operator Foregrip"
|
||||||
|
],
|
||||||
|
"ammo": [
|
||||||
|
"35 Round Fast Reload",
|
||||||
|
"55 Round Light Reload"
|
||||||
|
],
|
||||||
|
"rear_grip": [
|
||||||
|
"Sturdy Grip Tape",
|
||||||
|
"Ruberized Grip Tape",
|
||||||
|
"Rustle Grip Tape"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
"HS2126": [
|
"HS2126": [
|
||||||
{
|
{
|
||||||
"muzzle": [
|
"muzzle": [
|
||||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue