public IChatEmbed MakeResponseEmbed(PokemonRaidPost post, IBotServerConfiguration guildConfig, string header) { var embed = new DiscordChatEmbed(); embed.WithDescription(header); embed.WithColor(post.Color[0], post.Color[1], post.Color[2]); embed.WithUrl(string.Format(Language.Formats["pokemonInfoLink"], post.PokemonId)); embed.WithThumbnailUrl(string.Format(Language.Formats["imageUrlLargePokemon"], post.PokemonId.ToString().PadLeft(3, '0'))); foreach (var message in post.Responses.OrderBy(x => x.MessageDate).Skip(Math.Max(0, post.Responses.Count() - 10)))//max fields is 25 { embed.AddField(string.Format(Language.Formats["responseInfo"], message.MessageDate.AddHours(TimeOffset), message.ChannelName, message.Username), message.Content); } //var builder = new EmbedBuilder(); /* * builder.WithColor(post.Color[0], post.Color[1], post.Color[2]); * * builder.WithDescription(header); * builder.WithUrl(string.Format(Language.Formats["pokemonInfoLink"], post.PokemonId)); * * builder.WithThumbnailUrl(string.Format(Language.Formats["imageUrlLargePokemon"], post.PokemonId.ToString().PadLeft(3, '0'))); * * foreach (var message in post.Responses.OrderBy(x => x.MessageDate).Skip(Math.Max(0, post.Responses.Count() - 10)))//max fields is 25 * { * builder.AddField(string.Format(Language.Formats["responseInfo"], message.MessageDate.AddHours(TimeOffset), message.ChannelName, message.Username), message.Content); * } */ return(embed); }
public IChatEmbed GetHelpEmbed(IBotConfiguration config, bool admin) { var embed = new DiscordChatEmbed(); string info = $"*{Language.Strings["helpParenthesis"]}*"; if (admin) { info += $"\n\\**{Language.Strings["helpAdmin"]}*"; } embed.AddField($"__**{Language.Strings["helpCommands"]}**__", info); embed.AddField(string.Format("{0}__r__aid [pokemon] [time left] [location]", config.Prefix), Language.Strings["helpRaid"]); embed.AddField(string.Format("{0}__j__oin [raid] [number]", config.Prefix), Language.Strings["helpJoin"]); embed.AddField(string.Format("{0}__un__join [raid]", config.Prefix), Language.Strings["helpUnJoin"]); embed.AddField(string.Format("{0}__d__elete [raid id]", config.Prefix), Language.Strings["helpDelete"]); embed.AddField(string.Format("{0}__m__erge [raid1] [raid2]", config.Prefix), Language.Strings["helpMerge"]); embed.AddField(string.Format("{0}__loc__ation [raid] [new location]", config.Prefix), Language.Strings["helpLocation"]); embed.AddField(string.Format("{0}__e__nd [raid] [new end time]", config.Prefix), Language.Strings["helpEnd"]); embed.AddField(string.Format("{0}__s__tart [raid] [start time]", config.Prefix), Language.Strings["helpStart"]); embed.AddField(string.Format("{0}__i__nfo [name]", config.Prefix), Language.Strings["helpInfo"]); embed.AddField(string.Format("{0}__h__elp", config.Prefix), Language.Strings["helpHelp"]); if (admin) { embed.AddField(string.Format("*{0}channel [name]", config.Prefix), string.Format(Language.Strings["helpChannel"], config.OutputChannel)); embed.AddField(string.Format("*{0}nochannel", config.Prefix), Language.Strings["helpNoChannel"]); embed.AddField(string.Format("*{0}alias [pokemon] [alias]", config.Prefix), Language.Strings["helpAlias"]); embed.AddField(string.Format("*{0}removealias [pokemon] [alias]", config.Prefix), Language.Strings["helpRemoveAlias"]); embed.AddField(string.Format("*{0}pin [channel name]", config.Prefix), Language.Strings["helpPin"]); embed.AddField(string.Format("*{0}unpin [channel name]", config.Prefix), Language.Strings["helpUnPin"]); embed.AddField(string.Format("*{0}pinall", config.Prefix), Language.Strings["helpPinAll"]); embed.AddField(string.Format("*{0}unpinall", config.Prefix), Language.Strings["helpUnPinAll"]); embed.AddField(string.Format("*{0}pinlist", config.Prefix), Language.Strings["helpPinList"]); embed.AddField(string.Format("*{0}mute [channel name]", config.Prefix), Language.Strings["helpMute"]); embed.AddField(string.Format("*{0}unmute [channel name]", config.Prefix), Language.Strings["helpUnMute"]); embed.AddField(string.Format("*{0}muteall", config.Prefix), Language.Strings["helpMuteAll"]); embed.AddField(string.Format("*{0}unmuteall", config.Prefix), Language.Strings["helpUnMuteAll"]); embed.AddField(string.Format("*{0}mutelist", config.Prefix), Language.Strings["helpMuteList"]); embed.AddField(string.Format("*{0}timezone [gmt offset]", config.Prefix), Language.Strings["helpTimezone"]); embed.AddField(string.Format("*{0}culture [culture]", config.Prefix), Language.Strings["helpCulture"]); embed.AddField(string.Format("*{0}city [city]", config.Prefix), Language.Strings["helpCity"]); embed.AddField(string.Format("*{0}channelcity [channel name] [city]", config.Prefix), Language.Strings["helpChannelCity"]); embed.AddField(string.Format("*{0}cities", config.Prefix), Language.Strings["helpCities"]); embed.AddField(string.Format("*{0}place", config.Prefix), Language.Strings["helpPlace"]); embed.AddField(string.Format("*{0}deleteplace", config.Prefix), Language.Strings["helpDeletePlace"]); embed.AddField(string.Format("*{0}places", config.Prefix), Language.Strings["helpPlaces"]); embed.AddField(string.Format("*{0}clearplaces", config.Prefix), Language.Strings["helpClearPlaces"]); } return(embed); }
public IChatEmbed MakeHeaderEmbed(PokemonRaidPost post, string text = null) { if (string.IsNullOrEmpty(text)) { text = MakePostHeader(post); } var headerembed = new DiscordChatEmbed(); headerembed.WithColor(post.Color[0], post.Color[1], post.Color[2]); headerembed.WithUrl(string.Format(Language.Formats["pokemonInfoLink"], post.PokemonId)); headerembed.WithDescription(Language.RegularExpressions["discordChannel"].Replace(text, "").Replace(" in ", " ").Replace(" ", " ")); headerembed.WithThumbnailUrl(string.Format(Language.Formats["imageUrlSmallPokemon"], post.PokemonId.ToString().PadLeft(3, '0'))); return(headerembed); }