fix menu hiding items cause derpings in detecting current hovering option

This commit is contained in:
yugecin 2016-12-04 16:06:13 +01:00
parent 403075a53d
commit 8b1d1e03bb
2 changed files with 14 additions and 14 deletions

View File

@ -609,14 +609,14 @@ public class OptionsMenu extends BasicGameState {
if (index >= currentTab.options.length) if (index >= currentTab.options.length)
return null; return null;
int i = index; for (GameOption option : currentTab.options) {
while (i >= 0) { if (option.showCondition()) {
if (!currentTab.options[i--].showCondition()) { index--;
if (++index >= currentTab.options.length) { }
if (index < 0) {
return option;
}
}
return null; return null;
} }
}
}
return currentTab.options[index];
}
} }

View File

@ -130,16 +130,16 @@ public class OptionsOverlay {
if (index >= options.length) { if (index >= options.length) {
return -1; return -1;
} }
int i = index; for (int i = 0; i < options.length; i++) {
while (i >= 0) { if (options[i].showCondition()) {
if (!options[i--].showCondition()) { index--;
if (++index >= options.length) { }
if (index < 0) {
return i;
}
}
return -1; return -1;
} }
}
}
return index;
}
public void update(int mouseX, int mouseY) { public void update(int mouseX, int mouseY) {