mirror of
https://github.com/Nioux/AideDeJeu.git
synced 2025-10-30 15:06:06 +00:00
Spells nouvelle formule
This commit is contained in:
parent
6bb3737b1f
commit
d464657423
6 changed files with 4369 additions and 3631 deletions
|
|
@ -15,7 +15,7 @@ namespace AideDeJeuLib
|
||||||
public string Level { get; set; }
|
public string Level { get; set; }
|
||||||
public string Type { get; set; }
|
public string Type { get; set; }
|
||||||
public string Concentration { get; set; }
|
public string Concentration { get; set; }
|
||||||
public string Rituel { get; set; }
|
public string Ritual { get; set; }
|
||||||
public string CastingTime { get; set; }
|
public string CastingTime { get; set; }
|
||||||
public string Range { get; set; }
|
public string Range { get; set; }
|
||||||
public string Components { get; set; }
|
public string Components { get; set; }
|
||||||
|
|
|
||||||
|
|
@ -17,13 +17,13 @@ namespace AideDeJeuLib
|
||||||
{
|
{
|
||||||
if (int.Parse(Level) > 0)
|
if (int.Parse(Level) > 0)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrEmpty(Rituel))
|
if (string.IsNullOrEmpty(Ritual))
|
||||||
{
|
{
|
||||||
return $"{Type} de niveau {Level}";
|
return $"{Type} de niveau {Level}";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return $"{Type} de niveau {Level} {Rituel}";
|
return $"{Type} de niveau {Level} {Ritual}";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
@ -37,7 +37,7 @@ namespace AideDeJeuLib
|
||||||
var match = re.Match(value);
|
var match = re.Match(value);
|
||||||
this.Type = match.Groups["type"].Value;
|
this.Type = match.Groups["type"].Value;
|
||||||
this.Level = match.Groups["level"].Value;
|
this.Level = match.Groups["level"].Value;
|
||||||
this.Rituel = match.Groups["rituel"].Value;
|
this.Ritual = match.Groups["rituel"].Value;
|
||||||
if (string.IsNullOrEmpty(this.Type))
|
if (string.IsNullOrEmpty(this.Type))
|
||||||
{
|
{
|
||||||
re = new Regex("(?<type>.*), (?<level>tour de magie)");
|
re = new Regex("(?<type>.*), (?<level>tour de magie)");
|
||||||
|
|
@ -46,7 +46,7 @@ namespace AideDeJeuLib
|
||||||
{
|
{
|
||||||
this.Type = match.Groups["type"].Value;
|
this.Type = match.Groups["type"].Value;
|
||||||
this.Level = "0"; // match.Groups["level"].Value;
|
this.Level = "0"; // match.Groups["level"].Value;
|
||||||
this.Rituel = match.Groups["rituel"].Value;
|
this.Ritual = match.Groups["rituel"].Value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,13 +13,13 @@ namespace AideDeJeuLib
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
if (string.IsNullOrEmpty(Rituel))
|
if (string.IsNullOrEmpty(Ritual))
|
||||||
{
|
{
|
||||||
return $"Level {Level} - {Type}";
|
return $"Level {Level} - {Type}";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return $"Level {Level} - {Type} {Rituel}";
|
return $"Level {Level} - {Type} {Ritual}";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
set
|
set
|
||||||
|
|
@ -28,7 +28,7 @@ namespace AideDeJeuLib
|
||||||
var match = re.Match(value);
|
var match = re.Match(value);
|
||||||
this.Type = match.Groups["type"].Value;
|
this.Type = match.Groups["type"].Value;
|
||||||
this.Level = match.Groups["level"].Value;
|
this.Level = match.Groups["level"].Value;
|
||||||
this.Rituel = match.Groups["rituel"].Value;
|
this.Ritual = match.Groups["rituel"].Value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,22 @@ namespace AideDeJeu.Tools
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class LevelComparer : Comparer<string>
|
||||||
|
{
|
||||||
|
public override int Compare(string x, string y)
|
||||||
|
{
|
||||||
|
if (string.IsNullOrEmpty(x) && string.IsNullOrEmpty(y)) return 0;
|
||||||
|
if (string.IsNullOrEmpty(x)) return 1;
|
||||||
|
if (string.IsNullOrEmpty(y)) return -1;
|
||||||
|
|
||||||
|
int ix = 0;
|
||||||
|
int.TryParse(x, out ix);
|
||||||
|
int iy = 0;
|
||||||
|
int.TryParse(y, out iy);
|
||||||
|
return ix - iy;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public class PriceComparer : Comparer<string>
|
public class PriceComparer : Comparer<string>
|
||||||
{
|
{
|
||||||
int ToCopperPieces(string price)
|
int ToCopperPieces(string price)
|
||||||
|
|
|
||||||
|
|
@ -179,6 +179,7 @@ namespace AideDeJeu.ViewModels
|
||||||
{
|
{
|
||||||
return await Task.Run(() =>
|
return await Task.Run(() =>
|
||||||
{
|
{
|
||||||
|
var levelComparer = new LevelComparer();
|
||||||
var classe = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.Class).SelectedKey ?? "";
|
var classe = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.Class).SelectedKey ?? "";
|
||||||
var niveauMin = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.MinLevel).SelectedKey ?? "0";
|
var niveauMin = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.MinLevel).SelectedKey ?? "0";
|
||||||
var niveauMax = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.MaxLevel).SelectedKey ?? "9";
|
var niveauMax = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.MaxLevel).SelectedKey ?? "9";
|
||||||
|
|
@ -189,12 +190,13 @@ namespace AideDeJeu.ViewModels
|
||||||
return items.Where(item =>
|
return items.Where(item =>
|
||||||
{
|
{
|
||||||
var spell = item as Spell;
|
var spell = item as Spell;
|
||||||
return (int.Parse(spell.Level) >= int.Parse(niveauMin)) &&
|
return
|
||||||
(int.Parse(spell.Level) <= int.Parse(niveauMax)) &&
|
levelComparer.Compare(spell.Level, niveauMin) >= 0 &&
|
||||||
|
levelComparer.Compare(spell.Level, niveauMax) <= 0 &&
|
||||||
spell.Type.ToLower().Contains(ecole.ToLower()) &&
|
spell.Type.ToLower().Contains(ecole.ToLower()) &&
|
||||||
spell.Source.Contains(source) &&
|
(spell.Source != null && spell.Source.Contains(source)) &&
|
||||||
spell.Classes.Contains(classe) &&
|
(spell.Classes != null && spell.Classes.Contains(classe)) &&
|
||||||
(spell.Rituel == null || spell.Rituel.Contains(rituel)) &&
|
(spell.Ritual != null && spell.Ritual.Contains(rituel)) &&
|
||||||
(
|
(
|
||||||
(Helpers.RemoveDiacritics(spell.Name).ToLower().Contains(Helpers.RemoveDiacritics(SearchText ?? string.Empty).ToLower())) ||
|
(Helpers.RemoveDiacritics(spell.Name).ToLower().Contains(Helpers.RemoveDiacritics(SearchText ?? string.Empty).ToLower())) ||
|
||||||
(Helpers.RemoveDiacritics(spell.AltNameText ?? string.Empty).ToLower().Contains(Helpers.RemoveDiacritics(SearchText ?? string.Empty).ToLower()))
|
(Helpers.RemoveDiacritics(spell.AltNameText ?? string.Empty).ToLower().Contains(Helpers.RemoveDiacritics(SearchText ?? string.Empty).ToLower()))
|
||||||
|
|
@ -262,7 +264,7 @@ namespace AideDeJeu.ViewModels
|
||||||
public override List<KeyValuePair<string, string>> Rituels { get; } = new List<KeyValuePair<string, string>>()
|
public override List<KeyValuePair<string, string>> Rituels { get; } = new List<KeyValuePair<string, string>>()
|
||||||
{
|
{
|
||||||
new KeyValuePair<string, string>("", "Tous"),
|
new KeyValuePair<string, string>("", "Tous"),
|
||||||
new KeyValuePair<string, string>("(rituel)", "Rituel"),
|
new KeyValuePair<string, string>("rituel", "Rituel"),
|
||||||
};
|
};
|
||||||
|
|
||||||
public override List<KeyValuePair<string, string>> Sources { get; } = new List<KeyValuePair<string, string>>()
|
public override List<KeyValuePair<string, string>> Sources { get; } = new List<KeyValuePair<string, string>>()
|
||||||
|
|
@ -374,7 +376,7 @@ namespace AideDeJeu.ViewModels
|
||||||
public override List<KeyValuePair<string, string>> Rituels { get; } = new List<KeyValuePair<string, string>>()
|
public override List<KeyValuePair<string, string>> Rituels { get; } = new List<KeyValuePair<string, string>>()
|
||||||
{
|
{
|
||||||
new KeyValuePair<string, string>("", "Tous"),
|
new KeyValuePair<string, string>("", "Tous"),
|
||||||
new KeyValuePair<string, string>("(rituel)", "Rituel"),
|
new KeyValuePair<string, string>("rituel", "Rituel"),
|
||||||
};
|
};
|
||||||
|
|
||||||
public override List<KeyValuePair<string, string>> Sources { get; } = new List<KeyValuePair<string, string>>()
|
public override List<KeyValuePair<string, string>> Sources { get; } = new List<KeyValuePair<string, string>>()
|
||||||
|
|
|
||||||
7952
Data/spells_hd.md
7952
Data/spells_hd.md
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue