From 262b0eb56668ccab6ad52a0f72f3be8fae270c80 Mon Sep 17 00:00:00 2001 From: Yan Maniez Date: Tue, 5 Jun 2018 20:51:43 +0200 Subject: [PATCH] Test Markdig --- .../AideDeJeu.Android.csproj | 2 +- AideDeJeu/AideDeJeu.UWP/AideDeJeu.UWP.csproj | 4 +- AideDeJeu/AideDeJeu.iOS/AideDeJeu.iOS.csproj | 2 +- AideDeJeu/AideDeJeu/AideDeJeu.csproj | 3 +- AideDeJeu/AideDeJeuCmd/Program.cs | 54 +++++++++++++++++++ Data/spells_hd.md | 54 +++++++++++++++++++ 6 files changed, 114 insertions(+), 5 deletions(-) create mode 100644 Data/spells_hd.md diff --git a/AideDeJeu/AideDeJeu.Android/AideDeJeu.Android.csproj b/AideDeJeu/AideDeJeu.Android/AideDeJeu.Android.csproj index c99aebbc..d87527a7 100644 --- a/AideDeJeu/AideDeJeu.Android/AideDeJeu.Android.csproj +++ b/AideDeJeu/AideDeJeu.Android/AideDeJeu.Android.csproj @@ -62,7 +62,7 @@ 1.60.1 - 3.0.0.482510 + 3.0.0.530893 diff --git a/AideDeJeu/AideDeJeu.UWP/AideDeJeu.UWP.csproj b/AideDeJeu/AideDeJeu.UWP/AideDeJeu.UWP.csproj index 7b5bea6d..d6ba28c4 100644 --- a/AideDeJeu/AideDeJeu.UWP/AideDeJeu.UWP.csproj +++ b/AideDeJeu/AideDeJeu.UWP/AideDeJeu.UWP.csproj @@ -172,9 +172,9 @@ 1.60.1 - + - 3.0.0.482510 + 3.0.0.530893 diff --git a/AideDeJeu/AideDeJeu.iOS/AideDeJeu.iOS.csproj b/AideDeJeu/AideDeJeu.iOS/AideDeJeu.iOS.csproj index 7c6b06e1..a35a50ee 100644 --- a/AideDeJeu/AideDeJeu.iOS/AideDeJeu.iOS.csproj +++ b/AideDeJeu/AideDeJeu.iOS/AideDeJeu.iOS.csproj @@ -115,7 +115,7 @@ 1.60.1 - 3.0.0.482510 + 3.0.0.530893 diff --git a/AideDeJeu/AideDeJeu/AideDeJeu.csproj b/AideDeJeu/AideDeJeu/AideDeJeu.csproj index 75b51fcf..f52a0e44 100644 --- a/AideDeJeu/AideDeJeu/AideDeJeu.csproj +++ b/AideDeJeu/AideDeJeu/AideDeJeu.csproj @@ -45,8 +45,9 @@ + - + diff --git a/AideDeJeu/AideDeJeuCmd/Program.cs b/AideDeJeu/AideDeJeuCmd/Program.cs index 7e878283..80235f5a 100644 --- a/AideDeJeu/AideDeJeuCmd/Program.cs +++ b/AideDeJeu/AideDeJeuCmd/Program.cs @@ -17,8 +17,62 @@ namespace AideDeJeuCmd { class Program { + static string MD; + static void DumpParagraphBlock(Markdig.Syntax.ParagraphBlock block) + { + //if (block.Lines != null) + //{ + // foreach (var line in block.Lines) + // { + // var stringline = line as Markdig.Helpers.StringLine?; + // Console.WriteLine(stringline.ToString()); + // } + //} + } + static void DumpListBlock(Markdig.Syntax.ListBlock block) + { + + } + static void DumpHeadingBlock(Markdig.Syntax.HeadingBlock block) + { + + } + static void DumpBlock(Markdig.Syntax.Block block) + { + Console.WriteLine(block.Column); + Console.WriteLine(block.IsBreakable); + Console.WriteLine(block.IsOpen); + Console.WriteLine(block.Line); + Console.WriteLine(block.RemoveAfterProcessInlines); + Console.WriteLine(block.Span.ToString()); + Console.WriteLine(MD.Substring(block.Span.Start, block.Span.Length)); + Console.WriteLine(block.ToString()); + if(block is Markdig.Syntax.ParagraphBlock) + { + DumpParagraphBlock(block as Markdig.Syntax.ParagraphBlock); + } + if(block is Markdig.Syntax.ListBlock) + { + DumpListBlock(block as Markdig.Syntax.ListBlock); + } + if (block is Markdig.Syntax.HeadingBlock) + { + DumpHeadingBlock(block as Markdig.Syntax.HeadingBlock); + } + } + static void DumpMarkdownDocument(Markdig.Syntax.MarkdownDocument document) + { + foreach (var block in document) + { + DumpBlock(block); + } + } static async Task Main(string[] args) { + MD = await new StreamReader(@"..\..\..\..\..\Data\spells_hd.md").ReadToEndAsync(); + var document = Markdig.Parsers.MarkdownParser.Parse(MD); + DumpMarkdownDocument(document); + return; string dataDir = @"..\..\..\..\..\Data\"; //string ignoreDir = @"..\..\..\..\..\Ignore\"; //var documentsDirectoryPath = @"database.db"; // Windows.Storage.ApplicationData.Current.LocalFolder.Path; diff --git a/Data/spells_hd.md b/Data/spells_hd.md new file mode 100644 index 00000000..8b13e5c8 --- /dev/null +++ b/Data/spells_hd.md @@ -0,0 +1,54 @@ +# Agrandir/rétrécir +- AltName: Enlarge/Reduce +- CastingTime: 1 action +- Components: V, S, M (une pincée de limaille de fer) +- Duration: concentration, jusqu’à 1 minute +- LevelType: Transmutation de niveau 2 +- Range: 9 mètres +- Source: (HD)(SRD) +- Classes: Ensorceleur ; Magicien ; + +### Description + +Vous agrandissez ou rétrécissez une créature ou un objet situé à portée et dans votre champ de vision pendant toute la durée du sort. +Choisissez soit une créature, soit un objet qui n’est ni porté ni transporté. +Si la cible n’est pas consentante, elle a droit à un jet de sauvegarde de Constitution. +Si elle le réussit, le sort est sans effet. + +Si la cible est une créature, tout ce qu’elle porte et tout ce qu’elle transporte change de taille avec elle. +En revanche, si elle lâche un objet, il reprend sa taille normale sur-le-champ. + +**_Agrandir._** +La cible double dans toutes les dimensions, et son poids est multiplié par huit. +Cette croissance augmente sa catégorie de taille d’un cran, de M à G par exemple. +Si la cible n’a pas assez de place pour doubler de volume, elle atteint la taille maximale possible dans l’espace dont elle dispose. +Elle bénéficie d’un avantage lors des tests de Force et des jets de sauvegarde de Force jusqu’à la fin du sort. +Les armes de la cible grandissent pour s’adapter à sa nouvelle taille. +Tant qu’elles sont ainsi agrandies, elles infligent 1d4 dégâts de plus. + +**_Rétrécir._** +La cible réduit de moitié dans toutes les dimensions et son poids est divisé par huit. +Ce rétrécissement réduit sa catégorie de taille d’un cran, de M à P par exemple. +La cible subit un désavantage lors des tests de Force et des jets de sauvegarde de Force jusqu’à la fin du sort. +Les armes de la cible rétrécissent pour s’adapter à sa nouvelle taille. +Tant qu’elles sont ainsi réduites, elles infligent 1d4 dégâts de moins (avec un minimum de 1 dégât). + + +# Aide +- AltName: Aid +- CastingTime: 1 action +- Components: V, S, M (une minuscule bandelette de tissu blanc) +- Duration: 8 heures +- LevelType: Abjuration de niveau 2 +- Range: 9 mètres +- Source: (HD)(SRD) +- Classes: Clerc, Paladin + +### Description + +Le sort renforce vos alliés, qui deviennent plus robustes et plus résolus. +Choisissez jusqu’à trois créatures à portée. +Le maximum de points de vie et les points de vie actuels de chacune d’entre elles augmentent de 5 pendant toute la durée du sort. + +**_À plus haut niveau._** +Quand vous lancez ce sort en utilisant un emplacement de niveau 3 ou supérieur, les points de vie de chaque cible augmentent de 5 points supplémentaires pour chaque niveau au-delà du niveau 2.