#javascript-typescript
1 messages · Page 65 of 1
yes faut juste que je lise en faisant et ça devrait aller je vais regarder tout ça ty !
j'ai fais ça là, mais je suis censé faire quoi du coup après ? j'ai pas très bien compris du coup le coup des embeds en array etc ?
car le tableau de pages d'embed là faut que je le foute dans la boucle, car faut que j'en génère x nombre pour afficher tous les noms on est d'accord ?
en gros
yes je t'écoute
défini tableau pages vide
défini variable = 0 (on va la nommer count par exemple)
boucler player
récupérer taille nom
if count + taille nom > 1024
count = 0
créer embed avec le text
push l'embed dans le t ableau de pages
else
text = text.','.nouveau nom
count = text.length
envoyer embed avec pagination
nn
qu'est ce qui est pas bon ?
j'ai corrige le player[i] en player[i].name mais je vois pas après
l'inverse plutôt ? car dans ce que t'as écris c'est ça
je m'était trompé j'avais mis dans les deux en fait
du coup tu retire du if et du met dan sle lse
mais de toute façon ton truc la c'est pas bon
il te faut une variable qui stocke tout les noms
mais là je l'ai pas fais donc
du coup en dehors de ta boucle
ahhh
tu fait une variable = a rien
et après dans le else tu met = nom + nom + nom + .....
et dans le if tu reset a ""
ok donc en dehors elle est null, mais dans le if elle est = à quoi ? si dans le else elle est à player[i].name ?
ahh
my bad
là y a quoi qui va pas du coup ? dans le truc plus haut ?
le player[i].name += ',' je vire ?
et text = à quoi ? je comprends pas
car je veux juste afficher le même field dans toutes les pages juste la value qui change
oui tu vire
text c'est ta variable que tu défini en dehors de ta boucle et dans le else tu set aux noms un par un et dans le if tu la reset
après avoir ajouté l'embed dans le tableau de pages
celle là pour le coup ?
ouais ptet
je la reset like this, et dans le else un part un cta dire ?
car je push dans le if du coup
comme ton exemple
ah yes my bad, mais du coup mon field je le défini où etc ? car tu m'as dis d'envoyer l'embed en pagination etc
bah comme un embed normal, avec le .addField
okay j'ai finis, je vais test ça
après avoir fermer ta boucle, tu send le truc de pagination la
et c'est pas bon
aussi
car faut que tu redéfinisse ta varialbe name_players après avoir push l'embed
dans le tableau
faut que la reset après le push ?
oui
okay je fais ça
Euh alors ouais, je log avant la valeur de tous ça fonctionne mais dans le if il bloque je capte pas trop là il trouve pas name xd
🤷
Ouais je sais mais j'arrive pas à trouver de soluce
En gros quand un joueur se co, il a un objet vide, seulement j'arrive pas à renommer seuelement lui :x
Ton object il est dans un tableau on est oki ?
Donc quand le joueur se connecte tu push un nouvel objet dans ton tableau de joueurs ?
J'utilise gamedig, et j'imagine que c'est quand il se connecte, et yes il est dans un tableau
Bah du coup, quand un joueur se connecte, ça bloque mon code, il ne trouve pas "lenght" quand il passe sur une entrée vide, du coup je cherche juste à lui refiler un name
genre "En cours de connexion"
pour qu'il puisse get la taille et continuer dans le if
mais il faut déjà que je get les entrées vide
j'ai essayé mais sans grand succès
donc tu veux juste vérifier que name soit vide et si il est vide mettre un pseudo c’est ça ?
alors non, du coup je veux get les joueurs et si une des entrées est vide alors je lui rajoute un name yes
par exemple tu vois ?
Oui donc tout les autres à vide tu veux leur ajouter un name ?
yes !
dans ta bouche tu as juste à checker
if (!player.name) { player.name = ´toto’}
je vais tester ça ty !
players.forEach(player => { //code ici }) et voilà
en partant du principe que players= ton tableau of course
bah non t’as une seule boucle dans ton cas
Une boucle sur ton tableau de joueurs
Pas besoin d’en avoir d’autres ??
J'ai déjà un for get tous les joueurs et faire le reste mais yes je dois pouvoir faire ça
Ta première boucle sert a quoi ? En soit si tu n’as qu’un tableau tu fais tout dans la même boucle je comprend po trop
Bah en fait la première me sert à get tous les joueurs, mais yes c'est la même chose donc je vais tout mettre dans le forEach I think
Bayes
Ok alors ça fonctionne, seulement il m'affiche tous les noms dans le field et il ne pagine pas :x
j'ai du faire une bêtise
ah mais att
tu voulais pas que tout les joueurs soit sur le même field?
genre tu voulais une page = un joueur?
bah que ça change de field yes
genre
que ça affiche le max de joueurs par page
mais que ça reste le même embed
faudrait régénérer un embed non ?
hey slt
j'ai besoin d'aide
if (message.content.startsWith("Besoin d'aide")) {
if (message.reply("Bonjour qu'elle est votre problème \n")) {
await message.react("1️⃣")
await message.react("2️⃣")
}
}
je peux faire quoi pour react au msg de mon bot et pas au miens ?
Tu défini une constante au dessus de ta condition (que d'ailleurs tu peux retirer) qui serait égale à message.reply("blabla") (n'oublie pas de faire une fonction async et mettre le await devant)
et après du coup tu fait taconst.react blabla
au lieu de message
xD
je me sens debile comme dab 😂
bon
tiens
je voulais pas faire ça mais je me sent obligé
@spring dock Bah en gros je voudrais remplir un field de joueur, fin le max quoi c'pour ça que je test si c'est > 1024
if (message.content.startsWith("Besoin d'aide")) {
const msg = await message.reply("Bonjour qu'elle est votre problème \n")
await msg.react("1️⃣")
await msg.react("2️⃣")
}
et après quand l'user réagis avec l'émoji là ça lui met un nouveau field avec la suite des joueurs etc..
fait un exemple via discohook @oak turret de ton embed avec plusieurs users stp parce que j'comprends rien
Okay xd je fais ça
en gros un système de pagination
@spring dock Un truc comme ça, avec les réact bien sur et après genre ça regènere un embed avec un nouveau field avec la suite des joueurs tu vois ?
ah mais c'est pas des fields ça c'est la description
c'est un field que j'ai mis là
ah genre liste des joueurs c'est le name et les joueurs value?
yep
bah le truc que ta fait tout a l'heure devrait être bon normalement
enfin faut juste remplacer les , par des - et des \n
bah du coup non ça me faisait un autre embed et non un edit, my bad en effet, et la pagination marchait pas
avec aucune erreur :x
mais là du coup mon code actuel ne calcule même pas la pagination
comment ça un autre embed et pas un edit
Ah si ça calcule la pagination mais ça mets pas d'autre page
bah si un edit du coup xd
logique si le texte est pas assez long ça met pas d'autre page
ouais my bad mais y a 75 noms quand même xd
okay
Ouais alors c'est chelou il m'affiche qu'un joueur "En cours de connexion", du coup il edit le premier embed
le 2ème contient les joueurs
c'est un serveur d'exemple faites pas gaffe c'pas de la pub lol
ehh
du coup
j'ai enlevé le push car je créer un nouveau embed dans le if tu sais ?
du coup
bah
il m'affiche les joueurs
mais pas la pagination
il veut pas .setFooter idk pourquoi x:
ah oui ok j'ai vu
mais c'est chelou quand même, 57 entrées etc ça fais pas 1024
même moinns il me fait pas plusieurs pages
Genre look j'ai mis > 512, y a tous les joueurs mais pas plusieurs pages wtf
ouais jsp du coup
pk tu mets une limite en fonction du nombre de caractères et pas en fonction du nombre de joueurs (genre seulement 10 joueurs par page)
si c'est avec les caractères, le dernier joueur pourrait avoir son pseudo coupé
Car un field peut contenir au plus 1024 caractères, et faire seulement 10joueurs par page je vois pas comment faire
là tout de façon ça mets pas à jours les joueurs suivants donc
si c'est avec les caractères, le dernier joueur pourrait avoir son pseudo coupé
non si il a bien fait comme je lui ai dit le problème ne devrait pas exister
et non il n'existe pas le problème
y a juste la maj des infos qui se fait pas
genre :
fait voir ton code
je l'avais enlevé mais ça faisait pareil mais je vais re test
du coup je mets quoi dans pages ?
car si je mets rien erreur, si je mets embed_servers ça marche mais ça fout une connerie
faut tu créer l'embed avant de push
oui mais du coup name_players = ""; tu le met après
je le met où ? car je vois pas là du coup
@spring dock j'ai encore un prob
?
if (message.content.startsWith("Besoin d'aide")) {
const msg = await message.reply("Bonjour qu'elle est votre problème :\n 1) Problème Panel\n 2) Autre problème \n ")
await msg.react("1️⃣")
await msg.react("2️⃣")
if (reaction.emoji.name = "1️⃣") {
message.channel.send(`test`)
}
if (reaction.emoji.name = "2️⃣") {
}
}
sa marche âs
brouh
mais est-ce que tu cherche un minimum à comprendre ce que tu fait ou pas?
faut que tu crée un collector (huh)
alors oui et non
jtavoue la ...........
voila quoi
c juste pour les debut de ce code apres jvais comprendre mais la je comprend pas pk sa marche pas jpeux check comment ?
@spring dock
stop me ping merci
okey
vsy jle fait pas
trop dur j'y arriverais pas 😦
mais mdr y'a la doc à ta disposition
la doc est censée t'aider xD
et @peak cedar si on te dit de le faire par toi-même c'est pour que tu puisse te débrouiller seul après
jsais mais la 😦
chui naze
Bah dans ce cas attends un peu, fais une pause. Essaie de le refaire avec un esprit frais
Le code qu'on te donnerait ça serait pareil que te donner l'exemple de la doc
Donc tu fais une pause, et tu reviens avec les idées claires
j'ai fait sa depuis tout a l'heure j'ai fait une pose de 1h30
tjr rien
je suis obliger de collect ?
y'a pas d'autre façon plus facile
Mais c'est ultra simple via un collector
Y a d'autres moyens oui
Sauf que le seul résultat c'est que tu vas refaire un collector en moins bien fait
@peak cedar tiens ça c'est l'exemple donné par le wiki
// Create a reaction collector
const filter = (reaction, user) => reaction.emoji.name === '👌' && user.id === 'someID';
const collector = message.createReactionCollector(filter, { time: 15000 });
collector.on('collect', r => console.log(`Collected ${r.emoji.name}`));
collector.on('end', collected => console.log(`Collected ${collected.size} items`));
oe et ensuite je fait quoi 😭
Ensuite tu l'adapte à ton problème
Donc regarde ton code
et regarde l'exemple
et essaie d'adapter l'exemple à ton code
autrement dit, de faire ressembler ton code à l'exemple

nan mais arrête de faire l'enfant battu
je te donne toutes les clés
je vais pas te donner le code parce que ça sert à rien
j'ai pas trouver la porte 😭
je sais
ptdrrrr
retrouve les éléments de l'exemple qui ressemblent à ton code
y'a rien 😂
jremplace par quoi le some id
?
jmet l'id du bot ?
à ton avis user ça représente quoi
le bot ?
mauvaise réponse
justement c'est à ça que ça sert
t'es pas obligé de le mettre mais c'est possible
c possible de le remplacer pars message.author ?
oui
if (message.content.startsWith("Besoin d'aide")) {
const msg = await message.reply("Bonjour qu'elle est votre problème :\n 1) Problème Panel\n 2) Autre problème \n ")
await msg.react("1️⃣")
await msg.react("2️⃣")
const filter = (reaction, user) => reaction.emoji.name === ':one:' && message.author;
const collector = message.createReactionCollector(filter, { time: 15000 });
collector.on('collect', r => console.log(`Collected ${r.emoji.name}`));
collector.on('end', collected => console.log(`Collected ${collected.size} items`));
if (reaction.emoji.name = "1️⃣") {
message.channel.send(`test`)
}
if (reaction.emoji.name = "2️⃣") {
}
}
ensuite ?
nan là t'as pas compris comment tu vérifiait
Oui 😂 depuis la debut
pour la vérification les trucs que tu dois remplacer c'est ça
fait
oe ok et y'a un autre problème qui est plus grave que la vérification
celle qui gère l'ajout de réactions,
elle est pas censée être en dehors du collector.on 
\1️⃣
oof
@keen narwhal chaque chose en son temps
😆
@timid loom dcp comme sa :
if (message.content.startsWith("Besoin d'aide")) {
const msg = await message.reply("Bonjour qu'elle est votre problème :\n 1) Problème Panel\n 2) Autre problème \n ")
await msg.react("1️⃣")
await msg.react("2️⃣")
const filter = (reaction, user) => reaction.emoji.name === '1️⃣' && message.author;
const collector = message.createReactionCollector(filter, { time: 15000 });
collector.on('collect', r => console.log(`Collected ${r.emoji.name}`));
collector.on('end', collected => console.log(`Collected ${collected.size} items`));
if (reaction.emoji.name = "1️⃣") {
message.channel.send(`test`)
}
if (reaction.emoji.name = "2️⃣") {
}
}
oui
sauf que ça veut rien dire
donc il manque un truc
jveux verif que c le joueur qui click
''
le .id
non
mais tu sais ce que c'est un id?
oui
alors pourquoi tu me réponds ça?
oui
de la debilité pur 😦
bas vrm jsuis debile c tout
tiens je te sauve
il a posté le message avant de voir le tien 
ça sert à rien d'avancer en mettant des trucs au pif
😂
je t'ai déjà répondu
bas dcp je fait quoi mtn ?
et je passerai pas à la suite parce que la suite tu la connais déjà
tu veux juste pas réfléchir
et comme moi j'ai pas envie de faire ton travail à ta place, je vais te laisser réfléchir
ahhhh j'ai une idée je me casse pas la tete et je fait un system de 1 ou 2 en msg et pas en react 🙂
jy arriverais pas sa sert a rien
????
forcément si tu cherche pas à comprendre ni rien, va dans #demande-de-dev ça ira plus vite
xDDDDDDDDDDDDDDD
mdrrrrrr
sauf que tu verras que si tu veux pas réfléchir y a pas grand chose que tu fera dans ta vie
poterie y compris
je sais mais la JE COMPREND PAS
mais toi non plus tu comprend pas que je comprend pas ce que tu comprend donc nous nous comprendrons jamais
tu paye un mec il te fera ce que tu veux et au moins t'aura pas à demander de l'aide toutes les 2 secondes car tu comprends pas ne serait ce qu'un mot de ce que t'écrit
dans "ton" code
je comprends très bien ce que tu comprends pas
sauf que le truc c'est que si tu t'arrêtais deux secondes pour réfléchir à ce que tu écris
tu comprendrais tout ce que tu dois faire
on dirait qu'ici on est tous né avec une compréhension totale de la prog
j'suis pas neo dans matrix hein, j'ai pas soudainement pris une disquette pour comprendre le javascript
j'ai juste réfléchi deux secondes
franchement essaye un jour tu verras ça sera incroyable
donc reviens quand t'auras arrêté de t'apitoyer sur ton sort et que tu commenceras à réfléchir
bon bon bon on va procéder autrement
moi, j'ai appris en regardant les documentations mdn et des codes puis j'me suis entraîné
je te passe un truc et tu vas essayer de le corriger ok ?
const msg = await message.channel(Hellow world)
await msg.react(":wastebasket:")
await msg.react(":x:")
const filter = (reaction, user) => {
return reaction.message === message.id && user.id === message.author.id;
};
const collector = msg.createReactionCollector(filter, { time: 120000, max: 2 });
collector.on('collect', async (reaction, user) => {
if (_emoji.name === ":wastebasket:" ) {
} else if (_emoji.name = ":x:") {
}
})
essaie de trouver toutes les erreurs de ce code et de me renvoyer le code correct
||tu viens de perdre énormément de ton temps je sais pas si t'es au courant dark||
@peak cedar si tu y arrives je te donne un pouce en l'air que tu garderas toute ta vie lol
j'attendais la fin du générique de the 100 
Re ! Alors j'ai un petit soucis dont je n'ai pas la soluce, j'ai bien mes 11 joueurs, seulement est "undefined" alors que c'est censé être le dernier et il s'appelle "agnelo" etc vous sauriez pourquoi ?
mon code n'a pas changé:x
C’est dans ta boucle tu ajoutes un truc devant le pseudo ?
Car le premier choco existe bien et tu as undefined devant choco donc tu dois ajouter un truc qui n’existe pas
yes il est dans ma boucle
Oui mais quand tu ajoutes le nom tu fais quoi dessus ?
C’est dans ton foreach sa ?
yes
T’as pas une première entrée à objet vide ou autre ?
essaye juste de log dans ta boucle le player voir si il existe
lors du premier passage tu verras direct ou ça cloche
Ahh je vais voir çaz
yes c'est _a
mais il m'affiche pas tous les joueurs, y en a toujours un qui n'y est pas, et pour les plus gros serveurs il en manque pas mal je vois pas pourquoi
déjà je peux pas mettre au dessus de 125 caractères sinon il me fait une erreur de la lib
Y a pas un Max de field ?
25 fields Max
mais il est forcément supérieur à 125
oauip okay mais là j'ai 11 joueur à afficher
il m'en affiche 10
y en a toujours un en dehors ...
genre look
Juste pour tester rajoutes en
A mon avis il envoie l’embed avant la fin de la bouclette
bah du coup je peux pas
c'est pas mon serveur :xx
je prends un serveur gmod sur top-serveurs pour test xdd
Ah oki mais je pense c’est ça
Ouaip je pense, comment je peux fix ça ?
Tu peux faire une promise avec ta boucle et là résolve() à la fin de ta boucle pour ensuite envoyer ton embed
oula, t'as un exemple ?
Je suis sur tel donc à part la doc JS no
Hey slt
Ont peux recherche un channel pars nom et pas pars ID ?
document.getElementByID() jsp si ça marche pour les bots ?
Par nom je sais pas du tte
nopxD
et oui on peut je crois attend
client.channels.cache.find(ch => ch.name === "nom du channel")
à verif
si les channels sont pas dans le cache ça va poser soucis ça
si t'enlève le .cache ça marche je crosi
❌
autant pour moi
Mais tu fais des recherches toi même ?
Pourtant si tu marques finds Channel by Id discord.Js je suis presque certain que tu trouves
Hey slt
Ont peux recherche un channel pars nom et pas pars ID ?
merci de lire avant de rep
JE VEUX PAS pars ID
Dans ce cas t’écris finds Channel by name discord.js
EH OH
Pourquoi tu t’énerves ?
le culot
Le problème est surtout que Lartax t’as donné une piste, tu prends même pas le temps de la regarder et tu t’énerves aune je te demande si tu as cherché mieux qu’avec tes yeux fermés, parce qu’en exactement 30 secondes j’ai trouvé
Bah tant mieux, mais c’est pas en toujours demandant de l’aide que tu vas apprendre sans chercher par toi même
IL ma pas donner mais aider il ma donner d etape des chose doc etc....
donc sa revien a chercheraussi 😉
Si tu le dis, si tu le dis
salut !
je cherche a trouvé l'id d'un role pour ca : const args = msg.first().content const rolearg = message.guild.roles.cache.get(args)
Salut, je m'y connais presque en rien en Javascript et je souhaite l'apprendre (je m'y connais en html et css car je débute et avance petit à petit), j'aimerais savoir quels sont les bénéfices du logiciel?
J'ai aussi un site en développement et plein de gens me conseillent Js.
hello!, vous savez comment je pourrais afficher 10 joueurs par 10 joueurs sur chaque page au lieu de get la valeur du nombre de caractères des fields ? cf : #javascript-typescript message
car ça sera plus simple et ça affichera au moins tous les joueurs de façon sûre
Player c'est un tableau nan ?
ouaip
tableau d’objet
ah non tu parle de player ah oui non
ça ça me return que le nom des joueurs me semble t-il
state.players me return le tableau d’objet
F mon pc vient de me lâcher bref je refais sur téléphone
Mon code ressemble à ça actuellement fin ma commande
Tu pourrais utiliser une méthode très simple dcp qui porterait juste à faire deux constantes et un slice
genre
let debut = limit*(page-1) //avec limite = 10 pour afficher que 10 joueurs et page = 1
let fin = 10*page
et pour le slice bah player.slice(debut, fin).forEach(player=>{}) (à la ligne du player.forEach)
Okay ! Et dans mon code actuel je suis censé enlevé du coup mon count etc ?
Oe mais copie ton code et garde le quelque part au cas où 
et fin je le mets où ?
ah yes c'est ce que je me disais j'vais tester
la par exemple
Dans mon tableau j'ai 4 trucs
et en mettant 0 en début et 3 en fin ca me return 3 objects
Ah yes
ton code doit marcher mais la lib de pagination me nique son "setFooter"
je capte pas pourquoi
Le code de la lib c'est ça
Ah ui btw utiliser un module pour les embeds en page ce sera pas super vu que tu pourras moins bien l'adapter à ton code
je te conseille de faire ton propre système de pagination (plus galère, mais bien mieux)
Franchement je saurais pas faire un système de pagination
et je vois pas pourquoi ça casse de plus
Moi non plus mdr les for et tout ça faut que j'mentraîne
apres on m'a envoyé un code pour le pagination
tarriveras peut-être à l'adapter si je le retrouve :kappo:
et sinon ya ptetre quelquun de chaud en pagination qui va rejoindre le serv
@fleet scaffold 👀
nice
par contre

xD
Dans son cas le forEach est plus logique
Vu qu’il veut éditer directement les éléments de son tableau
yep
Oui ça reste une boucle
first part :
let inventory = "";
let maxpage;
let invtest;
let invit;
const tempinventory = [];
if(user.inventaire === null){
inventory = "Votre inventaire est vide"
}else {
invtest = JSON.parse(user.inventaire)
if(invtest.item.length === 0){
inventory = "Votre inventaire est vide"
}else{
maxpage = Math.floor((invtest.item.length/4)+1)
for(let i= 0;i<invtest.item.length;i++){
tempinventory.push(`${invtest.item[i].emoji}|${invtest.item[i].name}\nid : \`${invtest.item[i].id}\`\n**Stats :**\n\`\`\`js\n Force : ${invtest.item[i].stats.force}\n Défense : ${invtest.item[i].stats.defense}\n Magie : ${invtest.item[i].stats.magie}\n Vitesse : ${invtest.item[i].stats.vitesse}\`\`\`\n`)
}
for(let i= 0;i<4;i++){
inventory += `${tempinventory[i]}`
}
}
}
Mais y a des différences entre chaque boucle
Je répond juste à ton « utilise des for »
second part :
await message.channel.send("msg").then(async(msg) =>{
if(inventory === "Votre inventaire est vide"){
}else{
await msg.react("◀")
await msg.react("▶️")
const filter = (reaction, user) => {
return (reaction.emoji.name === '◀' || reaction.emoji.name === '▶️') && user.id === message.author.id;
};
const collector = msg.createReactionCollector(filter, { time: 180000 });
let x = 0;
collector.on('collect', async(reaction, user) => {
let inventori = "";
if((x+1) === maxpage || (x+1) < (1) || x === -1){
console.log(x)
x = 0;
for(let i= 0;i<4;i++){
if(tempinventory[i] !== undefined){
inventori += tempinventory[i]
}else{
}
}
}else{
if(reaction.emoji.name === '▶️'){
console.log(x)
x+=1;
for(let i=(0+(x*4));i<(4*(x+1));i++){
if(tempinventory[i] !== undefined){
inventori += tempinventory[i]
}else{
} }
}else if(reaction.emoji.name === '◀'){
console.log(x)
if(x == 0){
x = maxpage-1
}else{
x-=1;
}
for(let i=(0+(x*4));i<(4*(x+1));i++){
if(tempinventory[i] !== undefined){
inventori += tempinventory[i]
}else{
}
}
}
}
msg.edit({
embed: {
title: `Inventaire`,
description: `${inventori}`,
footer: {
text: `Page ${x+1}/${maxpage}`,
icon_url:this.client.user.displayAvatarURL()
}
}
})
await msg.reactions.removeAll()
await msg.react("◀")
await msg.react("▶️")
});
collector.on('end', collected => {
msg.delete()
});
Oui mais peut être c’est super
Je dis pas que ça ne fonctionnera pas avec des boucles for
Je répond à ta phrase
et mon truc
là
c'est tout le code
y a une ptite erreur
maxpage = undefined au début XD
faut mettre = ""; au début
AHHH NON
c'est la page
maxpage = undefined pour ceux qui n'ont pas d'inventaire XD
boh juste à le definir
au début
mdr
ah et mon truc est setup pour n'afficher que 4 élement par page
Mais donc tu nous envoies tout ça pour quoi exactement
Si tu veux présenter ton bot c’est #présente-ta-création
parce qu'ils veulent que lartaxx utilise son truc au lieu d'utiliser un package npm
ce qui est d'un débile mais profonds
ah ok
mais bon yes
ouais je comprends pas super bien son truc
j'ai changer de package
mais c'est sympa
mais d'ailleurs dark, ton .slice() ne fonctionne pas ahah
rip moi je l'avais utilisé pour faire un ancien leaderboard comme ca et ca fonctionnait 🤔
let arr = [];
list.slice(debut, fin).forEach(c => {
arr.push(`**#${a}** <@${c.userID}> (\`${c.username}\`)`)
})
Apparament oui, car il veut au minimum deux pages le package et le slice me return le tableau vide
https://www.tutorialkart.com/nodejs/delete-a-file-in-nodejs-using-node-fs/
# fs.unlink(filePath, callbackFunction)
merci
should I ask a question about react native here?
Framework js
salut, vous pouvez maider j'ai ce code
const votes = message.reactions.get('🎁').users.cache.filter(u => !u.bot)
console.log(votes.size)``` il me renvois
.then(message => {
const votes = message.reactions.get('🎁').users.cache.filter(u => !u.bot)
console.log(votes.size)
}```
je sais deja quel message je prend
le cache des réactions
Il te faut aussi un .cache.get puis l'autre cache est bon
message.channel.messages.fetch("788083821815660575")
.then(message => {
const votes = message.reactions.cache.get('🎁').users.cache.filter(u => !u.bot)
console.log(votes.size)
}
Sa doit venir de ton code car sa devrait marcher
module.exports = {
run: async (client, message) => {
message.delete()
message.channel.messages.fetch("788083821815660575")
.then(message => {
const votes = message.reactions.cache.get('🎁').users.cache.filter(u => !u.bot)
console.log(votes.size)
})
.catch(console.error);
},
aliases: [],
description: 'Voir les infos du serveur'
}
ca c'est tous le code
t'es sûr que t'as bien mis l'id du bon message '-' ? je viens de tester et ca return bien le bon nombre
Hey tout le monde !
J'essaie de charger les invites créées par les utilisateurs mais je n'obtient que celles permanentes. J'aimerai savoir comment récupérer celles temporaires. J'ai lu quelques forums qui disaient que ça ferait trop de requête à l'API, mais comme mon bot ne sera que sur un seul serveur je n'ai pas à m'en préoccuper.
Je vois, je n'ai jamais eu affaire à ça mais je veux bien t'aider
Je vais voir vite fait sur la doc, je reviens
Merci à toi 😉
Désolé j'ai été long je parlais à mon pote en même temps 😂
Voilà
Oula non attends
Voilà
Normalement c'est bon, mais tu as déjà fait ça j'imagine
Oui ahah ^^ J'ai déjà essayé
Cela me retourne seulement les invitations permanentes
Je souhaite obtenir toutes les invitations d'une guild, mais je n'obtiens que celles qui sont permanentes. Et non pas celles temporaires.
Est ce que tu as fais un await avec le fetchInvites
Et après traiter tes fetchInvites ?
Ca me sauverai surement ma nuit si quelqu'un aurait le courage d'y arriver, car j'ai cherché quelques heures, forums et vidéos mais rien
A quoi consisterait le await dans ce cas là ?
Alors normalement c'est censé fonctionner
Je suis sûr mobile, je fais un test de mon côté donc ça va prendre du temps je reviens
Oui @boreal edge mais je n'ai pas essayé de await la recherche d'invite
J'essaye et je te dis
Tu as regardes sa ?
J'ai un problème aussi,
Je n'arrives pas à insérer à l'intérieur d'un array un object
Voilà mon code :
let permissions = [
{
id : client.functions.getEveryoneID(),
deny : 'VIEW_CHANNEL'
},
{
id : user.id,
allow : 'VIEW_CHANNEL'
}
];
for (rankID in client.config["staffRanksIDs"]) {
if (!rankID) continue;
permissions[permissions.length + 1] = {
id: rankID,
allow: 'VIEW_CHANNEL'
}
}
Voila le résultat (ci-dessous)
Est ce que vous savez pourquoi il me mets le <1 empty item>, et comment le régler svp ?
@slim anvil Mais j'ai réussi à régler le deuxième problème avec l'event : inviteCreate
Ah yes ok
Désolé @boreal edge 😅 Mais j'arrive pas à résoudre deux problèmes à la fois
Ca sert à quoi Enzo le .push ?
tqt
Ok thx
0.eval message.guild.fetchInvites().then(invites =>{
message.channel.send(invites)
}).catch(console.error);
Y'a un blem là
Pourquoi ça work pas ;-;
message.guil BRUH
Ahah bienvenue au club
Je vais pas te baffer avant que tu m’aies aidé
for (rankID in client.config["staffRanksIDs"]) {
if (!rankID) continue;
permissions[permissions.length + 1] = {
id: rankID,
allow: 'VIEW_CHANNEL'
}
}
permissions = permissions.push();
console.log(permissions);
Il me return 4 Enzo 🤔
Tu as donc les invitations temporaires
le push tu return l’index sinon
Donc y'a pas de raison que ça ne fonctionne pas si tu arrives à get les invitations permanentes
permissions.push();
console.log(permissions);
Il me return toujours la même chose (par rapport au premier screen)
Tu push rien là
let permissions = [
{
id : client.functions.getEveryoneID(),
deny : 'VIEW_CHANNEL'
},
{
id : user.id,
allow : 'VIEW_CHANNEL'
}
];
for (rankID in client.config["staffRanksIDs"]) {
if (!rankID) continue;
permissions[permissions.length + 1] = {
id: rankID,
allow: 'VIEW_CHANNEL'
}
}
permissions.push();
console.log(permissions);
@cyan iron
La méthode push() ajoute un ou plusieurs éléments à la fin d'un tableau et retourne la nouvelle taille du tableau.
Tu push du vide il faut mettre un truc dans push
Ok d'accord tu veux push quoi dans ton object
Si tu veux push une autre Perm tu fais ça :
obj.push({
id : rankid,
allow : 'VIEW_CHANNEL'
})
Fin t'as compris
Excuse moi je n'avais pas vu ton message @cyan iron
Alors quel code as-tu utilisé exactement ? Cela est étrange..
Là j'ai simplement fait la promise
Oui
guild.fetchInvites()
Mais toi il te faut extraire tout ça donc tu fais un .then
Ah quoique attends
Attends
Non, je souhaite simplement check à qui appartient l'invite quand un joueur arrive
Donc je mets le code dans l'event guildMemberAdd, et une autre partie dans le ready
Oui
Non non mdrr, quand j'ai dis le "code" c'est du code
Non
Je parle du Code de l'invite
Est-ce que tu l'as ?
Tu as quoi pour get l'invite c'est ça que je veux savoir
Ahah d'accord, oui je ne l'ai pas
Donc t'as quoi
Mais 
Mdrr je crois qu'on à du mal à communiquer tous les deux
Si j'etais sur PC je pourrais mieux t'aider mais là je galère un peu avec mes eval
T'en fais pas pour la répartition de mon code je pense savoir faire
J'ai du mal à récupérer toutes les invitations
Même celles temporaires
guild.fetchInvites().then(i=> console.log(i))
Tente ça déjà
Sans le 0.eval désolé
Et dit moi si ça work normalement Oui y'a pas de raisons
module.exports = {
run: async (client) => {
client.logger.log('info', `Logged in as ${client.user.tag} !`);
client.guilds.cache.get('780044065697693706').fetchInvites()
.then(invites => {
console.log(invites);
})
.catch(err => console.log(err));
}
};
Ah
C'est pas ça que tu veux
Att
Toute la collection [map]
Je peux voir du coup please
Oui
C'est trop grand pour un screen
Mais j'obtiens bien toutes les invitations
Alors je pense que tu m'as aider finalement, je vais essayer de me débrouiller et je reviens vers toi si ça ne marche toujours pas
Mais comment ça peut être trop gros s'il n'y a que 3 invites ?
AH Mais Oui ! Je suis bête laisse tomber j'ai compris
No problème mais je ne comprends pas pourquoi ça ne fonctionnait pas tout à l'heure, tu as sûrement du mal voir
Mdrr je penserai à m'acheter des lunettes parce que c'est gros quand meme ahah
Merci encore 😉
Bah soit tu as mal vu ( et Oui effectivement tu peux investir dans des lunettes) soit effectivement il y a eu un problème mais ça venait de Discord, pas de ton code étant donné que c'est le même.
Hello
Je cherche à vérifier si une date (DD/MM/YYYY) est valide, et si une heure (HH:MM) est valide aussi, je pensais utiliser des patterns mais c'est vrai que je ne peux pas vérifier si une valeur est > 12 pour les mois par exemple.
Avez-vous une autre solution (hors multi-condition) ?
Merci 😉
avec un Date.parse() ca devrait etre good
ca te return un timestamp si la date est valide
et NaN si ca ne l'est pas
vérifie avant que ce soit bien une string juste je pense et ca devrait faire l'affaire
Ok, je vais voir ça, merci 😉
let date = "15/01/2021";
console.log(Date.parse(date));`
Je viens de tester ça, juste vite fait, il me return NaN, plus qu'a voir pourquoi ! Merci 😉
Ok je viens de comprendre, le format de Data.parse c'est MM/DD/YYYY
Il y a un moyen de "l' inverser" ? ou il faut que je le fasse manuellement ?
euhh la je connais pas les dates par coeur essaye de voir si tu peux pas changer le timezone ou un truc du genre
Je viens de faire une méthode éco+
if (!date) return false;
let args = date.split('/');
if (!args ||!args[0] || !args[1] || !args[2]) return false;
date = `${args[1]}/${args[0]}/${args[2]}` // Convert date for Date.parse compatibility (DD/MM/YYYY -> MM/DD/YYYY)
return (Date.parse(date) === NaN) && false || true;
Au moins ça fonctionne x)
Merci bcp 😉
Bonjour a vous,
Je travail sur mon bot en nodejs lib discordjs.
Pour stocker et récupérer certaines informations via des commandes j'utilise une bdd mysql , quand j'ecris plusieurs fois cette commande a la suite j'ai une erreur return dans ma console la voici :
Merci a ceux qui prendrons le temps de m'aider !
Envoie la ligne 19 de ton fichier /commands/register2v2.js
Une idée de ce soucis svp ?
Erreur : DiscordAPIError: Cannot send an empty message
Code :
bot.on('message', function (message) {
if (message.content === '!ping') {
const msg = message.channel.send()
message.channel.send('Auteur : ' + message.author.tag )
}
})
Je débute donc c surement une erreur très conne
Moyen d'avoir la ligne et le code complet ?
const Discord = require('discord.js')
const bot = new Discord.Client()
bot.on('ready', () => {
console.log(`Logged in as ${bot.user.tag}!`);
bot.on('ready', () => {
console.log(`Logged in as ${bot.user.tag}!`);
bot.user.setActivity("ZE Dev - ze-team.fr");
});
});
bot.on('message', function (message) {
if (message.content === '!ping') {
const msg = message.channel.send()
message.channel.send('Auteur : ' + message.author.tag )
}
})
la ligne bah c le message.channel.send
Lequel ?
merde
c rien c moi
Pourquoi tu définis ça si tu l'utilises pas ?
plus besoin de se faire chier avec les + aussi
tu peux faire
message.channel.send(Auteur : ${message.author});
avec les `
logique sur discord il les remplace mais t’as compris
merci
np
You're so handsome Lartaxx
Comment je fais pour ping le message.author ?
J'crois tu mets juste message.author
Si j'me souviens bien
yep merci
je pue grave la merde 🥲
la doc discord.js est khené
Tkt on a tous passé par là
oui lmao
Ya 3 mois jgalerais a écrire message.channel.send
MDR
@keen narwhal la doc discordjs elle est comprehansible
Tu peux faire \ avant le ` pour que tu puisses en mettre genre : message.channel.send(`Auteur : ${message.author}`);
Je sais pas si j'ai été clair
Ah yes bah je savais pas autant pour moi ty
Pas de soucis ahah
Hello vous savez pourquoi j'ai l'erreur args.shift() is not a function ```javascript
const args = msg.content.slice(prefix.length).trim();
const command = args.shift().toLowerCase()
if (command === 'say') {
let member = msg.member;
if (!member.hasPermission('KICK_MEMBERS')) {
return msg.channel.send("Vous n'avez pas les permissions pour faire cela !");
}
msg.delete();
msg.channel.send(args);
}```
je crois aussi
déjà créer toi un fichier js à part que ce soit plus propre pour toi
commence par ça, seconde étape pas besoin d'avoir un bouton pour cliquer, tu peux mettre ton onclick sur le <figure> y aura pas de soucis 😄 tu rajoutes un cursor: pointer;
pour avoir l'effet de click
dans ton fichier js une fois qu'il est lié, tu fais un alert('toto') tu refresh et si le message apparait tu me dis
step by step
Vu que tu passes par un onclick dans ta fonction tu vas venir passer l’URL de ton image, ou alors venir la récupérer en js, comme tu veux, le plus rapide c’est de le passer en paramètre
(Dans les ())
Du coup dans ta fonction alertToto tu passes aussi un paramètre et console.log le pour voir si tu le reçois bien
en faite je me disais que le problème c'est que si qlq utilise ce portfolio il ne saura pas surement qu'il faut passer par le js pour l'image et je me demandais si il était possible que la fontion js prenne une image en fonction de l'image qui est dans la balise <img> ?
Oui comme je te disais tout à l’heure mais oui tu peux
à mince j'avais pas compris excuse moi ^^
Dans ce cas là l’évent aussi fais le côté JS (le click) comme ça si il touche à l’html il risque pas de Peter le clouer
Clique*
okay dcp on fait te le reste en js et je passe plus par html pr pas casser le click c'est ça ?
Oui par un addEventListener
okayy
dernière petite question comment je vais afficher l'image suite a la fonction ?
enft c'est bon j'ai trouvé une alternative
avec onclik window.open
Salut les bg, Je voudrais faire une commande comme sur le crow bot (bot payant très bon), qui quand une personne a un statut défini, (par exemple discord.gg/...) eh bien sa lui assigne un rôle "soutient"
bah faut get tous les joueurs
et get après dans une boucles toutes les descriptions des users
si elle est === à "tata" tu fais roles.add("id")
t’as la base tu peux faire le reste
google t’aidera
@oak turret tu saurais me dire quel truc c'est pour check les statuts ? J'ai pas trouvé dans la docu...
idk, t'as qu'à get un user au hasard
tu le log
et tu verras bien *
ah non en effet on peut pas
en tout cas quand je me log je vois pas ma desc
Si on peut je l’avais préparé pour GCA pour le <@&674191557175541771> Mais je sais plus du tout comment, mais c’est possible
Ah merde x)
Sa fait 3 jours je cherches seul
Et du coup comme je trouves rien je cherches un peu d'aide à droite à gauche.
C'est possible mais après comment on le fait ça, jsp
Wsh tu fais sa => let withInvite = members.filter((m) => m.user.presence.game && /(discord.(gg|io|me|li)/.+|discordapp.com/invite/.+)/i.test(m.user.presence.game.name));
ou un truc comme sa
jsp si sa fonctionne encore en v12
je l'avais fait en v11
Merci beaucoup, je vais test ça
Sisi j’avais réussi
Hello !
Est ce que vous savez comment je pourrais récupérer une emoji depuis son identifiant (exemple : si je check avec %F0%9F%87%AA%F0%9F%87%B8) il me return l'émoji de 🇪🇸
Merci 😉
Les emojis basiques de discord t'as juste besoin du nom vu qu'ils n'ont pas d'id
Mais pour les emojis customisés
Faut que tu recup l'id de l'emote et que tu fasses un client.emojis.cache.get("ID")
salut, j'ai cette erreur vous savez d'ou elle peut venir ? Error: /home/container/node_modules/canvas/build/Release/canvas.node: invalid ELF header
ca marche tres bien en local
c'un module que tu utilises ?
ouais c'est canvas
ou_ais mais justement la ils ont d'autres erreurs moi j'ai rien du tout
ouais mais essaye quand même de faire ce qu’ils disent ça se trouve l’origine du problème reste la même
t'as fais const canvas = require('canvas') ?
oui
comme ils disent
ce serait ps ça l’erreur sinon
ca marche super bien local apres j'envois tous sur mon serveur et pouf cet erreur
je vais regarder
J'avais également cette erreur
Elle s'est résolue lorsque j'ai installé canvas depuis le vps et pas juste avec un import du fichier canvas
je vais essayer merci
salut vous savez pourquoi ca ne marrche pas ? ```js
const Staff = [
'216029549769654273',
'305987032013078542'
]
const mentionRegex2 = RegExp(`^<@!?${Staff}>$`);
if (message.content.match(mentionRegex2)) {
message.delete()
message.reply(`Merci de ne pas mentionné les membres du staff`)
};
salut j'ai besoin d'aide pour une commande sur discord
pour mon bot
si quelqu'un peu m'aider
oui ?
const Discord = require("discord.js");
const {PREFIX} = require("../config.js");
const embederro = new Discord.MessageEmbed()
.setTitle("❌ Je n'ai pas pu bannir l'utilisateur.");
const embedsucess = new Discord.MessageEmbed()
.setTitle("✅ L'utilisateur a été banni.");
const embednotfound = new Discord.MessageEmbed()
.setTitle("🚧 Utilisateur introuvable.");
const embednopermission = new Discord.MessageEmbed()
.setTitle("😥 Tu n'as pas les permissions pour pouvoir bannir cet utilisateur.");
const embednousername = new Discord.MessageEmbed()
.setTitle("🚧 Veuillez mentionner un utilisteur.");
const embednochannel = new Discord.MessageEmbed()
.setTitle("🚧 Aucun channel incident.");
module.exports.run = (client, message, args) => {
if (!message.member.hasPermission("BAN_MEMBERS")) return message.channel.send(embednopermission);
let user = message.mentions.users.first();
if (bUser.hasPermission("MANAGE_MESSAGES")) return message.channel.send("Same Permissions");
if(!user) return message.channel.send("Vous devez mentionner quelqu'un.");
let reason = (args.splice(1).join(' ') || 'Aucune raison spécifiée');
user ? message.guild.member(user).ban({ reason: `${reason}`}) : message.channel.send("L'utilisateur n'existe pas !");
const embed1 = new Discord.MessageEmbed()
.setAuthor(`${user.username}#${user.discriminator} (${user.id})`)
.setDescription(`${user.username} a été ban \n**Raison:** ${reason}`)
.setTimestamp()
.setFooter(user.tag, user.avatarURL());
message.channel.send(embed1);
};
module.exports.help = {
name: 'ban',
cooldown : 20,
isUserAdmin: true,
permissions : true,
description : 'Banni un utilisateur'
};
et
j'ai les deux erreurs la :: (node:8428) UnhandledPromiseRejectionWarning: ReferenceError: MessageEmbed is not defined
(node:5492) UnhandledPromiseRejectionWarning: ReferenceError: bUser is not defined
if (bUser``` ici c'est pas le meme nom
je renomme let bUser
et pour tout t'es embed erreur ect comme tu ne t'en sers pas supprime les
D'accord
Buser tu le remplace par client.user
Non, tu as défini une variable user et tu as mit if (buser) alors que tu dois mettre if (user) à la place.
c'est pour le bot je crois
oui
Oui mais sa variable user n'est pas le bot mais l'utilisateur mentionné.
donc remplace bUser par client.user
(node:11288) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'hasPermission' of undefined
Bah non.
Il remplace if (buser) par if (user) à la place.
ah autant pour moi
Oui voilà. ^^
pas de soucis , le bot sera automatiquement admin
Remplaces if (buser) par if (user).
deja fait
Oui si tu veux, ajoutes moi en ami.
salut, j'arrive pas à trouver le lien de téléchargement de javascript
pouvez-vous m'aider svp?
ah oui c'est vrai
j'ai sublime text
donc je créé un fichier .js c'est bien ça?
sur n'importe quel logiciel de codage
'fin, de site
désolé je suis nouveau en programmation
est-ce que je peux utiliser les codes javascript sur celui de mon ''onglet'' qui se nomme index.html ?
au lieu de créé un autre ''onglet'' .js
Oui mais dans des balises <script>
ok parfait, merci
Bonjour
J'aurai besoins d'aide car je souhaite faire en sorte que en fessant !new et !close ça ouvre et ferme un ticket
Quelqu'un pourrait m'aide
va falloir être plus précis
En gros il veux faire en sorte de créer un système de report avec des commandes
@keen narwhal
C'est ça
Tu es sur pc ?
Yep
Tu connais les fonction de bases etc.., les client.on au moins psq si c’est pas le cas sa va être compliqué d’avancer
Pa tro x)
Mais ça c'est des fonctions de NodeJS pas du JS, tu t'y connais en JavaScript ?
Genre tu as les bases ?
bah j'ai fait 2-3 commande
justement pour les bots il a besoin des fonctions node
Oui oui je sais, mais avant de parler de fonctions Node, faut déjà qu'il maîtrise les bases en JavaScript.
Non plus
ce sont des événements de la library discordJs
Ah, autant pour moi.
Sinon oui tu as raison sur le point de connaître déjà le javascript avant de vouloir utiliser des library, maintenant on sait tous comment ça va se terminer il va quand même vouloir faire son bot
alors je te conseille pour débuter de suivre quelques tutoriels pour créer des commandes de base
Ensuite pour ton système de ticket te définir ce dont tu as envie comme différentes actions etc... si maintenant tu cherches quelqu’un pour te le faire : #demande-de-dev
t!search bot
Une erreur dans ta console ?
Bonsoir j'ai récupérer un code pour avoir un bienvenue mais elle ne marche pas https://hastebin.com/hibezibobo quelqu'un peut m'aider ?
As tu activé les intents ?
c'est quoi ? @glossy coral
Oui je suppose @oak turret
@oak turret Ducoup tu pense pouvoir m'aider ?
Faut que tu sois sur pour les intents pas supposer
Car si elles sont pas activés ça ne fonctionnera pas
Ha oui merci Beaucoup
svp qui peux m'envoyer la documentation de nodejs
faut croire que c'est dur de chercher sur google de nos jours: https://nodejs.org/en/docs/
Très dur ...
C'est de Discord.js ou celle de Nodes.Js
Aussi
quelqu'un peut m'envoyer le lien de google svp ? C'est urgent
bdd["captcha"][member.id] = { "value": Math.floor(Math.random() * Math.floor(10000)), "statut": false }
Savebdd();
bot.channels.cache.get('793430041186664459').send(`Bonjour ${member} ! Ton code de captcha est : ${bdd["captcha"][member.id]["value"]}`)
})
bot.on('message', async message => {
if(message.author.bot || message.member.permissions.has('ADMINISTRATOR')) return;
if(message.channel.id == "793430041186664459") {
message.delete();
if(!bdd["captcha"][message.member.id]["statut"]){
if (isNaN(message.content)) {
return message.channel.send('Tu dois indiquer la valeur de la captcha envoyée au dessus').then(message=> message.delete({timeout: 15000}));
}
else {
if(message.content == bdd["captcha"][message.member.id]["value"]){
bdd["captcha"][message.member.id]["statut"] = true;
Savebdd();
message.member.roles.remove('793428956250374174');
message.member.roles.add('793178857095954433');
}
else{
return message.channel.send('Tu dois indiquer la valeur de la captcha envoyée au dessus').then(message=> message.delete({timeout: 15000}));
}
}
}
}
})
bot.on('guildMemberRemove', async member => {
delete bdd["captcha"][member.id]
Savebdd();
})```
at Client.<anonymous> (c:\Users\Megaport\Desktop\ZLIMBOT-master\ZLIMBOT-master\zlimbot.js:321:24)
at Client.emit (events.js:327:22)
at Guild._addMember (c:\Users\Megaport\Desktop\ZLIMBOT-master\ZLIMBOT-master\node_modules\discord.js\src\structures\Guild.js:1542:19)
at GuildMemberAddHandler.handle (c:\Users\Megaport\Desktop\ZLIMBOT-master\ZLIMBOT-master\node_modules\discord.js\src\client\websocket\packets\handlers\GuildMemberAdd.js:12:13)
at WebSocketPacketManager.handle (c:\Users\Megaport\Desktop\ZLIMBOT-master\ZLIMBOT-master\node_modules\discord.js\src\client\websocket\packets\WebSocketPacketManager.js:108:65)
at WebSocketConnection.onPacket (c:\Users\Megaport\Desktop\ZLIMBOT-master\ZLIMBOT-master\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:336:35)
at WebSocketConnection.onMessage (c:\Users\Megaport\Desktop\ZLIMBOT-master\ZLIMBOT-master\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:299:17)
at WebSocket.onMessage (c:\Users\Megaport\Desktop\ZLIMBOT-master\ZLIMBOT-master\node_modules\ws\lib\event-target.js:120:16)
at WebSocket.emit (events.js:315:20)
at Receiver.receiverOnMessage (c:\Users\Megaport\Desktop\ZLIMBOT-master\ZLIMBOT-master\node_modules\ws\lib\websocket.js:789:20)```
Vous pouvez m'aider
Bonjour d'abord.
Ensuite, il faut mettre des ``````, ça peut aider à la lecture
J'imagine que la ligne concernée est la quatrième ?
oui
Hello vous savez comment je peut get le channel d'une personne qui à effectuer une commande svp ? (discord.js)
bah
quand elle exécute la commande il te suffit juste de garder l'id du salon du message
et après tu fais ce que tu veux avec
Alors, tu a je supose fais une copie du zlim-bot sur github, sauf que ce bot est en v11 de discord.js :)
Et n’est plus a jour
Montre ta ligne 321 du fichier zlimbot.js
bot.channels.cache.get('793430041186664459').send(`Bonjour ${member} ! Ton code de captcha est : ${bdd["captcha"][member.id]["value"]}`)
@steady harbor
Chez pas moi :( esseye de passer ton discord.js en v 11.5.1
Hello, quelqu'un sait pourquoi mon log de reaction me return "undefined", je vois pas pourquoi :x
Elle vient d'où ta méthode first() ?
collected est une collection donc ça a la méthode first
oauip
mais y a pas d’erreurs, juste mon array vide quoi et je capte pas pourquoi alors que je réagis avant les 5secondes
Yo ! J'envoie dans ma base de données la valeur : 2.5, sauf que lorsque c'est envoyé, ça me le transforme en 3 🤨
Vous savez comment faire, j'imagine que c'est dans la requête SQL, j'ai cherché mais je n'ai pas trouvé :/
UPDATE users SET global_note = ${notes_} WHERE user_id = '${fetched_target.id}'
ma requête
notes_ vaut 2.5, mais se transforme en 3
Ton champs doit être en INT il faut qu’il soit en FLOAT
Justement il est en FLOAT :/https://i.imgur.com/MYqKUg3.png
Personne ne sait ? :/
moi perso
j’voulais faire un truc similaire et dès que je mettais l’id dans la bdd il petait un cable, je l’ai mis en text en bdd et ça a fonctionner, chelou mais bon
l'id discord ?
on a eu ce soucis et enfaite c'est normal, en js le Number a une taille maximale, du coup voilà pourquoi ton id discord en number la fin etait broken par exemple
il faut faire un bigInt dans ce cas
Sinon wailrone la non comme ca je ne sais pas
en fait c’était chelou car mon id en l’occurence l’id du mec quand je le loggais il était good mais dès que je faisais l’insert en bdd il changeait de valeur et j’ai jamais su pourquoi
j’ai mis en text(255) et ça a fonctionner mais chelou
C'est vraiment bizarre 🤔
c’est rien c’le sql 
tellement ça x')
xD
Simple question, c'est quoi le code Hex pour avoir une bordure invisible sur le embed comme quand quelqu'un publie un tuto dans annonce

