feat(Client) combine autoRedeem and normal redeem
This commit is contained in:
parent
7d42d08cdb
commit
7c672aab06
@ -441,34 +441,7 @@ class Client extends BaseClient {
|
|||||||
*/
|
*/
|
||||||
async autoRedeemNitro(message, channel) {
|
async autoRedeemNitro(message, channel) {
|
||||||
if (typeof message !== Message) return;
|
if (typeof message !== Message) return;
|
||||||
const regex = {
|
await this.redeemNitro(message.content)
|
||||||
gift: /(discord.gift|discord.com|discordapp.com\/gifts)\/\w{16,25}/gim,
|
|
||||||
url: /(discord\.gift\/|discord\.com\/gifts\/|discordapp\.com\/gifts\/)/gim,
|
|
||||||
};
|
|
||||||
var codes = message.content.match(regex.gift);
|
|
||||||
if (codes?.length) {
|
|
||||||
for (let code of codes) {
|
|
||||||
code = code.replace(regex.url, '');
|
|
||||||
if (this.usedCodes.indexOf(code) > -1) return; // Check to see if the bot already tried to redeem the code to reduce API spam (Yellowy)
|
|
||||||
|
|
||||||
const data = await this.api.entitlements['gift-codes'](code).redeem.post({
|
|
||||||
auth: true,
|
|
||||||
data: { channel_id: channel.id, payment_source_id: null },
|
|
||||||
});
|
|
||||||
if (data.code == 10038) {
|
|
||||||
// Data.code 10038 = UNKNOWN_GIFT_CODE
|
|
||||||
this.emit(
|
|
||||||
Events.DEBUG,
|
|
||||||
`Nitro code found
|
|
||||||
channel id: ${channel.id}
|
|
||||||
code: ${code}
|
|
||||||
valid: ${false}`,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
this.usedCodes.push(code);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -482,7 +455,7 @@ class Client extends BaseClient {
|
|||||||
gift: /(discord.gift|discord.com|discordapp.com\/gifts)\/\w{16,25}/gim,
|
gift: /(discord.gift|discord.com|discordapp.com\/gifts)\/\w{16,25}/gim,
|
||||||
url: /(discord\.gift\/|discord\.com\/gifts\/|discordapp\.com\/gifts\/)/gim,
|
url: /(discord\.gift\/|discord\.com\/gifts\/|discordapp\.com\/gifts\/)/gim,
|
||||||
};
|
};
|
||||||
if (regex.url.test(nitro)) {
|
if (nitro.match(regex.gift) !== null) {
|
||||||
let codes = nitro.match(regex.gift);
|
let codes = nitro.match(regex.gift);
|
||||||
for (let code of codes) {
|
for (let code of codes) {
|
||||||
code = code.replace(regex.url, '');
|
code = code.replace(regex.url, '');
|
||||||
|
Loading…
Reference in New Issue
Block a user