Fixed and rewritten draw using new API, others coming
I broke it when preparing for Github publishing
This commit is contained in:
		| @@ -47,7 +47,7 @@ public class Cards | |||||||
|                 { |                 { | ||||||
|                     str += GetName().ToLower(); |                     str += GetName().ToLower(); | ||||||
|                 } |                 } | ||||||
|                 return @"images/cards/" + str + "_of_" + suit.ToString().ToLower() + ".jpg"; |                 return @"./images/cards/" + str + "_of_" + suit.ToString().ToLower() + ".jpg"; | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,6 +1,8 @@ | |||||||
| using System; | using System; | ||||||
| using System.Collections.Generic; | using System.Collections.Generic; | ||||||
| using System.Drawing; | using System.Drawing; | ||||||
|  | using System.Drawing.Imaging; | ||||||
|  | using System.IO; | ||||||
| using System.Linq; | using System.Linq; | ||||||
| using System.Text; | using System.Text; | ||||||
| using System.Threading.Tasks; | using System.Threading.Tasks; | ||||||
| @@ -35,5 +37,12 @@ namespace NadekoBot | |||||||
|             } |             } | ||||||
|             return bitmap; |             return bitmap; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|  |         public static Stream ImageToStream(Image img,ImageFormat format) { | ||||||
|  |             MemoryStream stream = new MemoryStream(); | ||||||
|  |             img.Save(stream, format); | ||||||
|  |             stream.Position = 0; | ||||||
|  |             return stream; | ||||||
|  |         } | ||||||
|     } |     } | ||||||
| } | } | ||||||
|   | |||||||
| @@ -6,6 +6,8 @@ using System.Threading.Tasks; | |||||||
| using Discord.Commands; | using Discord.Commands; | ||||||
| using Discord; | using Discord; | ||||||
| using System.Drawing; | using System.Drawing; | ||||||
|  | using System.IO; | ||||||
|  | using System.Drawing.Imaging; | ||||||
|  |  | ||||||
| namespace NadekoBot | namespace NadekoBot | ||||||
| { | { | ||||||
| @@ -26,15 +28,16 @@ namespace NadekoBot | |||||||
|  |  | ||||||
|                 try |                 try | ||||||
|                 { |                 { | ||||||
|                     int num = int.Parse(e.Args[0]); |                     int num = 1; | ||||||
|  |                     var isParsed = int.TryParse(e.GetArg("count"), out num); | ||||||
|  |                     if (!isParsed || num <2) | ||||||
|  |                     { | ||||||
|  |                         await client.SendFile(e.Channel, cards.DrawACard().Path); | ||||||
|  |                         return; | ||||||
|  |                     } | ||||||
|                     if (num > 5) |                     if (num > 5) | ||||||
|                     { |  | ||||||
|                         num = 5; |                         num = 5; | ||||||
|                     } |  | ||||||
|                     else if (num < 1) |  | ||||||
|                     { |  | ||||||
|                         num = 1; |  | ||||||
|                     } |  | ||||||
|                     Image[] images = new Image[num]; |                     Image[] images = new Image[num]; | ||||||
|                     for (int i = 0; i < num; i++) |                     for (int i = 0; i < num; i++) | ||||||
|                     { |                     { | ||||||
| @@ -45,11 +48,10 @@ namespace NadekoBot | |||||||
|                         images[i] = Image.FromFile(cards.DrawACard().Path); |                         images[i] = Image.FromFile(cards.DrawACard().Path); | ||||||
|                     } |                     } | ||||||
|                     Bitmap bitmap = ImageHandler.MergeImages(images); |                     Bitmap bitmap = ImageHandler.MergeImages(images); | ||||||
|                     bitmap.Save("cards.png"); |                     await client.SendFile(e.Channel, num+" cards.jpg",ImageHandler.ImageToStream(bitmap,ImageFormat.Jpeg)); | ||||||
|                     await client.SendFile(e.Channel, "cards.png"); |  | ||||||
|                 } |                 } | ||||||
|                 catch (Exception) { |                 catch (Exception ex) { | ||||||
|                     Console.WriteLine("Error drawing (a) card(s)"); |                     Console.WriteLine("Error drawing (a) card(s) "+ex.ToString()); | ||||||
|                 } |                 } | ||||||
|             }; |             }; | ||||||
|         } |         } | ||||||
| @@ -58,7 +60,7 @@ namespace NadekoBot | |||||||
|         { |         { | ||||||
|             cgb.CreateCommand("$draw") |             cgb.CreateCommand("$draw") | ||||||
|                 .Description("Draws a card from the deck.If you supply number [x], she draws up to 5 cards from the deck.\nUsage: $draw [x]") |                 .Description("Draws a card from the deck.If you supply number [x], she draws up to 5 cards from the deck.\nUsage: $draw [x]") | ||||||
|                 .Parameter("count", ParameterType.Multiple) |                 .Parameter("count", ParameterType.Optional) | ||||||
|                 .Do(DoFunc()); |                 .Do(DoFunc()); | ||||||
|         } |         } | ||||||
|          |          | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user