diff options
| author | shedaniel <daniel@shedaniel.me> | 2021-11-06 19:14:30 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2021-11-06 19:15:08 +0800 |
| commit | d1e91e2e2ffa317a52e659f2ca2b76800108f427 (patch) | |
| tree | 666d352b5931e700203c0dbcf4e7ea1658f55fe0 | |
| parent | ddab152ed614b14168373911aa239dd917c9621b (diff) | |
| download | RoughlyEnoughItems-d1e91e2e2ffa317a52e659f2ca2b76800108f427.tar.gz RoughlyEnoughItems-d1e91e2e2ffa317a52e659f2ca2b76800108f427.tar.bz2 RoughlyEnoughItems-d1e91e2e2ffa317a52e659f2ca2b76800108f427.zip | |
Fix JEI slot overlay, normalize dragging stacks and fix #651
4 files changed, 6 insertions, 4 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java b/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java index 4288ba4e5..aa4ac5037 100644 --- a/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java +++ b/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java @@ -315,7 +315,7 @@ public class CollectionUtils { @Override public T get(int index) { if (index < 0 || index >= realSize) - throw new IndexOutOfBoundsException(String.format("Index %s out of bounds for length %s", index, realSize)); + return null; return list.get(cursor + index); } diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/filtering/rules/SearchFilteringRule.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/filtering/rules/SearchFilteringRule.java index 6a17af517..9e00dec60 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/filtering/rules/SearchFilteringRule.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/filtering/rules/SearchFilteringRule.java @@ -113,7 +113,7 @@ public class SearchFilteringRule extends AbstractFilteringRule<SearchFilteringRu completableFutures.add(CompletableFuture.supplyAsync(() -> { List<EntryStack<?>> output = Lists.newArrayList(); for (EntryStack<?> stack : partitionStacks) { - if (filter.test(stack)) { + if (stack != null && filter.test(stack)) { output.add(stack); } } diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java index f1693459b..69adad877 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java @@ -473,7 +473,9 @@ public class EntryWidget extends Slot implements DraggableStackProviderWidget { public DraggableStack getHoveredStack(DraggingContext<Screen> context, double mouseX, double mouseY) { if (!getCurrentEntry().isEmpty() && containsMouse(mouseX, mouseY)) { return new DraggableStack() { - EntryStack<?> stack = getCurrentEntry().copy(); + EntryStack<?> stack = getCurrentEntry().copy() + .removeSetting(EntryStack.Settings.RENDERER) + .removeSetting(EntryStack.Settings.FLUID_RENDER_RATIO); @Override public EntryStack<?> getStack() { diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/search/AsyncSearchManager.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/search/AsyncSearchManager.java index 2d0929f03..2a431e8ee 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/search/AsyncSearchManager.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/search/AsyncSearchManager.java @@ -103,7 +103,7 @@ public class AsyncSearchManager { futures.add(CompletableFuture.supplyAsync(() -> { List<EntryStack<?>> filtered = Lists.newArrayList(); for (EntryStack<?> stack : partitionStacks) { - if (matches(stack) && additionalPredicate.test(stack)) { + if (stack != null && matches(stack) && additionalPredicate.test(stack)) { filtered.add(transformer.apply(stack)); } } |
