diff --git a/ARKBreedingStats/Form1.library.cs b/ARKBreedingStats/Form1.library.cs index ed5ba1b6..186af542 100644 --- a/ARKBreedingStats/Form1.library.cs +++ b/ARKBreedingStats/Form1.library.cs @@ -14,6 +14,7 @@ using System.Text.RegularExpressions; using ARKBreedingStats.library; using ARKBreedingStats.settings; +using System.Runtime.ConstrainedExecution; namespace ARKBreedingStats { @@ -1311,30 +1312,31 @@ private void FilterLib(bool selectFirstIfNothingIsSelected = false) var statFilterRegex = new Regex(@"(\w{2}) ?(<|>|==) ?(\d+)"); // color filter - var colorFilter = new Dictionary(); - var colorFilterRegex = new Regex(@"c([0-5]): ?([\d ]+)"); + var colorFilterOr = new Dictionary(); // includes creatures that have in one of the regions one of the colors + var colorFilterRegexOr = new Regex(@"c([0-5 ]+): ?([\d ]+)"); // mutation filter var mutationFilterEqualTo = -1; var mutationFilterGreaterThan = -1; var mutationFilterLessThan = -1; - var removeFilterIndex = new List(); + var removeFilterIndex = new List(); // remove all filter entries that are added to specific filter properties + // start at the end, so the removed filter indices are also removed from the end for (var i = filterStrings.Count - 1; i >= 0; i--) { var f = filterStrings[i]; // color region filter - var m = colorFilterRegex.Match(f); + var m = colorFilterRegexOr.Match(f); if (m.Success) { - var colorRegion = int.Parse(m.Groups[1].Value); - if (colorFilter.ContainsKey(colorRegion)) continue; - - var colorIds = m.Groups[2].Value.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).Select(cId => int.Parse(cId)).Distinct().ToArray(); + var colorIds = m.Groups[2].Value.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries) + .Select(int.Parse).Distinct().ToArray(); if (!colorIds.Any()) continue; - colorFilter[colorRegion] = colorIds; + var colorRegions = m.Groups[1].Value.Where(r => r != ' ').Select(r => int.Parse(r.ToString())).ToArray(); + + colorFilterOr[colorRegions] = colorIds; removeFilterIndex.Add(i); continue; } @@ -1382,7 +1384,7 @@ private void FilterLib(bool selectFirstIfNothingIsSelected = false) if (!statGreaterThan.Any()) statGreaterThan = null; if (!statLessThan.Any()) statLessThan = null; if (!statEqualTo.Any()) statEqualTo = null; - if (!colorFilter.Any()) colorFilter = null; + if (!colorFilterOr.Any()) colorFilterOr = null; foreach (var i in removeFilterIndex) filterStrings.RemoveAt(i); @@ -1399,7 +1401,7 @@ private void FilterLib(bool selectFirstIfNothingIsSelected = false) && (statGreaterThan?.All(si => c.levelsWild[si.Key] > si.Value) ?? true) && (statLessThan?.All(si => c.levelsWild[si.Key] < si.Value) ?? true) && (statEqualTo?.All(si => c.levelsWild[si.Key] == si.Value) ?? true) - && (colorFilter?.All(cr => cr.Value.Contains(c.colors[cr.Key])) ?? true) + && (colorFilterOr?.All(colorRegions => colorRegions.Key.Any(colorRegion => colorRegions.Value.Contains(c.colors[colorRegion]))) ?? true) && (mutationFilterGreaterThan == -1 || mutationFilterGreaterThan < c.Mutations) && (mutationFilterLessThan == -1 || mutationFilterLessThan > c.Mutations) && (mutationFilterEqualTo == -1 || mutationFilterEqualTo == c.Mutations) diff --git a/ARKBreedingStats/local/strings.de.resx b/ARKBreedingStats/local/strings.de.resx index 123b1f85..9590615a 100644 --- a/ARKBreedingStats/local/strings.de.resx +++ b/ARKBreedingStats/local/strings.de.resx @@ -1280,7 +1280,8 @@ Ark id im Spiel Server Tags Filter nach Stats mit {englische statAbkürzung} [==|<|>] {Wert}, z.B. hp > 20, st == 35 -Filter nach Farben mit c{Region}: {FarbCode} {FarbCode2}, z.B. c0: 20, c5: 3 4 5 6, c1: 13 14 +Filter nach Farben mit c{Regionen}: {FarbCode} {FarbCode2}, z.B. c0: 20, c5: 3 4 5 6, c1: 13 14 +Es ist auch möglich Tiere mit einer Farbe in mehreren möglichen Regionen zu filtern. Z.B. um alle Tiere mit der Farb-Id 10 oder 20 in irgendeiner Region anzuzeigen nutze: c0 1 2 3 4 5: 10 20 Klicken um Datei im Explorer anzuzeigen diff --git a/ARKBreedingStats/local/strings.fr.resx b/ARKBreedingStats/local/strings.fr.resx index 6f8e8886..9f32a500 100644 --- a/ARKBreedingStats/local/strings.fr.resx +++ b/ARKBreedingStats/local/strings.fr.resx @@ -1286,8 +1286,9 @@ Remarque Ark id dans le jeu Serveur Tags -Filtre pour les stats avec {statAbb} [==|<|>] {value}, par exemple pv > 20, en == 35 -Filtre pour les couleurs avec c{region}: {colorValue} {colorValue2}, par exemple c0: 20, c5: 3 4 5 6, c1: 13 14 +Filtre pour les stats avec {statAbb} [==|&lt;|&gt;] {value}, par exemple pv &gt; 20, en == 35 +Filtre pour les couleurs avec c{region}: {colorValue} {colorValue2}, par exemple c0: 20, c5: 3 4 5 6, c1: 13 14 +It's also possible to filter for creatures with a color in one of multiple possible regions. E.g. to display all creatures with the color 10 or 20 in any region use: c0 1 2 3 4 5: 10 20 Cliquer pour afficher le fichier dans l'explorateur diff --git a/ARKBreedingStats/local/strings.ja.resx b/ARKBreedingStats/local/strings.ja.resx index 09e3f65c..9da6f026 100644 --- a/ARKBreedingStats/local/strings.ja.resx +++ b/ARKBreedingStats/local/strings.ja.resx @@ -1291,7 +1291,8 @@ BabyCuddleIntervallMultiplierとBabyMatureSpeedMultiplierが正しいか確認 サーバ タグ Filter for a stats with {statAbb} [==|<|>] {value}, e.g. hp > 20, st == 35 -Filter for colors with c{region}: {colorValue}, e.g. c0: 20, c5: 3 +Filter for colors with c{regions}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +It's also possible to filter for creatures with a color in one of multiple possible regions. E.g. to display all creatures with the color 10 or 20 in any region use: c0 1 2 3 4 5: 10 20 クリックでファイルをエクスプローラーで表示 diff --git a/ARKBreedingStats/local/strings.pl.resx b/ARKBreedingStats/local/strings.pl.resx index 47dcd0d3..be125222 100644 --- a/ARKBreedingStats/local/strings.pl.resx +++ b/ARKBreedingStats/local/strings.pl.resx @@ -1011,7 +1011,8 @@ Identyfikator w grze Serwer Tagi Filter for a stats with {statAbb} [==|<|>] {value}, e.g. hp > 20, st == 35 -Filter for colors with c{region}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +Filter for colors with c{regions}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +It's also possible to filter for creatures with a color in one of multiple possible regions. E.g. to display all creatures with the color 10 or 20 in any region use: c0 1 2 3 4 5: 10 20 Uwaga: temu zwierzu może zabraknąć jedzenia. Możliwe, że będziesz musiał je nakarmić przed tym czasem, by go nie zagłodzić (sprawdź ekwipunek)! diff --git a/ARKBreedingStats/local/strings.pt-br.resx b/ARKBreedingStats/local/strings.pt-br.resx index 08e555e4..980dc876 100644 --- a/ARKBreedingStats/local/strings.pt-br.resx +++ b/ARKBreedingStats/local/strings.pt-br.resx @@ -150,7 +150,7 @@ Mude o breeding-mode para "Maior Status" para melhores Sugestões. Melhor possível - {0} Melhor possível para essa biblioteca + Melhor possível {0} para essa biblioteca Corpo @@ -1043,30 +1043,6 @@ Alguns descendentes podem ser piores do que no modo de status altos, mas você t Status - - Add Note Adicionar Nota - - - BestPossibleSpeciesLibraryFiltered {0} Melhor possivel para esse filtro - - - Discard changes? Discartar alterações? - - - Discard changes and load file Descartar as alterações e carregar uma nova biblioteca - - - Discard changes and new Descartar as alterações e criar uma nova biblioteca - - - Discard changes and quit Descartar alterações e sair - - - Fortitude Fortitude - - - Fortitude_Abb Fr - Certifique-se de que o BabyCuddleIntervallMultiplier e o BabyMatureSpeedMultiplier estão definidos corretamente. @@ -1079,63 +1055,6 @@ Alguns descendentes podem ser piores do que no modo de status altos, mas você t Se um número com um sinal de mais for mostrado, a soma é muito alta e você precisa escolher outra possibilidade nas listas de status amarelos." - - BtBeepTopTT Este som ira tocar quando o level de uma criatura com top stat, ex. igual ao atual maior nivel da sua biblioteca - - - max wild level Lvl max Selvagem - - - noColor sem cor - - - Nursing Effectiveness Nursing Effectiveness - - - Nursing Effectiveness_Abb NE - - - Remove Note Remover Nota - - - Temperature Temperatura - - - Temperature_Abb Te - - - tsBtAddAsExtractionTest Adic como Teste - - - until até - - - Water Água - - - btUpdateLibraryCreature Atualizar criatura na biblioteca - - - Water_Abb Wa - - - Cancel quitting Cancelar saida - - - Collection changed discard and load? Sua coleção de criaturas foi modificada desde que foi salva pela última vez, tem certeza que deseja descartar as alterações e carregar o arquivo sem salvar primeiro? - - - Collection changed discard and new? Sua coleção de criaturas foi modificada desde que foi salva pela última vez, tem certeza de que deseja descartar as alterações e criar uma nova biblioteca sem salvar? - - - Collection changed discard and quit? Sua coleção de criaturas foi modificada desde que foi salva pela última vez, tem certeza de que deseja descartar as alterações e sair sem salvar? - - - Crafting Speed_Abb Cr - - - CurrentCreature Criatura atual - Idioma do Sistema @@ -1221,7 +1140,8 @@ Ark id no Jogo Servidor Tags Filtrar por status com {statAbb} [==|&lt;|&gt;] {value}, ex. hp &gt; 20, st == 35 -Filtrar por cor com c{region}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +Filtrar por cor com c{region}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +It's also possible to filter for creatures with a color in one of multiple possible regions. E.g. to display all creatures with the color 10 or 20 in any region use: c0 1 2 3 4 5: 10 20 Top @@ -1334,4 +1254,70 @@ Filtrar por cor com c{region}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 Agrupar por Especie + + Adicionar Nota + + + Melhor possivel {0} para esse filtro + + + Discartar alterações? + + + Descartar as alterações e carregar uma nova biblioteca + + + Descartar as alterações e criar uma nova biblioteca + + + Descartar alterações e sair + + + Lvl max Selvagem + + + sem cor + + + até + + + Água + + + Wa + + + Cancelar saida + + + Temperatura + + + Te + + + Remover Nota + + + Adic como Teste + + + Atualizar criatura na biblioteca + + + Criatura atual + + + Este som ira tocar quando o level de uma criatura com top stat, ex. igual ao atual maior nivel da sua biblioteca + + + Sua coleção de criaturas foi modificada desde que foi salva pela última vez, tem certeza de que deseja descartar as alterações e sair sem salvar? + + + Sua coleção de criaturas foi modificada desde que foi salva pela última vez, tem certeza de que deseja descartar as alterações e criar uma nova biblioteca sem salvar? + + + Sua coleção de criaturas foi modificada desde que foi salva pela última vez, tem certeza que deseja descartar as alterações e carregar o arquivo sem salvar primeiro? + \ No newline at end of file diff --git a/ARKBreedingStats/local/strings.resx b/ARKBreedingStats/local/strings.resx index 6182dc8d..2e4897ef 100644 --- a/ARKBreedingStats/local/strings.resx +++ b/ARKBreedingStats/local/strings.resx @@ -1289,7 +1289,8 @@ Ark id in game Server Tags Filter for a stats with {statAbb} [==|<|>] {value}, e.g. hp > 20, st == 35 -Filter for colors with c{region}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +Filter for colors with c{regions}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +It's also possible to filter for creatures with a color in one of multiple possible regions. E.g. to display all creatures with the color 10 or 20 in any region use: c0 1 2 3 4 5: 10 20 Click to show file in explorer diff --git a/ARKBreedingStats/local/strings.ru.resx b/ARKBreedingStats/local/strings.ru.resx index 1172e304..1c6882b0 100644 --- a/ARKBreedingStats/local/strings.ru.resx +++ b/ARKBreedingStats/local/strings.ru.resx @@ -1185,7 +1185,8 @@ Ark id в игре Сервер Теги Filter for a stats with {statAbb} [==|<|>] {value}, e.g. hp > 20, st == 35 -Filter for colors with c{region}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +Filter for colors with c{region}: {colorValue} {colorValue2}, e.g. c0: 20, c5: 3 4 5 6, c1: 13 14 +It's also possible to filter for creatures with a color in one of multiple possible regions. E.g. to display all creatures with the color 10 or 20 in any region use: c0 1 2 3 4 5: 10 20 Нажмите, чтобы показать файл в проводнике diff --git a/ARKBreedingStats/local/strings.zh-tw.resx b/ARKBreedingStats/local/strings.zh-tw.resx index 674003f5..fb8cfd7d 100644 --- a/ARKBreedingStats/local/strings.zh-tw.resx +++ b/ARKBreedingStats/local/strings.zh-tw.resx @@ -1206,7 +1206,8 @@ 伺服器 標籤 使用 {屬性簡稱} [==|&lt;|&gt;] {數值} 過濾屬性,例如: HP &gt; 20, 耐 == 35 -使用 c{region} 過濾顏色:{colorValue} {colorValue2},例如: c0: 20, c5: 3 4 5 6, c1: 13 14 +使用 c{region} 過濾顏色:{colorValue} {colorValue2},例如: c0: 20, c5: 3 4 5 6, c1: 13 14 +It's also possible to filter for creatures with a color in one of multiple possible regions. E.g. to display all creatures with the color 10 or 20 in any region use: c0 1 2 3 4 5: 10 20 最大