mirror of
				https://github.com/Nioux/AideDeJeu.git
				synced 2025-10-30 23:16:09 +00:00 
			
		
		
		
	Correction liens
This commit is contained in:
		
							parent
							
								
									f98881b33a
								
							
						
					
					
						commit
						192dbabbd6
					
				
					 3 changed files with 113 additions and 42 deletions
				
			
		|  | @ -23,6 +23,11 @@ namespace AideDeJeu.Tools | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         public static IEnumerable<string> GetResourceNames() | ||||||
|  |         { | ||||||
|  |             var assembly = typeof(Helpers).GetTypeInfo().Assembly; | ||||||
|  |             return assembly.GetManifestResourceNames(); | ||||||
|  |         } | ||||||
|         public static async Task<string> GetResourceStringAsync(string resourceName) |         public static async Task<string> GetResourceStringAsync(string resourceName) | ||||||
|         { |         { | ||||||
|             var assembly = typeof(Helpers).GetTypeInfo().Assembly; |             var assembly = typeof(Helpers).GetTypeInfo().Assembly; | ||||||
|  |  | ||||||
|  | @ -120,10 +120,91 @@ namespace AideDeJeuCmd | ||||||
|             await SaveStringAsync(dataDir + "spells_hd_by_class_level.md", result); |             await SaveStringAsync(dataDir + "spells_hd_by_class_level.md", result); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         static async Task<IEnumerable<string>> GetAllAnchorsAsync() | ||||||
|  |         { | ||||||
|  |             var anchors = new List<string>(); | ||||||
|  |             var allitems = new Dictionary<string, Item>(); | ||||||
|  |             var names = Helpers.GetResourceNames(); | ||||||
|  |             foreach(var name in names) | ||||||
|  |             { | ||||||
|  |                 if (name.Contains("_hd.")) | ||||||
|  |                 { | ||||||
|  |                     var md = await Helpers.GetResourceStringAsync(name); | ||||||
|  |                     var item = AideDeJeu.Tools.MarkdownExtensions.ToItem(md); | ||||||
|  |                     allitems.Add(name, item); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             foreach(var allitem in allitems) | ||||||
|  |             { | ||||||
|  |                 if (allitem.Value is Items) | ||||||
|  |                 { | ||||||
|  |                     var items = allitem.Value as Items; | ||||||
|  |                     foreach (var item in items) | ||||||
|  |                     { | ||||||
|  |                         if (!string.IsNullOrWhiteSpace(item.Name)) | ||||||
|  |                         { | ||||||
|  |                             //Console.WriteLine(item.Name); | ||||||
|  |                             anchors.Add(item.Name); | ||||||
|  |                         } | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |                 else if(allitem.Value != null) | ||||||
|  |                 { | ||||||
|  |                     if (!string.IsNullOrWhiteSpace(allitem.Value.Name)) | ||||||
|  |                     { | ||||||
|  |                         //Console.WriteLine(allitem.Value.Name); | ||||||
|  |                         anchors.Add(allitem.Value.Name); | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             return anchors; | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         static async Task SearchAsync(string anchor) | ||||||
|  |         { | ||||||
|  |             var first = true; | ||||||
|  |             var names = Helpers.GetResourceNames(); | ||||||
|  |             foreach (var name in names) | ||||||
|  |             { | ||||||
|  |                 var md = await Helpers.GetResourceStringAsync(name); | ||||||
|  |                 using (var reader = new StringReader(md)) | ||||||
|  |                 { | ||||||
|  |                     var line = await reader.ReadLineAsync(); | ||||||
|  |                     while (line != null) | ||||||
|  |                     { | ||||||
|  |                         if (line.FirstOrDefault() != '#' &&  | ||||||
|  |                             !line.StartsWith("- AltName") && | ||||||
|  |                             line.Contains(anchor) &&  | ||||||
|  |                             !line.Contains($"[{anchor}") && | ||||||
|  |                             !line.Contains($"{anchor}]") | ||||||
|  |                             ) | ||||||
|  |                         { | ||||||
|  |                             if (first) | ||||||
|  |                             { | ||||||
|  |                                 first = false; | ||||||
|  |                                 Console.WriteLine(); | ||||||
|  |                                 Console.WriteLine(anchor); | ||||||
|  |                                 Console.WriteLine(); | ||||||
|  |                             } | ||||||
|  |                             Console.WriteLine(line); | ||||||
|  |                             Console.WriteLine(); | ||||||
|  |                         } | ||||||
|  |                         line = await reader.ReadLineAsync(); | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             //Console.WriteLine(); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         static async Task Main(string[] args) |         static async Task Main(string[] args) | ||||||
|         { |         { | ||||||
|             string dataDir = @"..\..\..\..\..\Data\"; |             string dataDir = @"..\..\..\..\..\Data\"; | ||||||
|             await CheckAllLinks(); |             await CheckAllLinks(); | ||||||
|  |             //var anchors = await GetAllAnchorsAsync(); | ||||||
|  |             //foreach(var anchor in anchors) | ||||||
|  |             //{ | ||||||
|  |             //    await SearchAsync(anchor); | ||||||
|  |             //} | ||||||
|             return; |             return; | ||||||
|             var mdVO = await LoadStringAsync(dataDir + "monsters_vo.md"); |             var mdVO = await LoadStringAsync(dataDir + "monsters_vo.md"); | ||||||
|             var mdVF = await LoadStringAsync(dataDir + "monsters_hd.md"); |             var mdVF = await LoadStringAsync(dataDir + "monsters_hd.md"); | ||||||
|  | @ -169,28 +250,23 @@ namespace AideDeJeuCmd | ||||||
|         { |         { | ||||||
|             string dataDir = @"..\..\..\..\..\Data\"; |             string dataDir = @"..\..\..\..\..\Data\"; | ||||||
| 
 | 
 | ||||||
|             var mdMonstersVO = await LoadStringAsync(dataDir + "monsters_vo.md"); |             var allmds = new Dictionary<string, string>(); | ||||||
|             var mdMonstersHD = await LoadStringAsync(dataDir + "monsters_hd.md"); |  | ||||||
|             var mdSpellsVO = await LoadStringAsync(dataDir + "spells_vo.md"); |  | ||||||
|             var mdSpellsHD = await LoadStringAsync(dataDir + "spells_hd.md"); |  | ||||||
|             var mdConditionsVO = await LoadStringAsync(dataDir + "conditions_vo.md"); |  | ||||||
|             var mdConditionsHD = await LoadStringAsync(dataDir + "conditions_hd.md"); |  | ||||||
| 
 |  | ||||||
|             var allanchors = new Dictionary<string, IEnumerable<string>>(); |             var allanchors = new Dictionary<string, IEnumerable<string>>(); | ||||||
|             allanchors.Add("conditions_hd", GetMarkdownAnchors(mdConditionsHD).ToList()); |  | ||||||
|             allanchors.Add("conditions_vo", GetMarkdownAnchors(mdConditionsVO)); |  | ||||||
|             allanchors.Add("spells_hd", GetMarkdownAnchors(mdSpellsHD)); |  | ||||||
|             allanchors.Add("spells_vo", GetMarkdownAnchors(mdSpellsVO)); |  | ||||||
|             allanchors.Add("monsters_hd", GetMarkdownAnchors(mdMonstersHD)); |  | ||||||
|             allanchors.Add("monsters_vo", GetMarkdownAnchors(mdMonstersVO)); |  | ||||||
| 
 |  | ||||||
|             var alllinks = new Dictionary<string, IEnumerable<Tuple<string, string>>>(); |             var alllinks = new Dictionary<string, IEnumerable<Tuple<string, string>>>(); | ||||||
|             alllinks.Add("spells_hd", GetMarkdownLinks(mdSpellsHD)); |             var allnames = new Dictionary<string, IEnumerable<string>>(); | ||||||
|             alllinks.Add("spells_vo", GetMarkdownLinks(mdSpellsVO)); |             var resnames = Helpers.GetResourceNames(); | ||||||
|             alllinks.Add("monsters_hd", GetMarkdownLinks(mdMonstersHD)); |             foreach (var resname in resnames) | ||||||
|             alllinks.Add("monsters_vo", GetMarkdownLinks(mdMonstersVO)); |             { | ||||||
|             alllinks.Add("conditions_hd", GetMarkdownLinks(mdConditionsHD)); |                 if (resname.Contains(".md")) | ||||||
|             alllinks.Add("conditions_vo", GetMarkdownLinks(mdConditionsVO)); |                 { | ||||||
|  |                     var name = resname.Substring(15, resname.Length - 18); | ||||||
|  |                     var md = await Helpers.GetResourceStringAsync(resname); | ||||||
|  |                     allmds.Add(name, md); | ||||||
|  |                     allanchors.Add(name, GetMarkdownAnchors(md).ToList()); | ||||||
|  |                     alllinks.Add(name, GetMarkdownLinks(md)); | ||||||
|  |                     allnames.Add(name, GetMarkdownAnchorNames(md)); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
| 
 | 
 | ||||||
|             foreach (var links in alllinks) |             foreach (var links in alllinks) | ||||||
|             { |             { | ||||||
|  | @ -205,26 +281,16 @@ namespace AideDeJeuCmd | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
| 
 | 
 | ||||||
|             var allnames = new Dictionary<string, IEnumerable<string>>(); |             //foreach (var names in allnames) | ||||||
|             allnames.Add("conditions_hd", GetMarkdownAnchorNames(mdConditionsHD)); |             //{ | ||||||
|             allnames.Add("conditions_vo", GetMarkdownAnchorNames(mdConditionsVO)); |             //    foreach (var name in names.Value) | ||||||
|             allnames.Add("spells_hd", GetMarkdownAnchorNames(mdSpellsHD)); |             //    { | ||||||
|             allnames.Add("spells_vo", GetMarkdownAnchorNames(mdSpellsVO)); |             //        foreach(var mdkv in allmds) | ||||||
|             allnames.Add("monsters_hd", GetMarkdownAnchorNames(mdMonstersHD)); |             //        { | ||||||
|             allnames.Add("monsters_vo", GetMarkdownAnchorNames(mdMonstersVO)); |             //            FindName(mdkv.Value, name); | ||||||
| 
 |             //        } | ||||||
|             foreach (var names in allnames) |             //    } | ||||||
|             { |             //} | ||||||
|                 foreach (var name in names.Value) |  | ||||||
|                 { |  | ||||||
|                     FindName(mdSpellsHD, name); |  | ||||||
|                     FindName(mdSpellsVO, name); |  | ||||||
|                     FindName(mdMonstersHD, name); |  | ||||||
|                     FindName(mdMonstersVO, name); |  | ||||||
|                     FindName(mdConditionsHD, name); |  | ||||||
|                     FindName(mdConditionsVO, name); |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         public static void FindName(string md, string name) |         public static void FindName(string md, string name) | ||||||
|  | @ -267,7 +333,7 @@ namespace AideDeJeuCmd | ||||||
| 
 | 
 | ||||||
|         public static IEnumerable<string> GetMarkdownAnchorNames(string md) |         public static IEnumerable<string> GetMarkdownAnchorNames(string md) | ||||||
|         { |         { | ||||||
|             var regex = new Regex($"\\n# (?<name>.*?)\\n"); |             var regex = new Regex($"\\n##? (?<name>.*?)\\n"); | ||||||
|             var matches = regex.Matches(md); |             var matches = regex.Matches(md); | ||||||
|             foreach (Match match in matches) |             foreach (Match match in matches) | ||||||
|             { |             { | ||||||
|  |  | ||||||
|  | @ -9396,7 +9396,7 @@ Une créature affectée est consciente du sort qui la limite et peut donc soigne | ||||||
| [Guerrier]: fighter_hd.md | [Guerrier]: fighter_hd.md | ||||||
| [Magicien]: wizard_hd.md | [Magicien]: wizard_hd.md | ||||||
| [Moine]: monk_hd.md | [Moine]: monk_hd.md | ||||||
| [Ombrelame]: rogue_hd.md#ombrelame | [Ombrelame]: rogue_ombrelame_hd.md | ||||||
| [Paladin]: paladin_hd.md | [Paladin]: paladin_hd.md | ||||||
| [Rôdeur]: ranger_hd.md | [Rôdeur]: ranger_hd.md | ||||||
| [Roublard]: rogue_hd.md | [Roublard]: rogue_hd.md | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Yan Maniez
						Yan Maniez