public async Task AddToGang(IGuildUser user) { if (await GangRepository.InGangAsync(user.Id, Context.Guild.Id)) { throw new Exception("This user is already in a gang."); } if (await GangRepository.IsFullAsync(Context.User.Id, Context.Guild.Id)) { throw new Exception("Your gang is already full!"); } await GangRepository.AddMemberAsync(Context.User.Id, Context.Guild.Id, user.Id); await ReplyAsync($"{user} is now a new member of your gang!"); var channel = await user.CreateDMChannelAsync(); await channel.SendMessageAsync($"Congrats! You are now a member of {(await GangRepository.FetchGangAsync(Context)).Name}!"); }