1
0
Fork 0
mirror of https://github.com/Nioux/AideDeJeu.git synced 2025-10-30 15:06:06 +00:00

Index md des sorts par classe / level

This commit is contained in:
Yan Maniez 2018-06-23 23:56:13 +02:00
parent 87516d6672
commit 38bcfd0f91
3 changed files with 1126 additions and 10 deletions

View file

@ -32,7 +32,7 @@ namespace AideDeJeuCmd
var spellss = document.ToSpells(); var spellss = document.ToSpells();
Console.WriteLine("ok"); Console.WriteLine("ok");
var md2 = spellss.ToMarkdownString(); var md2 = spellss.ToMarkdownString();
if(md.CompareTo(md2) != 0) if (md.CompareTo(md2) != 0)
{ {
Debug.WriteLine("failed"); Debug.WriteLine("failed");
} }
@ -73,10 +73,62 @@ namespace AideDeJeuCmd
//var monstersVF = LoadJSon<IEnumerable<Monster>>(dataDir + "monsters_vf_full.json"); //var monstersVF = LoadJSon<IEnumerable<Monster>>(dataDir + "monsters_vf_full.json");
//var monstersVO = LoadJSon<IEnumerable<Monster>>(dataDir + "monsters_vo_full.json"); //var monstersVO = LoadJSon<IEnumerable<Monster>>(dataDir + "monsters_vo_full.json");
var monstersVOmd = await LoadStringAsync(dataDir + "monsters_vo.md"); var result = string.Empty;
var regex = new Regex("(\\[[a-z].*?\\])"); var md = await LoadStringAsync(dataDir + "spells_hd.md");
var matches = regex.Matches(monstersVOmd); var items = AideDeJeu.Tools.MarkdownExtensions.MarkdownToSpells(md);
var links = matches.OrderBy(m => m.Value).Select(m => m.Value + string.Format(": spells_vo.md#{0}", m.Value.Replace("[", "").Replace("]","").Replace(" ","-"))).Distinct().ToList().Aggregate((a, b) => a + "\r\n" + b);
var classes = new string[]
{
"Barde",
"Clerc",
"Druide",
"Ensorceleur",
"Magicien",
"Paladin",
"Rôdeur",
"Sorcier"
};
var levels = new string[]
{
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
//"tour de magie",
//"niveau 1",
//"niveau 2",
//"niveau 3",
//"niveau 4",
//"niveau 5",
//"niveau 6",
//"niveau 7",
//"niveau 8",
//"niveau 9"
};
foreach (var classe in classes)
{
result += string.Format("## {0}\r\n\r\n", classe);
foreach (var level in levels)
{
var spells = items.Where(s => s.Level == level && s.Source.Contains(classe)).OrderBy(s => s.Name).Select(s => string.Format("* [{0}](spells_hd.md#{1})", s.Name, Helpers.IdFromName(s.Name))).ToList();
if (spells.Count > 0)
{
result += string.Format("### {0}\r\n\r\n", level == "0" ? "Tours de magie" : "Niveau " + level);
result += spells.Aggregate((s1, s2) => s1 + "\r\n" + s2);
result += "\r\n\r\n";
}
}
}
await SaveStringAsync(dataDir + "spells_hd_by_class_level.md", result);
//var regex = new Regex("(\\[[a-z].*?\\])");
//var matches = regex.Matches(monstersVOmd);
//var links = matches.OrderBy(m => m.Value).Select(m => m.Value + string.Format(": spells_vo.md#{0}", m.Value.Replace("[", "").Replace("]","").Replace(" ","-"))).Distinct().ToList().Aggregate((a, b) => a + "\r\n" + b);
return; return;
//var mdhd = spellsHD.ToMarkdownString(); //var mdhd = spellsHD.ToMarkdownString();
@ -538,7 +590,7 @@ namespace AideDeJeuCmd
var line = await stream.ReadLineAsync(); var line = await stream.ReadLineAsync();
while (line != null) while (line != null)
{ {
if(!string.IsNullOrEmpty(line)) if (!string.IsNullOrEmpty(line))
{ {
lines.Add(line); lines.Add(line);
} }

View file

@ -2,6 +2,8 @@
## [Sorts VF](spells_hd.md) ## [Sorts VF](spells_hd.md)
### [triés par classe / niveau](spells_hd_by_class_level.md)
## [Créatures VF](monsters_hd.md) ## [Créatures VF](monsters_hd.md)
## [Spells VO](spells_vo.md) ## [Spells VO](spells_vo.md)

File diff suppressed because it is too large Load diff