mirror of
https://github.com/Nioux/AideDeJeu.git
synced 2025-10-30 15:06:06 +00:00
Parsing table ok
This commit is contained in:
parent
32931b71df
commit
1e48b89ca5
2 changed files with 42 additions and 16 deletions
|
|
@ -262,21 +262,14 @@ namespace AideDeJeu.Tools
|
|||
}
|
||||
else if(block is Markdig.Extensions.Tables.Table)
|
||||
{
|
||||
var table = block as Markdig.Extensions.Tables.Table;
|
||||
foreach(var blockrow in table)
|
||||
{
|
||||
var row = blockrow as Markdig.Extensions.Tables.TableRow;
|
||||
foreach(var blockcell in row)
|
||||
{
|
||||
var cell = blockcell as Markdig.Extensions.Tables.TableCell;
|
||||
foreach(var blockpar in cell)
|
||||
{
|
||||
var par = blockpar as Markdig.Syntax.ParagraphBlock;
|
||||
Debug.WriteLine(par.ToParagraphString());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
var tableBlock = block as Markdig.Extensions.Tables.Table;
|
||||
var table = tableBlock.ToTable();
|
||||
monster.Strength = table["FOR"].FirstOrDefault();
|
||||
monster.Dexterity = table["DEX"].FirstOrDefault();
|
||||
monster.Constitution = table["CON"].FirstOrDefault();
|
||||
monster.Intelligence = table["INT"].FirstOrDefault();
|
||||
monster.Wisdom = table["SAG"].FirstOrDefault();
|
||||
monster.Charisma = table["CHA"].FirstOrDefault();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -342,6 +335,37 @@ namespace AideDeJeu.Tools
|
|||
return str;
|
||||
}
|
||||
|
||||
public static Dictionary<string, List<string>> ToTable(this Markdig.Extensions.Tables.Table tableBlock)
|
||||
{
|
||||
var table = new Dictionary<string, List<string>>();
|
||||
var indexes = new Dictionary<int, string>();
|
||||
foreach (var blockrow in tableBlock)
|
||||
{
|
||||
var row = blockrow as Markdig.Extensions.Tables.TableRow;
|
||||
int indexCol = 0;
|
||||
foreach (var blockcell in row)
|
||||
{
|
||||
var cell = blockcell as Markdig.Extensions.Tables.TableCell;
|
||||
foreach (var blockpar in cell)
|
||||
{
|
||||
var par = blockpar as Markdig.Syntax.ParagraphBlock;
|
||||
var name = par.ToParagraphString().Trim();
|
||||
if (row.IsHeader)
|
||||
{
|
||||
indexes[indexCol] = name;
|
||||
table[name] = new List<string>();
|
||||
}
|
||||
else
|
||||
{
|
||||
table[indexes[indexCol]].Add(name);
|
||||
}
|
||||
}
|
||||
indexCol++;
|
||||
}
|
||||
}
|
||||
return table;
|
||||
}
|
||||
|
||||
public static string ToMarkdownString(this IEnumerable<Spell> spells)
|
||||
{
|
||||
var md = string.Empty;
|
||||
|
|
|
|||
|
|
@ -80,7 +80,9 @@ Touché : 11 (2d8+3) dégâts contondants (constriction).
|
|||
|
||||
Si la cible est une créature de taille M ou plus petite, elle est empoignée (évasion DD 14). L'abothid a deux tentacules dont chacun peut empoigner une cible.
|
||||
|
||||
**_Dard de langue._** Attaque d'arme au corps à corps (basée sur la Dextérité) : +7 pour toucher, allonge 1,50 m, une cible. Touché : 6 (1d6+2) dégâts perçants.
|
||||
**_Dard de langue._** Attaque d'arme au corps à corps (basée sur la Dextérité) : +7 pour toucher, allonge 1,50 m, une cible.
|
||||
|
||||
Touché : 6 (1d6+2) dégâts perçants.
|
||||
|
||||
Si la cible est une créature humanoïde, elle doit réussir un jet de sauvegarde de Constitution (DD 14) sous peine d'être infectée par une maladie : l'injection d'un minuscule œuf d'abothid.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue