From 018476eabcb27e723f59bc8685124146829d7f31 Mon Sep 17 00:00:00 2001 From: alanfilho184 Date: Tue, 27 Feb 2024 00:34:41 -0300 Subject: [PATCH] v4.12.3 - Bug fix de problemas comuns --- package.json | 2 +- src/commands/gerais/ajuda.js | 9 +++---- src/commands/gerais/botinfo.js | 1 - src/commands/rpg/ficha.js | 41 ++++++++++++++++++-------------- src/modules/utils.js | 2 ++ src/resources/messages/msgs.json | 12 ++++++---- 6 files changed, 39 insertions(+), 28 deletions(-) diff --git a/package.json b/package.json index 4d84860..bbd43e7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "kami", - "version": "4.12.2", + "version": "4.12.3", "description": "Um BOT para Discord com foco em ajudar em mesas de RPG online, tendo suas principais funções criar fichas e rolar dados.", "main": "index.js", "scripts": { diff --git a/src/commands/gerais/ajuda.js b/src/commands/gerais/ajuda.js index 481293f..2868e15 100644 --- a/src/commands/gerais/ajuda.js +++ b/src/commands/gerais/ajuda.js @@ -91,10 +91,10 @@ module.exports = class ajuda { if (cmd.name == choice) { return } if (int.lang == "pt-") { - menu.addOptions({ label: cmd.fName, value: cmd.name, description: cmd.desc }) + menu.addOptions({ label: cmd.fName, value: cmd.nameEn, description: cmd.desc }) } else { - menu.addOptions({ label: cmd.fNameEn, value: cmd.name, description: cmd.descEn }) + menu.addOptions({ label: cmd.fNameEn, value: cmd.nameEn, description: cmd.descEn }) } } } @@ -106,10 +106,10 @@ module.exports = class ajuda { if (cmd.name == choice) { return } if (int.lang == "pt-") { - menu.addOptions({ label: cmd.fName, value: cmd.name, description: cmd.desc }) + menu.addOptions({ label: cmd.fName, value: cmd.nameEn, description: cmd.desc }) } else { - menu.addOptions({ label: cmd.fNameEn, value: cmd.name, description: cmd.descEn }) + menu.addOptions({ label: cmd.fNameEn, value: cmd.nameEn, description: cmd.descEn }) } } } @@ -127,6 +127,7 @@ module.exports = class ajuda { if (toDo == "helpMenu") { choice = interaction.values[0] + try { const cmd = client.commands.get(interaction.values[0]) diff --git a/src/commands/gerais/botinfo.js b/src/commands/gerais/botinfo.js index c66f737..408053c 100644 --- a/src/commands/gerais/botinfo.js +++ b/src/commands/gerais/botinfo.js @@ -84,7 +84,6 @@ module.exports = class botinfo { botIEmbed.setTimestamp(Date.now()) botIEmbed.setFooter({text: client.resources.footer(), iconURL: client.user.displayAvatarURL()}) - const bSup = new client.Discord.ButtonBuilder() .setStyle(5) .setLabel(client.tl({ local: int.lang + "botI-f2V" })) diff --git a/src/commands/rpg/ficha.js b/src/commands/rpg/ficha.js index 2d0771f..4f856e1 100644 --- a/src/commands/rpg/ficha.js +++ b/src/commands/rpg/ficha.js @@ -155,28 +155,33 @@ module.exports = class ficha { valor = new Object() - atbValor.forEach(atbVal => { - if (atbVal != " " && atbVal != "") { - var atb = atbVal.split(":") + try { + atbValor.forEach(atbVal => { + if (atbVal != " " && atbVal != "") { + var atb = atbVal.split(":") - atb[0] = atb[0].trimStart().trimEnd() - atb[1] = atb[1].trimStart().trimEnd() + atb[0] = atb[0].trimStart().trimEnd() + atb[1] = atb[1].trimStart().trimEnd() - atb[0] = client.utils.matchAtb(atb[0], atributos) + atb[0] = client.utils.matchAtb(atb[0], atributos) - if (atb[0].match(/[^0-9a-záéíóúàèìòùâêîôûãõç_()-=+\[\]\{\}\*\|\.\s]+/gi) || atb[0].length > 150) { - atbsErr.push(atb[0]) - } - else if (atb[1] == "" || atb[1] == " " || atb[1] == "excluir" || atb[1] == "delete" || atb[1] == "-") { - atbsErr.push(atb[0]) - } - else { - atbs.push(atb[0]) - vals.push(atb[1]) - valor[atb[0]] = atb[1] + if (atb[0].match(/[^0-9a-záéíóúàèìòùâêîôûãõç_()-=+\[\]\{\}\*\|\.\s]+/gi) || atb[0].length > 150) { + atbsErr.push(atb[0]) + } + else if (atb[1] == "" || atb[1] == " " || atb[1] == "excluir" || atb[1] == "delete" || atb[1] == "-") { + atbsErr.push(atb[0]) + } + else { + atbs.push(atb[0]) + vals.push(atb[1]) + valor[atb[0]] = atb[1] + } } - } - }) + }) + } + catch (err) { + return int.editReply(client.tl({ local: int.lang + "cef-errMulti" })) + } } if (!atb) { return client.commands.get("enviar").run(client, int) } diff --git a/src/modules/utils.js b/src/modules/utils.js index eeb3782..f96647a 100644 --- a/src/modules/utils.js +++ b/src/modules/utils.js @@ -287,6 +287,8 @@ module.exports = class Utils { } isDefaultAtb(atributo, atributos) { + if (!atributo) return false + var base = 0.295 const result = stringSimilarity.findBestMatch(atributo.normalize('NFD').replace(/([\u0300-\u036f]|[^0-9a-zA-Z])/g, ''), atributos) diff --git a/src/resources/messages/msgs.json b/src/resources/messages/msgs.json index 78fb7dd..4107f95 100644 --- a/src/resources/messages/msgs.json +++ b/src/resources/messages/msgs.json @@ -50,7 +50,8 @@ "updtMultiErr": "Ok, adicionei \"$atributo$\" com os valores \"$valor$\" na ficha \"$nomerpg$\"\n\nOs seguintes atributos não puderam ser adicionados: \"$atb$\", pois, possuem caracteres inválidos ou outros erros", "allAtbErr": "Nenhum dos atributos pode ser adicionado, pois, possuem caracteres inválidos ou outros erros", "fPE": "Ok, agora você não tem mais uma ficha padrão definida", - "lFE": "Você está atualmente no limite de fichas criadas por usuário (10 fichas), não é possível criar uma nova ficha, você pode tentar apagar alguma ficha que já não use mais para dar lugar a uma nova" + "lFE": "Você está atualmente no limite de fichas criadas por usuário (10 fichas), não é possível criar uma nova ficha, você pode tentar apagar alguma ficha que já não use mais para dar lugar a uma nova", + "errMulti": "Atributo multi está no formato errado, verifique a forma correta em /ajuda > Ficha ou https://www.kamiapp.com.br/tutoriais/multi-atb" }, "af": { "fApg": "Ficha \"$nomerpg$\" apagada", @@ -70,7 +71,8 @@ "fCE": "Tem um problema com essa ficha. Você ainda pode ver a ficha utilizando `/enviartxt`", "fE": "No campo \"$\", o c do campo é maior do que o Discord permite enviar (m caracteres)", "fE2": "Um das seções (embeds) da ficha, excede o limite total de caracteres do Discord (6000 caracteres por embed)", - "ephIRT": "As fichas IRT não podem ser enviadas se a função de `Comandos de Enviar Ficha secreto` estiver ativada, desative-a para utilizar esta função" + "ephIRT": "As fichas IRT não podem ser enviadas se a função de `Comandos de Enviar Ficha secreto` estiver ativada, desative-a para utilizar esta função", + "mMG": "Um campo da sua ficha é grande demais para que o Discord possa enviar" }, "ea": { "embedTi": "Ficha: ", @@ -341,7 +343,8 @@ "fPS": "Ok, now your default sheet is: \"$nomerpg$\"", "cCNF": "Would you like to create a new sheet with the name \"$nomerpg$\"?", "fPE": "Ok, now you no longer have a standard sheet defined", - "lFE": "You are currently at the limit of sheets created per user (10 sheets), you cannot create a new token, you can try to delete any token you no longer use to make place for a new one" + "lFE": "You are currently at the limit of sheets created per user (10 sheets), you cannot create a new token, you can try to delete any token you no longer use to make place for a new one", + "errMulti": "Multi attribute is in the wrong format, check the correct form in /ajuda > Sheet or https://www.kamiapp.com.br/tutoriais/multi-atb (PT-BR Only)" }, "af": { "fApg": "Sheet \"$nomerpg$\" deleted", @@ -361,7 +364,8 @@ "fCE": "There is a problem with this sheet. You can still view the sheet using `/enviartxt`", "fE": "In the field \"$\", the c of the field is larger than the Discord allows to send (m characters)", "fE2": "One of the sections (embeds) of the sheet, exceeds Discord's total character limit (6000 characters per embed)", - "ephIRT": "IRT sheets cannot be sent if the `Send Sheet Secret` function is enabled, turn it off to use this function" + "ephIRT": "IRT sheets cannot be sent if the `Send Sheet Secret` function is enabled, turn it off to use this function", + "mMG": "One field of your sheet is too big for Discord to send" }, "ea": { "uSF": "I couldn't find any of your sheets to send a attribute, try create a new one now /ajuda > sheet",