internal bool CheckFilter(Filter filter, out bool isShiny) { isShiny = false; if (IsEmptySlot()) { return(false); } Bool3VL shiny = Bool3VL.Unknown; filter.Reset(); // check pokemon Wait(200); var page0 = Module <Pokebox>().GetSummaryPage(); var page = page0; while (true) { try { VideoCapture.Freeze(); // check shiny if (shiny.IsUnknown && (page == Pokebox.SummaryPage.Status || page == Pokebox.SummaryPage.IV)) { shiny = Module <Pokebox>().IsShiny(); } // check filter filter.Check(this, page); } finally { VideoCapture.Unfreeze(); } if (shiny.IsKnown && filter.Result.IsKnown) { break; } // next page Press(Keys.PLUS); Wait(500); page = Module <Pokebox>().GetSummaryPage(); } isShiny = shiny.Boolean; return(isShiny || filter.Result.Boolean); }
public override void Reset() { _Result = Bool3VL.Unknown; }