mirror of
				https://github.com/Nioux/AideDeJeu.git
				synced 2025-10-31 15:36:07 +00:00 
			
		
		
		
	Amélioration parsing
This commit is contained in:
		
							parent
							
								
									36a43fe7b6
								
							
						
					
					
						commit
						0fa553c9d2
					
				
					 1 changed files with 47 additions and 141 deletions
				
			
		|  | @ -167,7 +167,7 @@ namespace AideDeJeu.Tools | |||
|             List<string> legendaryActions = null; | ||||
|             foreach (var block in document) | ||||
|             { | ||||
|                 Debug.WriteLine(block.GetType()); | ||||
|                 //Debug.WriteLine(block.GetType()); | ||||
|                 //DumpBlock(block); | ||||
|                 if (block is Markdig.Syntax.HeadingBlock) | ||||
|                 { | ||||
|  | @ -241,150 +241,56 @@ namespace AideDeJeu.Tools | |||
|                                         var paragraphBlock = ininblock as Markdig.Syntax.ParagraphBlock; | ||||
|                                         //DumpParagraphBlock(paragraphBlock); | ||||
|                                         var str = paragraphBlock.Inline.ToContainerString(); | ||||
|                                         //var match = regex.Match(str); | ||||
|                                         //var key = match.Groups["key"].Value; | ||||
|                                         //var value = match.Groups["value"].Value; | ||||
|                                         //switch (key) | ||||
|                                         //{ | ||||
|                                             //case "NameVO": | ||||
|                                             //    monster.NameVO = value; | ||||
|                                             //    break; | ||||
|                                             //case "SizeAlignment": | ||||
|                                         if(str.StartsWith("Classe d'armure ")) | ||||
| 
 | ||||
|                                         var properties = new List<Tuple<string, Action<Monster, string>>>() | ||||
|                                         { | ||||
|                                             monster.ArmorClass = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Points de vie ")) | ||||
|                                             new Tuple<string, Action<Monster, string>>("Classe d'armure ", (m, s) => m.ArmorClass = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Points de vie ", (m, s) => m.HitPoints = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Vitesse ", (m, s) => m.Speed = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Résistance aux dégâts ", (m, s) => m.DamageResistances = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Résistances aux dégâts ", (m, s) => m.DamageResistances = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Résistance contre les dégâts ", (m, s) => m.DamageResistances = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Résistances contre les dégâts ", (m, s) => m.DamageResistances = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Immunité contre les dégâts ", (m, s) => m.DamageImmunities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Immunité contre des dégâts ", (m, s) => m.DamageImmunities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Immunité aux dégâts ", (m, s) => m.DamageImmunities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Immunité à l'état ", (m, s) => m.ConditionImmunities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Immunités à l'état ", (m, s) => m.ConditionImmunities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Immunité contre l'état ", (m, s) => m.ConditionImmunities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Immunité contre les états ", (m, s) => m.ConditionImmunities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Immunités contre les états ", (m, s) => m.ConditionImmunities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Vulnérabilité ", (m, s) => m.DamageVulnerabilities = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Sens ", (m, s) => m.Senses = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Langue ", (m, s) => m.Languages = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Dangerosité ", (m, s) => m.Challenge = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Jets de sauvegarde ", (m, s) => m.Challenge = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Jet de sauvegarde ", (m, s) => m.Challenge = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Compétences ", (m, s) => m.Skills = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Compétence ", (m, s) => m.Skills = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("Langues ", (m, s) => m.Languages = s), | ||||
|                                             new Tuple<string, Action<Monster, string>>("", (m,s) => | ||||
|                                             { | ||||
|                                             monster.HitPoints = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Vitesse ")) | ||||
|                                                 if (m.Alignment != null) | ||||
|                                                 { | ||||
|                                             monster.Speed = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Résistance aux dégâts ")) | ||||
|                                         { | ||||
|                                             monster.DamageResistances = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Résistances aux dégâts ")) | ||||
|                                         { | ||||
|                                             monster.DamageResistances = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Résistance contre les dégâts ")) | ||||
|                                         { | ||||
|                                             monster.DamageResistances = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Résistances contre les dégâts ")) | ||||
|                                         { | ||||
|                                             monster.DamageResistances = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Immunité contre les dégâts ")) | ||||
|                                         { | ||||
|                                             monster.DamageImmunities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Immunité contre des dégâts ")) | ||||
|                                         { | ||||
|                                             monster.DamageImmunities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Immunité aux dégâts ")) | ||||
|                                         { | ||||
|                                             monster.DamageImmunities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Immunité à l'état ")) | ||||
|                                         { | ||||
|                                             monster.ConditionImmunities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Immunités à l'état ")) | ||||
|                                         { | ||||
|                                             monster.ConditionImmunities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Immunité contre l'état ")) | ||||
|                                         { | ||||
|                                             monster.ConditionImmunities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Immunité contre les états ")) | ||||
|                                         { | ||||
|                                             monster.ConditionImmunities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Immunités contre les états ")) | ||||
|                                         { | ||||
|                                             monster.ConditionImmunities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Vulnérabilité ")) | ||||
|                                         { | ||||
|                                             monster.DamageVulnerabilities = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Sens ")) | ||||
|                                         { | ||||
|                                             monster.Senses = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Langue ")) | ||||
|                                         { | ||||
|                                             monster.Languages = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Dangerosité ")) | ||||
|                                         { | ||||
|                                             monster.Challenge = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Jets de sauvegarde ")) | ||||
|                                         { | ||||
|                                             monster.Challenge = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Jet de sauvegarde ")) | ||||
|                                         { | ||||
|                                             monster.Challenge = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Compétences ")) | ||||
|                                         { | ||||
|                                             monster.Skills = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Compétence ")) | ||||
|                                         { | ||||
|                                             monster.Skills = str; | ||||
|                                         } | ||||
|                                         else if (str.StartsWith("Langues ")) | ||||
|                                         { | ||||
|                                             monster.Languages = str; | ||||
|                                         } | ||||
|                                         else | ||||
|                                         { | ||||
|                                             if (monster.Alignment != null) | ||||
|                                             { | ||||
|                                                 App.Current.MainPage.DisplayAlert("Erreur de parsing", str, "OK"); | ||||
|                                                     App.Current.MainPage.DisplayAlert("Erreur de parsing", s, "OK"); | ||||
|                                                 } | ||||
|                                                 //Debug.Assert(monster.Alignment == null, str); | ||||
|                                                 var regexx = new Regex("(?<type>.*) de taille (?<size>.*), (?<alignment>.*)"); | ||||
|                                             var matchh = regexx.Match(str); | ||||
|                                             monster.Alignment = matchh.Groups["alignment"].Value; | ||||
|                                             monster.Size = matchh.Groups["size"].Value; | ||||
|                                             monster.Type = matchh.Groups["type"].Value; | ||||
|                                                 var matchh = regexx.Match(s); | ||||
|                                                 m.Alignment = matchh.Groups["alignment"].Value; | ||||
|                                                 m.Size = matchh.Groups["size"].Value; | ||||
|                                                 m.Type = matchh.Groups["type"].Value; | ||||
|                                             }) | ||||
|                                         }; | ||||
| 
 | ||||
|                                         foreach(var property in properties) | ||||
|                                         { | ||||
|                                             if(str.StartsWith(property.Item1)) | ||||
|                                             { | ||||
|                                                 property.Item2.Invoke(monster, str.Substring(property.Item1.Length)); | ||||
|                                                 break; | ||||
|                                             } | ||||
|                                         } | ||||
|                                                 //break; | ||||
|                                         //    if(str.st "ArmorClass": | ||||
|                                         //        monster.ArmorClass = value; | ||||
|                                         //        break; | ||||
|                                         //    case "HitPoints": | ||||
|                                         //        monster.HitPoints = value; | ||||
|                                         //        break; | ||||
|                                         //    case "Speed": | ||||
|                                         //        monster.Speed = value; | ||||
|                                         //        break; | ||||
|                                         //    case "SavingThrows": | ||||
|                                         //        monster.SavingThrows = value; | ||||
|                                         //        break; | ||||
|                                         //    case "Skills": | ||||
|                                         //        monster.Skills = value ; | ||||
|                                         //        break; | ||||
|                                         //    case "Senses": | ||||
|                                         //        monster.Senses = value; | ||||
|                                         //        break; | ||||
|                                         //    case "Languages": | ||||
|                                         //        monster.Languages = value; | ||||
|                                         //        break; | ||||
|                                         //    case "Challenge": | ||||
|                                         //        monster.Challenge = value; | ||||
|                                         //        break; | ||||
|                                         //} | ||||
|                                     } | ||||
|                                 } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Yan Maniez
						Yan Maniez