private void CB_Den_SelectedIndexChanged(object sender, EventArgs e) { if (!doneLoading) { return; } foreach (ComboBox cb in CB_Species) { cb.Items.Clear(); } if (CB_Den.SelectedIndex == 0) { var tables = _raidTables.SwordNestsEvent; RaidTemplateTable toUse = Array.Find(tables, table => table.TableID == NestLocations.EventHash); int len = toUse.Entries.Length / 5; for (int i = 0; i < 5; i++) { ComboboxItem item = new ComboboxItem($"{i+1}\u2605 Raid", toUse.Entries[i * len]); foreach (ComboBox cb in CB_Species) { cb.Items.Add(item); } } } else { RaidTemplateTable toUse = GetTableToUse(); for (int stars = 0; stars < 5; stars++) { foreach (var entry in toUse.Entries) { if (entry.Probabilities[stars] > 0) { ComboboxItem item = new ComboboxItem($"{GameStrings.Species[entry.Species]} {stars + 1}\u2605 ", entry); for (int spidx = 0; spidx < CB_Species.Length; spidx++) { if (spidx > 2 || spidx == 0 && entry.FlawlessIVs <= 3) { ComboBox cb = CB_Species[spidx]; cb.Items.Add(item); } } } } } } foreach (ComboBox cb in CB_Species) { if (cb.Items.Count > 0) { cb.SelectedIndex = 0; } } }
private RaidTemplate[] GetEntriesWithIV(int num) { RaidTemplateTable tbl = GetTableToUse(); return(tbl.Entries.Where(entry => entry.FlawlessIVs == num).ToArray()); }