From 2cd8653144f43e6a4cba3c6bf53f05822ab8b327 Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Mon, 4 Dec 2017 09:51:23 -0500 Subject: [PATCH] ascii art --- Commands/AsciiArt.cs | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Commands/AsciiArt.cs b/Commands/AsciiArt.cs index b9cf6c5..d9d0d33 100644 --- a/Commands/AsciiArt.cs +++ b/Commands/AsciiArt.cs @@ -7,10 +7,18 @@ namespace dotbot.Commands { [Command("ascii")] [Summary("creates ascii word art")] - public async Task CreateAsciiArt([Remainder] [Summary("text to convert")] string ArtString) - { - await ReplyAsync($"```\n{(new WenceyWang.FIGlet.AsciiArt(ArtString)).ToString()}\n```"); + public async Task CreateAsciiArt( + [Summaery("font you want to use")] string fontName, + [Remainder] [Summary("text to convert")] string ArtString + ) { + if (fontName == "list") { + return await ReplyAsync($"available fonts for use with `{_config["prefix"]}ascii`:\n```{string.Join(", ", Directory.GetFiles("Fonts").Select(Path.GetFileNameWithoutExtension))}```"); + } else if (File.Exists($"Fonts/{fontName}.flf")) { + var font = new WenceyWang.FIGlet.FIGletFont(File.Open($"Fonts/{fontName}.flf")); + await ReplyAsync($"```\n{(new WenceyWang.FIGlet.AsciiArt(ArtString, font: font)).ToString()}\n```"); + } else { + await ReplyAsync($"```\n{(new WenceyWang.FIGlet.AsciiArt(fontName + ArtString)).ToString()}\n```"); + } } - } }