#753: RecipeIterator#hasNext will now accurately represent if the current iterator has a next item.

This commit is contained in:
Martoph authored and md_5 committed 2020-09-18 18:44:19 +10:00
1 parent 890130b460
commit da9bb3ea92
1 file changed
+11 -1
@@ -19,13 +19,23 @@ public class RecipeIterator implements Iterator<Recipe> {
@Override
public boolean hasNext() {
return (current != null && current.hasNext()) || recipes.hasNext();
if (current != null && current.hasNext()) {
return true;
}
if (recipes.hasNext()) {
current = recipes.next().getValue().values().iterator();
return hasNext();
}
return false;
}
@Override
public Recipe next() {
if (current == null || !current.hasNext()) {
current = recipes.next().getValue().values().iterator();
return next();
}
return current.next().toBukkitRecipe();