mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-11 09:03:29 +01:00
Add guild member nickname setting n stuff
This commit is contained in:
@@ -100,9 +100,18 @@ class Guild {
|
||||
_updateMember(member, data) {
|
||||
const oldMember = cloneObject(member);
|
||||
|
||||
member._roles = data.roles;
|
||||
member.nickname = data.nick;
|
||||
if (this.client.ws.status === Constants.Status.READY) {
|
||||
if (data.roles) {
|
||||
member._roles = data.roles;
|
||||
} else {
|
||||
member.nickname = data.nick;
|
||||
}
|
||||
|
||||
const notSame = (
|
||||
member.nickname !== oldMember.nickname &&
|
||||
!arraysEqual(member._roles, oldMember._roles)
|
||||
);
|
||||
|
||||
if (this.client.ws.status === Constants.Status.READY && notSame) {
|
||||
/**
|
||||
* Emitted whenever a Guild Member changes - i.e. new role, removed role, nickname
|
||||
*
|
||||
@@ -113,6 +122,10 @@ class Guild {
|
||||
*/
|
||||
this.client.emit(Constants.Events.GUILD_MEMBER_UPDATE, this, oldMember, member);
|
||||
}
|
||||
return {
|
||||
old: oldMember,
|
||||
mem: member,
|
||||
};
|
||||
}
|
||||
|
||||
_removeMember(guildMember) {
|
||||
|
||||
@@ -132,6 +132,60 @@ class GuildMember {
|
||||
return this.user.id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Mute/unmute a user
|
||||
* @param {Boolean} mute whether or not the member should be muted
|
||||
* @returns {Promise<GuildMember, Error>}
|
||||
*/
|
||||
setMute(mute) {
|
||||
return this.edit({ mute });
|
||||
}
|
||||
|
||||
/**
|
||||
* Deafen/undeafen a user
|
||||
* @param {Boolean} deaf whether or not the member should be deafened
|
||||
* @returns {Promise<GuildMember, Error>}
|
||||
*/
|
||||
setDeaf(deaf) {
|
||||
return this.edit({ deaf });
|
||||
}
|
||||
|
||||
/**
|
||||
* Moves the Guild Member to the given channel.
|
||||
* @param {ChannelResolvable} channel the channel to move the member to
|
||||
* @returns {Promise<GuildMember, Error>}
|
||||
*/
|
||||
setVoiceChannel(channel) {
|
||||
return this.edit({ channel });
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the Roles applied to the member.
|
||||
* @param {Collection<String, Role>|Array<Role>} roles the roles to apply
|
||||
* @returns {Promise<GuildMember, Error>}
|
||||
*/
|
||||
setRoles(roles) {
|
||||
return this.edit({ roles });
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the nickname for the Guild Member
|
||||
* @param {String} nick the nickname for the Guild Member
|
||||
* @returns {Promise<GuildMember, Error>}
|
||||
*/
|
||||
setNickname(nick) {
|
||||
return this.edit({ nick });
|
||||
}
|
||||
|
||||
/**
|
||||
* Edit a Guild Member
|
||||
* @param {GuildmemberEditData} data the data to edit the member with
|
||||
* @returns {Promise<GuildMember, Error>}
|
||||
*/
|
||||
edit(data) {
|
||||
return this.client.rest.methods.updateGuildMember(this, data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes any DM's with this Guild Member
|
||||
* @returns {Promise<DMChannel>}
|
||||
|
||||
Reference in New Issue
Block a user