The hot-cold solver previously was unable to perform narrowing if given
a temperature change of "SAME", leading to less-than-optimal results
when a number of otherwise-possible solutions could be removed from the
possible results by inferring that since they would have yielded a
"COLDER" or "WARMER" temperature change. This commit removes possible
solutions which are absolutely closer or farther from the previous
tested location.
One pre-exisitng test needed to be updated to pass with this change, as
it expected results to be narrowed more slowly than they now are. In
addition, a minimal test case with only two starting locations has been
added to demonstrate this change is working correctly.
The swap was attemting to run on anything with the "enter" option, which
conflicted with the quick-enter swap below it.
Co-authored-by: Adam <Adam@sigterm.info>
Spaces were not being removed from the config values causing the
whitelist contains check to fail.
Additionally, change the format of the raids whitelist to be newline
separated CSV which is not interpreted by GSON as valid JSON, fixing the
config service from serializing the whitelist rotation which is adding
erroneous quotes around the room names.
This also refactors the rotation whitelist display to be a simple yes/no
instead of this unused match count logic.
Co-authored-by: Alexsuperfly <alexcsumner@gmail.com>
When swapping between bludgeon and bow, onWidgetHiddenChanged is called before
the weapon varbit is set. Since that varbit determines which widgets should be
hidden we would like to make sure the widget is set to hidden even after a
varbit change.
This adds hotcold solver support in Prifddinas, and allows coordinate
clues to be located in the city.
Modify coordinate clues to support "real" and "overworld" locations so
that regardless of which region you are in, the overlays work for
either.
Closes#9459
Because a user can have 0 slayer experience on a new account, we cannot
rely on 0 as the pre-login value. Prior to this change, a player getting
their first slayer kill in the described scenario would cause it not to
be counted toward the tracked task.