public async Task SendBasicImage(MessageType type, IUser targetUser = null) { var imagePath = await GetImagePathAsync(type).ConfigureAwait(false); if (imagePath != null) { await Context.EmbedAsync( new EmbedBuilder() .WithDescription(FormatMessage(type, Context.User, targetUser)) .WithImageUrl(imagePath) ).ConfigureAwait(false); } }
private async Task <string> GetImagePathAsync(MessageType type) { var result = new RamMoeApi().RandomImage(type, type == MessageType.Nsfw); if (result == null || string.IsNullOrEmpty(result.Path)) { return(null); } if (string.IsNullOrEmpty(result.Path)) { await Context.ApplyResultReaction(CommandResult.Failed).ConfigureAwait(false); } return(result?.Path); }
private string FormatMessage(MessageType type, IUser source, IUser target = null) { string message = $"{source.Mention}: {type.ToString()}"; switch (type) { case MessageType.Cry: if (target == null) { message = $"{source.Mention} is crying! :("; } else { message = $"{source.Mention} is crying at {target.Mention}! :("; } break; case MessageType.Cuddle: if (target == null) { message = $"{source.Mention} is cuddling someone."; } else { message = $"{source.Mention} is cuddling with {target.Mention}"; } break; case MessageType.Hug: if (target == null) { message = $"{source.Mention} is hugging someone."; } else { message = $"{source.Mention} hugs {target.Mention}"; } break; case MessageType.Kiss: if (target == null) { message = $"{source.Mention} kisses someone."; } else { message = $"{source.Mention} kisses {target.Mention}!"; } break; case MessageType.Lewd: if (target == null) { message = $"Lewd {source.Mention}."; } else { message = $"{target.Mention} received a lewd from {source.Mention}."; } break; case MessageType.Lick: if (target == null) { message = $"{source.Mention} decides to lick a random person."; } else { message = $"{source.Mention} licks {target.Mention}."; } break; case MessageType.Nom: if (target == null) { message = $"{source.Mention} noms!"; } else { message = $"{source.Mention} noms in front of {target.Mention}."; } break; case MessageType.Nyan: if (target == null) { message = $"{source.Mention}"; } else { message = $"{target.Mention} NYAN from {source.Mention}."; } break; case MessageType.Owo: if (target == null) { message = $"{source.Mention} OwO what's this?."; } else { message = $"{source.Mention}: {target.Mention} OwO what's this?"; } break; case MessageType.Pat: if (target == null) { message = $"{source.Mention} pats an unknown person, hello social distancing?"; } else { message = $"{source.Mention} pats {target.Mention}!"; } break; case MessageType.Pout: if (target == null) { message = $"{source.Mention} pouts."; } else { message = $"{source.Mention} pouts at {target.Mention}."; } break; case MessageType.Rem: if (target == null) { message = $"{source.Mention}"; } else { message = $"{source.Mention} pokes {target.Mention} with a Rem picture."; } break; case MessageType.Slap: if (target == null) { message = $"{source.Mention} slaps someone."; } else { message = $"{source.Mention} slaps {target.Mention}!"; } break; case MessageType.Smug: if (target == null) { message = $"{source.Mention} is feeling smug."; } else { message = $"{source.Mention} throws a smug face at {target.Mention}."; } break; case MessageType.Stare: if (target == null) { message = $"{source.Mention} stares into the dark abyss."; } else { message = $"{source.Mention} stares at {target.Mention}."; } break; case MessageType.Tickle: if (target == null) { message = $"{source.Mention} tickles.. someone?"; } else { message = $"{source.Mention} tickles {target.Mention}!"; } break; case MessageType.Triggered: if (target == null) { message = $"{source.Mention} is feeling triggered."; } else { message = $"{source.Mention} is triggered at {target.Mention}."; } break; case MessageType.Nsfw: if (target == null) { message = $"{source.Mention}"; } else { message = $"{source.Mention}, from {target.Mention}."; } break; case MessageType.Potato: if (target == null) { message = $"{source.Mention} potato."; } else { message = $"{source.Mention} sends {target.Mention} a potato."; } break; case MessageType.Kermit: if (target == null) { message = $"{source.Mention}"; } else { message = $"{source.Mention} sends {target.Mention} a kermit."; } break; default: break; } return(message); }
public Task Image(MessageType type, IUser target = null) { return(SendBasicImage(type, target)); }