private void GuildMemberAddEvents(JObject message) { DiscordGuildMemberAddEventArgs e = new DiscordGuildMemberAddEventArgs(); e.RawJson = message; DiscordMember newMember = new DiscordMember { user = new DiscordUser { username = message["d"]["user"]["username"].ToString(), id = message["d"]["user"]["id"].ToString(), discriminator = message["d"]["user"]["discriminator"].ToString(), avatar = message["d"]["user"]["avatar"].ToString(), } }; e.AddedMember = newMember; e.Guild = ServersList.Find(x => x.id == message["d"]["guild_id"].ToString()); e.roles = message["d"]["roles"].ToObject<string[]>(); e.JoinedAt = DateTime.Parse(message["d"]["joined_at"].ToString()); ServersList.Find(x => x == e.Guild).members.Add(newMember); if (UserAddedToServer != null) UserAddedToServer(this, e); }
private void GuildMemberAddEvents(JObject message) { DiscordGuildMemberAddEventArgs e = new DiscordGuildMemberAddEventArgs(); e.RawJson = message; DiscordMember newMember = JsonConvert.DeserializeObject<DiscordMember>(message["d"]["user"].ToString()); newMember.parentclient = this; e.AddedMember = newMember; e.Guild = ServersList.Find(x => x.id == message["d"]["guild_id"].ToString()); newMember.Parent = e.Guild; e.roles = message["d"]["roles"].ToObject<string[]>(); e.JoinedAt = DateTime.Parse(message["d"]["joined_at"].ToString()); ServersList.Find(x => x == e.Guild).members.Add(newMember); if (UserAddedToServer != null) UserAddedToServer(this, e); }
private void GuildMemberAddEvents(JObject message) { DiscordGuildMemberAddEventArgs e = new DiscordGuildMemberAddEventArgs(); e.RawJson = message; e.Guild = ServersList.Find(x => x.ID == message["d"]["guild_id"].ToString()); DiscordMember existingMember = e.Guild.GetMemberByKey(message["d"]["user"]["id"].ToString()); if (existingMember != null) { DiscordMember newMember = JsonConvert.DeserializeObject<DiscordMember>(message["d"]["user"].ToString()); newMember.parentclient = this; e.AddedMember = newMember; newMember.Parent = e.Guild; e.Roles = message["d"]["roles"].ToObject<string[]>(); e.JoinedAt = DateTime.Parse(message["d"]["joined_at"].ToString()); ServersList.Find(x => x == e.Guild).AddMember(newMember); if (UserAddedToServer != null) UserAddedToServer(this, e); } else { DebugLogger.Log($"Skipping guild member add because user already exists in server.", MessageLevel.Debug); } }