fix from thunder pull req
This commit is contained in:
parent
0c7f654f5a
commit
09b066295c
9 changed files with 178 additions and 1142 deletions
25
.github/README.md
vendored
25
.github/README.md
vendored
|
@ -1,4 +1,4 @@
|
|||
<h1 align="center"> NYX </h1>
|
||||
<h1 align="center"> NYX [Cath.exe] </h1>
|
||||
<!-- header -->
|
||||
<p align="center">
|
||||
<a href="https://rebrand.ly/cathSupport" target="_blank"><img alt="NYX_banner" src = "https://media.discordapp.net/attachments/896078559293104128/896091759157858394/nyx_banner_3d.png?width=1341&height=447"></a>
|
||||
|
@ -18,18 +18,18 @@
|
|||
<a href="https://rebrand.ly/cathSupport"><img src="https://discordapp.com/api/guilds/718762019586572341/widget.png?style=banner2" alt="Support Server" /></a>
|
||||
</p>
|
||||
|
||||
|
||||
<!-- description -->
|
||||
|
||||
**NYX** *(previously known as Cath)* is a first and only **COD Mobile Statistics & Gunsmith** Bot which also doubles as a multipurpose discord bot with many features that include but are not limited to Moderation, Music and Economy. <br>
|
||||
**NYX** _(previously known as Cath)_ is a first and only **COD Mobile Statistics & Gunsmith** Bot which also doubles as a multipurpose discord bot with many features that include but are not limited to Moderation, Music and Economy. <br>
|
||||
The Call of Duty Stats are courtesy of **Round Table** by Cygnoux Familia.<br><br>
|
||||
If you like this bot, feel free to :star: **Star** this repository.<br>
|
||||
|
||||
> ⚠ The Verifed bot instance is current called Cath.exe, we are working on getting it changed
|
||||
<br>
|
||||
> <br>
|
||||
|
||||
# Features
|
||||
> *This is a Non-Exhaustive list for commands. To access the full list of commands, check out our [Documentation](https://thunder75.gitbook.io/cath-bot/core/commands).*
|
||||
|
||||
> _This is a Non-Exhaustive list for commands. To access the full list of commands, check out our [Documentation](https://thunder75.gitbook.io/cath-bot/core/commands)._
|
||||
|
||||
<a href="https://thunder75.gitbook.io/cath-bot/core/commands" ><img src="https://img.shields.io/static/v1?label=List %20OF&message=Commands&color=5865F2&logo=gitbook&logoColor=white&style=for-the-badge&scale=1.4"></a>
|
||||
|
||||
|
@ -43,7 +43,8 @@ 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**
|
||||
|
||||
- **Weapon Statistics** courtesy of **Round Table** by Cygnoux Familia.
|
||||
- **Weapon Statistics** courtesy of **Lighthouse v2.1**
|
||||
> Will soon be using stats provided by **Round Table** of Cygnoux Familia.
|
||||
- **Currated Gunsmith Builds** by various content creators like Jokesta, dHitman, Path.exe and more comming soon.
|
||||
- **Perks** detailed info about the perks.
|
||||
- **Randomly Generated Class** Wanna try something challenging? try our Randomly Generated Gunsmith builds.
|
||||
|
@ -58,7 +59,6 @@ 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).
|
||||
|
||||
|
||||
<details>
|
||||
<summary>Made With</summary>
|
||||
|
||||
|
@ -69,15 +69,6 @@ A detailed Deployment guide can be found [here](https://thunder75.gitbook.io/cat
|
|||
<img src ="https://forthebadge.com/images/badges/built-with-love.svg" width = "122"><br>
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Issues & PRs</summary>
|
||||
|
||||
[![Open issues](https://img.shields.io/github/issues-raw/night0721/cath.exe?style=for-the-badge)](https://github.com/night0721/cath.exe/issues)
|
||||
[![Closed issues](https://img.shields.io/github/issues-closed-raw/night0721/cath.exe?style=for-the-badge)](https://github.com/night0721/cath.exe/issues)
|
||||
[![Open PRs](https://img.shields.io/github/issues-pr-raw/night0721/cath.exe?style=for-the-badge)](https://github.com/night0721/cath.exe/pulls)
|
||||
[![Closed PRs](https://img.shields.io/github/issues-pr-closed-raw/night0721/cath.exe?style=for-the-badge)](https://github.com/night0721/cath.exe/pulls)
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Github Stats</summary>
|
||||
|
||||
|
@ -115,5 +106,7 @@ Contributions are always welcomed, but make sure to read [Contributing.md](/CONT
|
|||
<p align = "center">
|
||||
<a href="https://discord.gg/mjVwkCsWY7" target="_blank"><img src="https://discordapp.com/api/guilds/756525751594909797/widget.png?style=banner1"></a>
|
||||
</p> -->
|
||||
|
||||
⠀
|
||||
|
||||
<!-- <img src="https://socialify.git.ci/night0721/cath.exe/image?description=1&descriptionEditable=A%20Discord.js%20v13%20Template%20based%20on%20cath.exe&font=Raleway&forks=1&issues=1&language=1&owner=1&pattern=Circuit%20Board&pulls=1&stargazers=1&theme=Dark"> -->
|
||||
|
|
|
@ -45,7 +45,7 @@ class NYX extends Client {
|
|||
"556808365574193194", // chunchunmaru
|
||||
"746753527338238115", // mightyful
|
||||
];
|
||||
this.currency = "<:cp:840231933933387797>"; // <a:pumpkin:898975476863877170>
|
||||
this.currency = "<:nyx_currency:918584872333893703>";
|
||||
this.xp = "<:nyx_xp:900309007472926720>";
|
||||
this.path = [
|
||||
"614423108388126731", // Camper on Duty
|
||||
|
|
|
@ -213,6 +213,10 @@ module.exports = {
|
|||
name: "MX9",
|
||||
value: "mx9",
|
||||
},
|
||||
{
|
||||
name: "CBR4",
|
||||
value: "cbr4",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
|
@ -300,6 +304,10 @@ module.exports = {
|
|||
name: "Rytec AMR",
|
||||
value: "rytecamr",
|
||||
},
|
||||
{
|
||||
name: "SVD",
|
||||
value: "svd",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
|
@ -681,6 +689,7 @@ module.exports = {
|
|||
locus: "Locus",
|
||||
outlaw: "Outlaw",
|
||||
rytecamr: "Rytec AMR",
|
||||
svd: "SVD",
|
||||
|
||||
hs2126: "HS2126",
|
||||
by15: "BY15",
|
||||
|
@ -705,6 +714,7 @@ module.exports = {
|
|||
qxr: "QXR",
|
||||
pp19bizon: "PP19 Bizon",
|
||||
mx9: "MX9",
|
||||
cbr4: "CBR4",
|
||||
};
|
||||
const all = {
|
||||
assault_rifle: "Assault Rifle",
|
||||
|
@ -740,24 +750,24 @@ module.exports = {
|
|||
)
|
||||
.then(res => res.data)
|
||||
.catch();
|
||||
const unavaliable = new MessageEmbed()
|
||||
if (!data) {
|
||||
const embed = new MessageEmbed()
|
||||
.setDescription(
|
||||
`<:nyx_not_available:897378400031879188> We don't have a ${all[tag]} **${allguns[gun]}** gunsmith build by **${all[cc]}**, Please try another tag or a differnt content creator`
|
||||
)
|
||||
.setColor(client.color);
|
||||
if (!data) {
|
||||
interaction.followUp({ embeds: [unavaliable] });
|
||||
interaction.followUp({ embeds: [embed] });
|
||||
} else {
|
||||
const arr = [];
|
||||
data.attachments.map((e, i) => {
|
||||
return arr.push(`**${i + 1}: ${e}**`);
|
||||
return arr.push(`**${i + 1}:** ${e}`);
|
||||
});
|
||||
const embed = new MessageEmbed()
|
||||
.setTitle(
|
||||
`${data.weaponName}(${data.weaponType})'s ${all[tag]} build from ${data.author}`
|
||||
)
|
||||
.setDescription(
|
||||
`<:nyx_description:897379659665264650> Description \`\`\`\n${data.notes}\n\`\`\``
|
||||
`<:nyx_description:897379659665264650> **Description** \`\`\`\n ${data.notes}\n\`\`\``
|
||||
)
|
||||
.setColor(16580400)
|
||||
.setImage(data.imageUrl)
|
||||
|
@ -800,29 +810,3 @@ module.exports = {
|
|||
}
|
||||
},
|
||||
};
|
||||
|
||||
// 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("../../util/assets/images/nyx_logo_transparent.webp")
|
||||
// .setTimestamp();
|
||||
// interaction.followUp({ embeds: [embed] });
|
||||
// },
|
||||
// };
|
||||
|
|
|
@ -2,7 +2,7 @@ module.exports = {
|
|||
name: "blacklist",
|
||||
category: "Owner",
|
||||
usage: "(User) (Toggle) (Reason)",
|
||||
description: "Blacklist someone from the bot",
|
||||
description: "Manage Blacklisted Users",
|
||||
Owner: true,
|
||||
options: [
|
||||
{
|
||||
|
@ -13,8 +13,8 @@ module.exports = {
|
|||
},
|
||||
{
|
||||
type: 5,
|
||||
name: "yesno",
|
||||
description: "Whether blacklist or whitelist",
|
||||
name: "blacklist",
|
||||
description: "Whether to blacklist or whitelist",
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
|
@ -26,18 +26,34 @@ module.exports = {
|
|||
],
|
||||
run: async (client, interaction) => {
|
||||
const user = interaction.options.getUser("user");
|
||||
const toggle = interaction.options.getBoolean("yesno");
|
||||
const toggle = interaction.options.getBoolean("blacklist");
|
||||
const reason = interaction.options.getString("reason");
|
||||
if (toggle === true) {
|
||||
await client.data.BK(user.id, toggle, reason);
|
||||
interaction.followUp({
|
||||
content: `**Blacklisted** ${user.username}.\n**Reason: **${reason}`,
|
||||
});
|
||||
const embed = new MessageEmbed()
|
||||
.setTitle(
|
||||
"<a:nyx_checkmark:897240322411724841> Successfully Blacklisted"
|
||||
)
|
||||
.setDescription(
|
||||
`**User:** ${user.user.tag} \`(${user.id})\`\n**Reason:** ${reason} \n**Blacklisted by:** ${interaction.member}`
|
||||
)
|
||||
.setURL(client.web)
|
||||
.setColor(client.color)
|
||||
.setFooter(`Made by ${client.author}`, client.user.displayAvatarURL())
|
||||
.setTimestamp();
|
||||
interaction.followUp({ embeds: [embed] });
|
||||
} else {
|
||||
await client.data.BK(user.id, toggle, reason);
|
||||
interaction.followUp({
|
||||
content: `Removed blacklist from ${user.username}`,
|
||||
});
|
||||
const embed = new MessageEmbed()
|
||||
.setTitle("<a:nyx_checkmark:897240322411724841> Removed From Blacklist")
|
||||
.setDescription(
|
||||
`**User:** ${user.user.tag} \`(${user.id})\`\n**Reason:** ${reason} \n**Whitelisted by:** ${interaction.member}`
|
||||
)
|
||||
.setURL(client.web)
|
||||
.setColor(client.color)
|
||||
.setFooter(`Made by ${client.author}`, client.user.displayAvatarURL())
|
||||
.setTimestamp();
|
||||
interaction.followUp({ embeds: [embed] });
|
||||
}
|
||||
},
|
||||
};
|
||||
|
|
|
@ -19,6 +19,18 @@ module.exports = {
|
|||
.setTitle("Guilds")
|
||||
.setDescription(description)
|
||||
.setColor(client.color)
|
||||
.addFields(
|
||||
{
|
||||
name: `Total Guilds`,
|
||||
value: client.guilds.cache.size,
|
||||
inline: true,
|
||||
},
|
||||
{
|
||||
name: `Total Members`,
|
||||
value: client.users.cache.size,
|
||||
inline: true,
|
||||
}
|
||||
)
|
||||
.setFooter(`Made by ${client.author}`, client.user.displayAvatarURL())
|
||||
.setTimestamp();
|
||||
interaction.followUp({ embeds: [embed] });
|
||||
|
|
306
stats2.js
306
stats2.js
|
@ -1,306 +0,0 @@
|
|||
// const common = require("../../util/functions/common");
|
||||
// const data = require("../../util/Data/data.json");
|
||||
// const Discord = require("discord.js");
|
||||
|
||||
// // Ignore this for now, it's just a outline of what needs to be changed to fit the new data from Mongo
|
||||
|
||||
// var currGun,
|
||||
// currStats,
|
||||
// currAttachments,
|
||||
// currRecoilArr,
|
||||
// currDRM,
|
||||
// interpretion,
|
||||
// recoilAvailable,
|
||||
// chart,
|
||||
// hasError;
|
||||
// var errMsg = "*Generic placeholder error message*";
|
||||
// module.exports = {
|
||||
// name: "stats",
|
||||
// description: "Check gun stats",
|
||||
// usage: "(Gun)",
|
||||
// category: "CODM",
|
||||
// options: [
|
||||
// {
|
||||
// type: 3,
|
||||
// name: "gun_name",
|
||||
// description: "Name of the gun",
|
||||
// required: true,
|
||||
// choices: [],
|
||||
// },
|
||||
// {
|
||||
// type: 3,
|
||||
// name: "1st_attchment",
|
||||
// description: "First attachment",
|
||||
// },
|
||||
// {
|
||||
// type: 3,
|
||||
// name: "2nd_attchment",
|
||||
// description: "Second attachment",
|
||||
// },
|
||||
// {
|
||||
// type: 3,
|
||||
// name: "3rd_attchment",
|
||||
// description: "Third attachment",
|
||||
// },
|
||||
// {
|
||||
// type: 3,
|
||||
// name: "4th_attchment",
|
||||
// description: "Forth attachment",
|
||||
// },
|
||||
// {
|
||||
// type: 3,
|
||||
// name: "5th_attchment",
|
||||
// description: "Fifth attachment",
|
||||
// },
|
||||
// ],
|
||||
// run: async (client, interaction, args) => {
|
||||
// recoilAvailable = false;
|
||||
// hasError = false;
|
||||
// console.log(args);
|
||||
// var repEmb = statsHandler(args.join(" ").replace("\n", " "));
|
||||
// if (hasError) {
|
||||
// interaction.followUp({ embeds: [repEmb] });
|
||||
// }
|
||||
// if (recoilAvailable) { //we will use the old recoil graphs untill we can find someone to help update it.
|
||||
// repEmb.fields.push({
|
||||
// name: "**Recoil Graph**",
|
||||
// value:
|
||||
// "```\nThe Recoil graph below is dynamic (change based on attachment equipped)```",
|
||||
// });
|
||||
// const recoilImageLink = await chart.getShortUrl();
|
||||
// repEmb.image = { url: recoilImageLink };
|
||||
// }
|
||||
// interaction.followUp({ embeds: [repEmb] });
|
||||
// },
|
||||
// };
|
||||
|
||||
// // Don't need (use: to split the input by + (which was used to add attachments before slash commands))
|
||||
// function inpHandler(inpmsg) {
|
||||
// statsHandler(inpmsg.split("+")[0]);
|
||||
// }
|
||||
|
||||
// function statsHandler(inpmsg) {
|
||||
// // Don't need here, use from json (will be easier to add stuff in future)
|
||||
// var statsNames = [
|
||||
// "Pellets",
|
||||
// "Detonation Range",
|
||||
// "Explosion Radius",
|
||||
// "Explosion Damage",
|
||||
// "Firing Mode",
|
||||
// "Rate of Fire",
|
||||
// "Bullet in Burst",
|
||||
// "Time Between Burst",
|
||||
// "Bullet Speed",
|
||||
// "Penetration Level",
|
||||
// "Bullet Spread",
|
||||
// "Idle Sway",
|
||||
// "Hipfire Pellet Spread",
|
||||
// "ADS Pellet Spread",
|
||||
// "ADS Time",
|
||||
// "Sprint-to-Fire Time",
|
||||
// "ADS Zoom",
|
||||
// "Magazine",
|
||||
// "Reserve",
|
||||
// "Reload Type",
|
||||
// "Cancel Reload Time",
|
||||
// "Reload Time",
|
||||
// "Full Reload Time",
|
||||
// "Drop Time",
|
||||
// "Raise Time",
|
||||
// "Sprinting Speed",
|
||||
// "Walking Speed",
|
||||
// "Straifing Speed",
|
||||
// "Damage per Tick",
|
||||
// "Number of Ticks",
|
||||
// "Time Between Ticks",
|
||||
// "Breath Hold Time",
|
||||
// "shouldNeverHappen0",
|
||||
// "shouldNeverHappen1",
|
||||
// "shouldNeverHappen2",
|
||||
// "shouldNeverHappen3",
|
||||
// "shouldNeverHappen4",
|
||||
// ],
|
||||
// out = []; // This stores all the feilds
|
||||
|
||||
// currGun = common.weaponIdentifier(inpmsg); // inpMsg should be replaced by args[0] (i.e the gun name)
|
||||
// if (typeof currGun == "string") {
|
||||
// hasError = true;
|
||||
// return currGun;
|
||||
// }
|
||||
// currStats = currGun.stats; // access stats using mongo
|
||||
// currDRM = currGun.drm[0]; // Same ^
|
||||
// currAttachments = [];
|
||||
// currAttachments = common.attachmentsIdentifier(
|
||||
// inpmsg, // this was supposed to be the full input msg, but we need to madify it so it just gets a attachment name and uses it so no need for isolator
|
||||
// currGun.aments, //Sends the stats for all the attachment of that gun
|
||||
// currStats //sends the base stat of the gun for calculation
|
||||
// );
|
||||
// if (typeof currAttachments == "string") {
|
||||
// hasError = true;
|
||||
// return currAttachments;
|
||||
// }
|
||||
// currRecoilArr = [1, 1, currGun.stats[17]];
|
||||
// if (currAttachments.length != 0) {
|
||||
// var totalEffects = common.totaler(currAttachments);
|
||||
|
||||
// currStats = common.updateStatswithEffects(totalEffects, currStats);
|
||||
// currRecoilArr = [totalEffects[2], totalEffects[3], currGun.stats[17]]; //must happen after currStats update
|
||||
// currDRM = currGun.drm[totalEffects[37]];
|
||||
// currDRM.range = currDRM.range.map(x =>
|
||||
// Math.round(x * (1 + totalEffects[13] / 100))
|
||||
// );
|
||||
// out = common.attachmentHandler(totalEffects, currStats);
|
||||
// }
|
||||
// function statsWorker() {
|
||||
// if (currStats[19] === 2) {
|
||||
// currStats[21] =
|
||||
// currStats[20] + currStats[21] * currStats[17] + currStats[22];
|
||||
// currStats[20] = 0;
|
||||
// currStats[22] = 0;
|
||||
// }
|
||||
// currStats[25] = (currStats[25] * currStats[26]) / 100;
|
||||
|
||||
// var outReady = currStats.map((x, i) =>
|
||||
// x ? statsNames[i].padEnd(24) + ":".padEnd(3) + beautifier(i) : ""
|
||||
// );
|
||||
// out = [
|
||||
// ...[
|
||||
// "Basic Stats",
|
||||
// "ADS Stats",
|
||||
// "Bullet Stats",
|
||||
// "Magazine",
|
||||
// "Handling Stats",
|
||||
// "Mobility Stats",
|
||||
// "Miscellaneous Stats",
|
||||
// ].map((x, i) =>
|
||||
// fieldMaker(
|
||||
// x,
|
||||
// [
|
||||
// [04, 05, 09],
|
||||
// [14, 16, 11, 31],
|
||||
// [00, 06, 07, 08, 10, 12, 13],
|
||||
// [17, 18, 19, 20, 21, 22],
|
||||
// [23, 24],
|
||||
// [25, 26, 27, 15],
|
||||
// [28, 29, 30, 01, 02, 03],
|
||||
// ][i]
|
||||
// )
|
||||
// ),
|
||||
// ...out,
|
||||
// ];
|
||||
// function fieldMaker(inpName, inpIndx) {
|
||||
// inpIndx = inpIndx.filter(x => outReady[x]);
|
||||
// return inpIndx.length
|
||||
// ? {
|
||||
// name: "**" + inpName + "**",
|
||||
// value: "```\n" + inpIndx.map(x => outReady[x]).join("\n") + "```",
|
||||
// }
|
||||
// : "";
|
||||
// }
|
||||
// }
|
||||
// statsWorker();
|
||||
|
||||
// function beautifier(j) {
|
||||
// switch (j) {
|
||||
// case 04:
|
||||
// return data.firingModes[currStats[j] - 1];
|
||||
// case 09:
|
||||
// return data.penetrationLevels[currStats[j] - 1];
|
||||
// case 19:
|
||||
// return data.reloadTypes[currStats[j] - 1];
|
||||
// case 08:
|
||||
// if (currStats[j] == -1) {
|
||||
// return "Infinity";
|
||||
// } else {
|
||||
// return parseFloat(currStats[j].toFixed(2)).toString() + " m/s";
|
||||
// }
|
||||
// case 03:
|
||||
// return parseFloat(currStats[j].toFixed(2))
|
||||
// .toString()
|
||||
// .replace(".", " ~ ");
|
||||
// default:
|
||||
// return parseFloat(currStats[j].toFixed(2)).toString() + addUnit(j);
|
||||
// }
|
||||
|
||||
// function addUnit(j) { //Needs modification to match the new layout
|
||||
// switch (j) {
|
||||
// case 07:
|
||||
// case 14:
|
||||
// case 15:
|
||||
// case 23:
|
||||
// case 24:
|
||||
// case 31:
|
||||
// return " ms";
|
||||
// case 27:
|
||||
// case 28:
|
||||
// case 25:
|
||||
// case 26:
|
||||
// return " m/s";
|
||||
// case 20:
|
||||
// case 21:
|
||||
// case 22:
|
||||
// return " s";
|
||||
// case 16:
|
||||
// return "%";
|
||||
// case 06:
|
||||
// return " Rounds";
|
||||
// case 05:
|
||||
// return " RPM";
|
||||
// default:
|
||||
// return "";
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// interpretion = currGun.gunname + common.interpretioner(currAttachments);
|
||||
// if (currGun.recoil.hr.length > 2) {
|
||||
// chart = common.recoilHandler(
|
||||
// currGun.recoil.hr,
|
||||
// currGun.recoil.vr,
|
||||
// currRecoilArr[0],
|
||||
// currRecoilArr[1],
|
||||
// currRecoilArr[2]
|
||||
// );
|
||||
// recoilAvailable = true;
|
||||
// } else {
|
||||
// recoilAvailable = false;
|
||||
// }
|
||||
// if (chart == "none") {
|
||||
// recoilAvailable = false;
|
||||
// }
|
||||
// if (chart == "err" || currAttachments == "err") {
|
||||
// hasError = true;
|
||||
// return "Cocaineeee";
|
||||
// }
|
||||
// var dmg =
|
||||
// common.damageHandler(
|
||||
// currDRM.damage,
|
||||
// currDRM.range,
|
||||
// 1,
|
||||
// 100,
|
||||
// 60000 / currStats[5],
|
||||
// currStats[7],
|
||||
// currStats[6],
|
||||
// currStats[0]
|
||||
// ) || "```This should never happen```";
|
||||
// out = [
|
||||
// currGun.description
|
||||
// ? {
|
||||
// name: "**Description:**",
|
||||
// value: "```\n" + currGun.description + "```",
|
||||
// }
|
||||
// : {},
|
||||
// { name: "**Damage Profile:**", value: dmg },
|
||||
// ...out,
|
||||
// ];
|
||||
// out = out.filter(x => x.value);
|
||||
// return {
|
||||
// title: interpretion,
|
||||
// color: 5814783,
|
||||
// fields: out,
|
||||
// footer: {
|
||||
// text: "All data courtesy of Round Table",
|
||||
// icon_url:
|
||||
// "", //update the icon later
|
||||
// },
|
||||
// };
|
||||
// }
|
|
@ -997,6 +997,52 @@
|
|||
]
|
||||
}
|
||||
],
|
||||
"Swordfish": [
|
||||
{
|
||||
"muzzle": [
|
||||
"Tactical Suppressor",
|
||||
"OWC Light Suppressor",
|
||||
"OWC Light Compensator",
|
||||
"Monolithic Suppressor",
|
||||
"MIP Light FLash Guard",
|
||||
"RTC Light Muzzle Brake"
|
||||
],
|
||||
"barrel": ["MIP Light", "MIP Extended Light Barrel", "OWC Ranger"],
|
||||
"optic": [
|
||||
"Red Dot Sight",
|
||||
"Holographic Sight",
|
||||
"3x Tactical Scope",
|
||||
"4x Tactical Scope",
|
||||
"4.4x Tactical Scope"
|
||||
],
|
||||
"stock": ["YKM Light Stock", "OWC Skeleton Stock", "RTC Steady Stock"],
|
||||
"perk": [
|
||||
"FMJ",
|
||||
"Sleight of Hand",
|
||||
"Wounding",
|
||||
"Full Ammo",
|
||||
"Disable",
|
||||
"Tough",
|
||||
"Long Shot",
|
||||
"Melee Master"
|
||||
],
|
||||
"laser": ["RTC Laser 1mW", "MIP Laser 5mW", "OWC Laser - Tactical"],
|
||||
"underbarrel": [
|
||||
"Strike Foregrip",
|
||||
"Merc Foregrip",
|
||||
"Operator Foregrip",
|
||||
"Ranger Foregrip",
|
||||
"Tactical Foregrip A",
|
||||
"Bipod"
|
||||
],
|
||||
"ammo": ["Extended Mag A", "Fast Reload", "Halberd Mag"],
|
||||
"rear_grip": [
|
||||
"Granulated Grip Tape",
|
||||
"Ruberized Grip Tape",
|
||||
"Stippled Grip Tape"
|
||||
]
|
||||
}
|
||||
],
|
||||
"XPR_50": [
|
||||
{
|
||||
"muzzle": [
|
||||
|
@ -1341,6 +1387,33 @@
|
|||
]
|
||||
}
|
||||
],
|
||||
"SVD": [
|
||||
{
|
||||
"muzzle": [
|
||||
"Tactical Suppressor",
|
||||
"OWC Light Suppressor",
|
||||
"Monolithic Suppressor",
|
||||
"RTC Compensator",
|
||||
"MIP Light FLash Guard",
|
||||
"RTC Light Muzzle Brake"
|
||||
],
|
||||
"barrel": ["RTC 510mm Light", "RTC 600mm Heavy"],
|
||||
"optic": ["3x Tactical Scope", "4x Tactical Scope", "6x Tactical Scope"],
|
||||
"stock": ["YKM Light Stock", "OWC Skeleton Stock", "RTC Steady Stock"],
|
||||
"perk": [
|
||||
"FMJ",
|
||||
"Sleight of Hand",
|
||||
"Wounding",
|
||||
"Full Ammo",
|
||||
"Disable",
|
||||
"Bullet Return",
|
||||
"Headshot Slow"
|
||||
],
|
||||
"laser": ["OWC Laser - Tactical"],
|
||||
"underbarrel": ["Bipod"],
|
||||
"ammo": ["15 Round Extended Mag", "20 Round Extended Mag"]
|
||||
}
|
||||
],
|
||||
"S36": [
|
||||
{
|
||||
"muzzle": [
|
||||
|
@ -2433,6 +2506,42 @@
|
|||
"rear_grip": ["Rustle Grip Tape", "Sturdy Grip Tape", "Firm Grip Tape"]
|
||||
}
|
||||
],
|
||||
"CBR4": [
|
||||
{
|
||||
"muzzle": [
|
||||
"Tactical Suppressor",
|
||||
"OWC Light Suppressor",
|
||||
"Monolithic Suppressor",
|
||||
"OWC Light Compensator",
|
||||
"MIP Light FLash Guard",
|
||||
"RTC Light Muzzle Brake"
|
||||
],
|
||||
"barrel": ["MIP Extended Light Barrel", "OWC Marksman"],
|
||||
"optic": [
|
||||
"Red Dot Sight",
|
||||
"Holographic Sight",
|
||||
"Tactical Scope",
|
||||
"3x Tactical Scope"
|
||||
],
|
||||
"stock": ["YKM Light Stock", "YKM Combat 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"],
|
||||
"rear_grip": [
|
||||
"Granulated Grip Tape",
|
||||
"Ruberized Grip Tape",
|
||||
"Stippled Grip Tape"
|
||||
]
|
||||
}
|
||||
],
|
||||
"HS2126": [
|
||||
{
|
||||
"muzzle": [
|
||||
|
|
|
@ -1,772 +0,0 @@
|
|||
{
|
||||
"Main": [
|
||||
{
|
||||
"Name": "AK-47",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Extended Light Barrel", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "5.45 Large Caliber", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174280823308308/image3.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "AK117",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "YKM Integral Supprssor", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Tactical Foregrip B", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "ASM10",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Flash Guard", "Type": 4 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Slight of Hand", "Type": 8 },
|
||||
{ "Name": "40 Round Extended Mag", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/691133003866439701/861887618820472842/Screenshot_20210706-1353282.png"
|
||||
},
|
||||
{
|
||||
"Name": "BK57",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Extended Light Barrel", "Type": 5 },
|
||||
{ "Name": "YKM Combat Stock", "Type": 6 },
|
||||
{ "Name": "40 Round Fast Reload", "Type": 7 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174279287668776/image0.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "DR-H",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 3 },
|
||||
{ "Name": "25 Round OTM Mag", "Type": 7 },
|
||||
{ "Name": "Tactical Foregrip A", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174261193965648/image3.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "HBRa3",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Tactical Foregrip A", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174262041346128/image5.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "HVK-30",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "Monolithic Suppressor", "Type": 4 },
|
||||
{ "Name": "MIP Light", "Type": 5 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Large Caliber Ammo", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174261705146458/image4.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "ICR-1",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "YKM Integral Supprssor Light", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Tactical Foregrip A", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174263286661140/image8.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "KN-44",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Muzzle Brake", "Type": 4 },
|
||||
{ "Name": "MIP Light Barrel(Short)", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174262397075516/image6.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "LK24",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "YKM Integral Suppressor Light", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Tactical Foregrip A", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174263684857907/image9.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "M4",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "YKM Integral Suppressor Light", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Tactical Foregrip A", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174279689928714/image1.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "M16",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "OWC Light Compensator", "Type": 4 },
|
||||
{ "Name": "MIP Strike Stock", "Type": 6 },
|
||||
{ "Name": "Rubberized Grip Tape", "Type": 2 },
|
||||
{ "Name": "Operator Foregrip", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174281255190568/image4.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "Man-O-War",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Barrel(Short)", "Type": 5 },
|
||||
{ "Name": "YKM Combat Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Tactical Foregrip A", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174262841540658/image7.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "Peacekeeper MK2",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "Taskforce Barrel", "Type": 5 },
|
||||
{ "Name": "Agile Stock", "Type": 6 },
|
||||
{ "Name": "Firm Grip Tape", "Type": 2 },
|
||||
{ "Name": "Extended Mag A", "Type": 7 },
|
||||
{ "Name": "Field Agent Foregrip", "Type": 1 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174260522090516/image2.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "Type 25",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Barrel(Short)", "Type": 5 },
|
||||
{ "Name": "YKM Light Stock", "Type": 6 },
|
||||
{ "Name": "Stopping Power Reload", "Type": 7 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174281698738216/image5.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "ASVAL",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Quick Response Barrel", "Type": 5 },
|
||||
{ "Name": "OWC Skeleton Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Large Extended Mag B", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174259708657695/image0.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "FR .556",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Barrel(Short)", "Type": 5 },
|
||||
{ "Name": "RTC Steady Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "Long Shot", "Type": 8 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/772099026195316746/847174260052459540/image1.png?width=937&height=562"
|
||||
},
|
||||
{
|
||||
"Name": "CR-56 AMAX",
|
||||
"Type": 0,
|
||||
"Attachments": [
|
||||
{ "Name": "Gunner Stock", "Type": 6 },
|
||||
{ "Name": "Red Dot Sight", "Type": 0 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "M67 Ammo", "Type": 7 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/691133003866439701/861891137254326272/brave_8pS8PhHl4P.png?width=1128&height=634"
|
||||
},
|
||||
{
|
||||
"Name": "AGR 556",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "OWC Light Compensator", "Type": 4 },
|
||||
{ "Name": "MIP Extended Light Barrel", "Type": 5 },
|
||||
{ "Name": "YKM Light Stock", "Type": 6 },
|
||||
{ "Name": "30 Round 5.56mm Mag", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/691133003866439701/861887638419931176/Screenshot_20210706-1402032.png?width=881&height=495"
|
||||
},
|
||||
{
|
||||
"Name": "Chicom",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light", "Type": 5 },
|
||||
{ "Name": "YKM Combat Stock", "Type": 6 },
|
||||
{ "Name": "Stippled Grip Tape", "Type": 2 },
|
||||
{ "Name": "Strike Foregrip", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Cordite",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Extended Light Barrel", "Type": 5 },
|
||||
{ "Name": "YKM Combat Stock", "Type": 6 },
|
||||
{ "Name": "Stippled Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "Sleight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Fennec",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "Monolithic Supprssor", "Type": 4 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Extended Mag A", "Type": 7 },
|
||||
{ "Name": "Operator Foregrip", "Type": 1 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/767456294981992488/862753085985914930/image0.png?width=1104&height=630"
|
||||
},
|
||||
{
|
||||
"Name": "GKS",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "YKM Integral Supprssor", "Type": 5 },
|
||||
{ "Name": "YKM Combat Stock", "Type": 6 },
|
||||
{ "Name": "32 Round Fast Reload", "Type": 7 },
|
||||
{ "Name": "Strike Foregrip", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "HG 40",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "YKM Integral Supprssor", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Rubberized Grip Tape", "Type": 2 },
|
||||
{ "Name": "40 Round Fast Reload", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "MSMC",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "36 Round Extended Mag", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "Sleight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "MX9",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Extended Light Barrel", "Type": 5 },
|
||||
{ "Name": "Agile Stock", "Type": 6 },
|
||||
{ "Name": "5mW Combat Laser", "Type": 2 },
|
||||
{ "Name": "Strike Foregrip", "Type": 1 },
|
||||
{ "Name": "Large Caliber Ammo", "Type": 7 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "PDW-57",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Flash Guard", "Type": 4 },
|
||||
{ "Name": "YKM Combat Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "Sleight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Pharo",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Barrel (Short)", "Type": 5 },
|
||||
{ "Name": "MIP Strike Stock", "Type": 6 },
|
||||
{ "Name": "Stippled Grip Tape", "Type": 2 },
|
||||
{ "Name": "36 Round Fast Reload", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "QQ9",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "RTC Recon Tac Long", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "45 Round Extended Mag", "Type": 7 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/842014909264953354/853663337824780348/image2.png"
|
||||
},
|
||||
{
|
||||
"Name": "QXR",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Flash Guard", "Type": 4 },
|
||||
{ "Name": "MIP Light Barrel (Short)", "Type": 5 },
|
||||
{ "Name": "YKM Light Stock", "Type": 6 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "Enhanced Bolt", "Type": 8 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/691133003866439701/861883636013727774/Screenshot_20210706-1344422.png"
|
||||
},
|
||||
{
|
||||
"Name": "Razorback",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "YKM Combat Stock", "Type": 6 },
|
||||
{ "Name": "Extended Mag A", "Type": 7 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "Rapid Fire", "Type": 8 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/842014909264953354/852922742705881098/image0.png?width=1001&height=563"
|
||||
},
|
||||
{
|
||||
"Name": "RUS-79U",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Barrel (Short)", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "38 Round Fast Reload", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "PP19 Bizon",
|
||||
"Type": 1,
|
||||
"Attachments": [
|
||||
{ "Name": "Monolithic Suppressor", "Type": 4 },
|
||||
{ "Name": "OWC Skeleton Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Large Caliber Ammo A", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/691133003866439701/861887619049717770/Screenshot_20210706-1351142.png?width=881&height=487"
|
||||
},
|
||||
{
|
||||
"Name": "Chopper",
|
||||
"Type": 2,
|
||||
"Attachments": [
|
||||
{ "Name": "RTC Light Muzzle Brake", "Type": 4 },
|
||||
{ "Name": "Chopper Infatry", "Type": 5 },
|
||||
{ "Name": "Heavy Handle", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "FMJ", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "M4LMG",
|
||||
"Type": 2,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Ultralight Barrel", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "40 Round Light Reload", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "RPD",
|
||||
"Type": 2,
|
||||
"Attachments": [
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Snatch Foregrip", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "FMJ", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "S36",
|
||||
"Type": 2,
|
||||
"Attachments": [
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "UL736",
|
||||
"Type": 2,
|
||||
"Attachments": [
|
||||
{ "Name": "RTC 12.4\" Light Barrel", "Type": 5 },
|
||||
{ "Name": "RTC Steady Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "60 Round Reload", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Holger 26",
|
||||
"Type": 2,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light", "Type": 5 },
|
||||
{ "Name": "NO Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Holger-26C Lightweight Polymer Mag", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/540218400413188116/856109420311740436/Screenshot_20210620-151957.png?width=881&height=407"
|
||||
},
|
||||
{
|
||||
"Name": "Arctic .50",
|
||||
"Type": 4,
|
||||
"Attachments": [
|
||||
{ "Name": "OWC Light Suppressor", "Type": 4 },
|
||||
{ "Name": "Assassin Short", "Type": 5 },
|
||||
{ "Name": "OWC Skeleton Stock", "Type": 6 },
|
||||
{ "Name": "Stippled Grip Tape", "Type": 2 },
|
||||
{ "Name": "FMJ", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "DL Q33",
|
||||
"Type": 4,
|
||||
"Attachments": [
|
||||
{ "Name": "OWC Light Suppressor", "Type": 4 },
|
||||
{ "Name": "MIP Light", "Type": 5 },
|
||||
{ "Name": "YKM Combat Stock", "Type": 6 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "FMJ", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Locus",
|
||||
"Type": 4,
|
||||
"Attachments": [
|
||||
{ "Name": "OWC Light Suppressor", "Type": 4 },
|
||||
{ "Name": "YKM Lightweight Short", "Type": 5 },
|
||||
{ "Name": "OWC Skeleton Stock", "Type": 6 },
|
||||
{ "Name": "FMJ", "Type": 8 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/691133003866439701/861887618546139146/Screenshot_20210706-1357422.png?width=881&height=480"
|
||||
},
|
||||
{
|
||||
"Name": "M21 EBR",
|
||||
"Type": 4,
|
||||
"Attachments": [
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "NA-45",
|
||||
"Type": 4,
|
||||
"Attachments": [
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Outlaw",
|
||||
"Type": 4,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Memorial Cowboy", "Type": 5 },
|
||||
{ "Name": "MIP Stalker Stock", "Type": 6 },
|
||||
{ "Name": "Stippled Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "FMJ", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "XPR-50",
|
||||
"Type": 4,
|
||||
"Attachments": [
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Kilo Bolt-Action",
|
||||
"Type": 5,
|
||||
"Attachments": [
|
||||
{ "Name": "YKM Combat Stock", "Type": 5 },
|
||||
{ "Name": "Stippled Grip Tape", "Type": 2 },
|
||||
{ "Name": "Fast Reload", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 },
|
||||
{ "Name": "Sleight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/842014909264953354/852922652452454460/image0.png?width=1001&height=563"
|
||||
},
|
||||
{
|
||||
"Name": "SP-R 208",
|
||||
"Type": 5,
|
||||
"Attachments": [
|
||||
{ "Name": "RTC Light Barrel", "Type": 5 },
|
||||
{ "Name": "OWC Skeleton Stock", "Type": 6 },
|
||||
{ "Name": "Light Bolt", "Type": 9 },
|
||||
{ "Name": "Extended Mag A", "Type": 7 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/842014909264953354/852922699063885864/image0.png?width=1001&height=563"
|
||||
},
|
||||
{
|
||||
"Name": "SKS",
|
||||
"Type": 5,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Operator Foregrip", "Type": 1 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/842014909264953354/852922602674454538/image0.png?width=1001&height=563"
|
||||
},
|
||||
{
|
||||
"Name": "MK 2",
|
||||
"Type": 5,
|
||||
"Attachments": [
|
||||
{ "Name": "OWC Light Suppressor", "Type": 4 },
|
||||
{ "Name": "18.0 Sport Barrel", "Type": 5 },
|
||||
{ "Name": "MIP Sport Stock", "Type": 6 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "OWC Laser-Tactical", "Type": 3 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/540218400413188116/856114522922156082/Screenshot_20210620-153228.png?width=1283&height=592"
|
||||
},
|
||||
{
|
||||
"Name": "BY15",
|
||||
"Type": 3,
|
||||
"Attachments": [
|
||||
{ "Name": "Marauder Suppressor", "Type": 4 },
|
||||
{ "Name": "Extended Barrel(+2)", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 },
|
||||
{ "Name": "Sleight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Echo",
|
||||
"Type": 3,
|
||||
"Attachments": [
|
||||
{ "Name": "Choke", "Type": 4 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "Extended Mag C", "Type": 7 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 },
|
||||
{ "Name": "Sleight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "HS0405",
|
||||
"Type": 3,
|
||||
"Attachments": [
|
||||
{ "Name": "Choke", "Type": 4 },
|
||||
{ "Name": "RTC Extended Light Barrel", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 },
|
||||
{ "Name": "Speed Up Kill", "Type": 8 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/842014909264953354/852922783414616104/image0.png?width=1001&height=563"
|
||||
},
|
||||
{
|
||||
"Name": "HS2126",
|
||||
"Type": 3,
|
||||
"Attachments": [
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "KRM-262",
|
||||
"Type": 3,
|
||||
"Attachments": [
|
||||
{ "Name": "Marauder Suppressor", "Type": 4 },
|
||||
{ "Name": "Extended Barrel(+2)", "Type": 5 },
|
||||
{ "Name": "No Stock", "Type": 6 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 },
|
||||
{ "Name": "Sleight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Striker",
|
||||
"Type": 3,
|
||||
"Attachments": [
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 },
|
||||
{ "Name": "404", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": ".50 GS ",
|
||||
"Type": 6,
|
||||
"Attachments": [
|
||||
{ "Name": "Monolithic Suppressor", "Type": 4 },
|
||||
{ "Name": "Granulated Grip Tape", "Type": 2 },
|
||||
{ "Name": "Lightweight Trigger", "Type": 1 },
|
||||
{ "Name": "OWC Laser - Tactical", "Type": 3 },
|
||||
{ "Name": "Sleight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "J358",
|
||||
"Type": 6,
|
||||
"Attachments": [
|
||||
{ "Name": "RTC Light Muzzle Brake", "Type": 4 },
|
||||
{ "Name": "J358 Custom Light", "Type": 5 },
|
||||
{ "Name": "Red Dot Sight 2", "Type": 0 },
|
||||
{ "Name": "Stopping Power Reload", "Type": 7 },
|
||||
{ "Name": "Lightweight Trigger", "Type": 10 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/842014909264953354/852922819507126272/image0.png?width=1001&height=563"
|
||||
},
|
||||
{
|
||||
"Name": "MW11",
|
||||
"Type": 6,
|
||||
"Attachments": [
|
||||
{ "Name": "MIP Light Flash Guard", "Type": 4 },
|
||||
{ "Name": "Rubberized Grip Tape", "Type": 2 },
|
||||
{ "Name": "15 Round Reload", "Type": 7 },
|
||||
{ "Name": "Lightweight Trigger", "Type": 10 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 }
|
||||
],
|
||||
"URL": ""
|
||||
},
|
||||
{
|
||||
"Name": "Renetti",
|
||||
"Type": 6,
|
||||
"Attachments": [
|
||||
{ "Name": "RTC Compensator", "Type": 4 },
|
||||
{ "Name": "MIP Light", "Type": 5 },
|
||||
{ "Name": "Handmade Grip Tape", "Type": 2 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 },
|
||||
{ "Name": "Full Ammo", "Type": 8 }
|
||||
],
|
||||
"URL": "https://pbs.twimg.com/media/E2f2W6eXEAM1Yb1?format=jpg&name=large"
|
||||
},
|
||||
{
|
||||
"Name": "Shorty",
|
||||
"Type": 6,
|
||||
"Attachments": [
|
||||
{ "Name": "Marauder Suppressor", "Type": 4 },
|
||||
{ "Name": "RTC Steady Stock", "Type": 6 },
|
||||
{ "Name": "OWC Stable", "Type": 11 },
|
||||
{ "Name": "MIP Laser 5mW", "Type": 3 },
|
||||
{ "Name": "Slight of Hand", "Type": 8 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/692227531235000400/866204001065369620/image0.png?width=840&height=630"
|
||||
},
|
||||
{
|
||||
"Name": "Crossbow",
|
||||
"Type": 6,
|
||||
"Attachments": [
|
||||
{ "Name": "28 Bow String", "Type": 12 },
|
||||
{ "Name": "Heavy Limb", "Type": 13 },
|
||||
{ "Name": "Archer Stock", "Type": 6 },
|
||||
{ "Name": "Gas Grenade Bolt", "Type": 7 },
|
||||
{ "Name": "Full Ammo", "Type": 8 }
|
||||
],
|
||||
"URL": "https://media.discordapp.net/attachments/785461568464748593/882503628538126336/image0.png"
|
||||
}
|
||||
],
|
||||
"WeaponTypes": [
|
||||
"Assault",
|
||||
"SMG",
|
||||
"LMG",
|
||||
"Shotgun",
|
||||
"Sniper",
|
||||
"Marksman",
|
||||
"Pistol"
|
||||
],
|
||||
"AttachmentTypes": [
|
||||
"Optic",
|
||||
"Underbarrel",
|
||||
"Rear Grip",
|
||||
"Laser",
|
||||
"Muzzle",
|
||||
"Barrel",
|
||||
"Stock",
|
||||
"Ammunition",
|
||||
"Perk",
|
||||
"Bolt",
|
||||
"Trigger Action",
|
||||
"Guard",
|
||||
"Bowstring",
|
||||
"Limb"
|
||||
]
|
||||
}
|
|
@ -408,7 +408,7 @@ function tips(interaction, client) {
|
|||
const all = [
|
||||
"You can report bugs by using `/report` and send a suggestion by `/suggest` !",
|
||||
"If a gun isn't there, please be paitent and wait for the us to get the stats",
|
||||
"We all recruiting for bot developers (Total: 4) Please DM the bot for more info",
|
||||
"We all recruiting for Javascript bot developers (Total: 4) Please DM the bot for more info",
|
||||
];
|
||||
const ran = Math.floor(Math.random() * 50) + 2;
|
||||
const rTip = all[Math.floor(Math.random() * all.length)];
|
||||
|
|
Loading…
Reference in a new issue