Beispiel #1
0
        internal void UpdateFromJsonGuildMember(JsonGuildMember jsonGuildMember)
        {
            Guard.IsEqualTo(UserId, jsonGuildMember.User.Id, nameof(UserId));
            Guard.IsEqualTo(GuildId, jsonGuildMember.User.Id, nameof(GuildId));

            Nickname      = jsonGuildMember.Nickname ?? Nickname;
            JoinedAt      = jsonGuildMember.JoinedAt ?? JoinedAt;
            GuildAvatarId = jsonGuildMember.Avatar ?? GuildAvatarId;
            Roles         = jsonGuildMember.Roles ?? Roles;
            HoistedRole   = jsonGuildMember.HoistedRole ?? HoistedRole;
        }
Beispiel #2
0
        internal GuildMember(JsonGuildMember jsonMember, ulong?guildId, QuarrelClient context) :
            base(context)
        {
            Guard.IsNotNull(guildId, nameof(guildId));

            GuildId = guildId.Value;

            UserId        = jsonMember.User.Id;
            JoinedAt      = jsonMember.JoinedAt;
            Nickname      = jsonMember.Nickname;
            GuildAvatarId = jsonMember.Avatar;
            Roles         = jsonMember.Roles;
            HoistedRole   = jsonMember.HoistedRole;

            _roles = new HashSet <ulong>();
            foreach (var role in Roles)
            {
                _roles.Add(role);
            }

            _roles.Add(GuildId);
        }
Beispiel #3
0
 internal GuildMember(JsonGuildMember jsonMember, QuarrelClient context)
     : this(jsonMember, jsonMember.GuildId, context)
 {
 }