async static Task Respond(CommandContext ctx, string textContent, DiscordLinkEmbed embedContent) { // If needed; split the message into multiple parts ICollection <string> stringParts = MessageUtil.SplitStringBySize(textContent, DLConstants.DISCORD_MESSAGE_CHARACTER_LIMIT); ICollection <DiscordEmbed> embedParts = MessageUtil.BuildDiscordEmbeds(embedContent); if (stringParts.Count <= 1 && embedParts.Count <= 1) { DiscordEmbed embed = (embedParts.Count >= 1) ? embedParts.First() : null; await ctx.RespondAsync(textContent, isTTS : false, embed); } else { // Either make sure we have permission to use embeds or convert the embed to text foreach (string textMessagePart in stringParts) { await ctx.RespondAsync(textMessagePart, isTTS : false, null); } foreach (DiscordEmbed embedPart in embedParts) { await ctx.RespondAsync(null, isTTS : false, embedPart); } } }