2017-07-29 3 views
0

Ich benutze discord.js für meinen Bot, und ich möchte the User object verwenden, um die ID davon zu bekommen. Die Dokumente sind jedoch nicht sehr speziell dafür. Wie erhalten Sie ein Objekt für einen bestimmten Benutzer? Wie auf das Benutzerobjekt zugreifen?


Nebenbei, ich bin auch neu bei node.js, also vielleicht gibt es nur eine große Ähnlichkeit in node.js Sachen, mit denen ich nicht vertraut bin.

Mein Code:

const Discord = require("discord.js"); 
const client = new Discord.Client(); 
var kingdoms = []; 
var ids = []; 
const Kingdom = function(name, id){ 
    this.name = name; 
    this.aa = 1; 
    this.da = 1; 
    this.attackDate = 0; 
    this.exhausaa = 0; 
    ids.push(id); 
}; 
client.on('ready',() => { 
    console.log(`Logged in as ${client.user.tag}!`); 
    client.user.setGame("k^help"); 
}); 

client.on('message', msg => { 
    console.log(msg); 
    console.log(msg.content.trim().indexOf('k^addkingdom')); 
    if (msg.content.trim() == 'k^help') { 
    msg.channel.send({embed: 
     { 
      description: 'Note: All things in brackets must be replaced and are parameters.', 
      fields: [{ 
       name: "k^help", 
       value: "Displays this message." 
      }, 
      { 
       name: "k^addkingdom [name]", 
       value: "Adds a kingdom to the database named [name]. One per person only." 
      }] 
     } 
    }); 
    } 
    if (msg.content.trim().indexOf('k^addkingdom ') == 0) { 
    //if(ids.contains(msg.GuildMember.id)){ 
    // msg.reply("You already have a kingdom!"); 
    //} 
    var content = msg.content; 
    content = content.replace('k^addkingdom ', ''); 
    content.trim(); 
    msg.reply("Kingdom " + content + " added!"); 
    kingdoms.push(new Kingdom(content/*, msg.GuildMember.id*/)); 
    } 
}); 

client.login('Hidden for privacy'); 

Antwort

0

ich mit Disharmonie nicht vertraut bin, aber die api Sie verknüpft lesen, wenn Sie ein Benutzerobjekt haben, die Benutzer-ID zu bekommen gerade tun

user.id 
+0

Ich habe das versucht und jetzt hat es mir eine Fehlermeldung gegeben, dass 'user' nicht definiert war. Also, das geht nicht ... – MasterBob

+0

Ich nannte das Objekt "user" als Beispiel. Sie müssen den Namen verwenden, den Sie dem Objekt gegeben haben. – Jerinaw

+0

Es wäre viel einfacher, wenn Sie Ihren Code gepostet haben. – Jerinaw

0

zu Um einen bestimmten Benutzer für ein Bot-Konto zu erhalten, verwenden Sie client.fetchUser (id). Dies wird ein Discord-Benutzerobjekt zurückgeben. Andernfalls (wie bei Selfbots) und auf einem Kanal verwenden Sie channel object.member (userResolvable).

Verwandte Themen