Update changelog, fix bad logic.

This commit is contained in:
raoulvdberge
2020-09-25 20:57:12 +02:00
parent 2c4ce13551
commit 09eab48fff
3 changed files with 12 additions and 15 deletions

View File

@@ -3,6 +3,8 @@
### 1.9.6 ### 1.9.6
- Port to Minecraft 1.16.3 (raoulvdberge) - Port to Minecraft 1.16.3 (raoulvdberge)
- Added colored block variants (Darkere) - Added colored block variants (Darkere)
- Added functionality to show missing items in the JEI transfer screen (Darkere)
- Added functionality to request missing items from autocrafting in the JEI transfer screen (Darkere)
- Added client config option to remember the Grid search query (raoulvdberge) - Added client config option to remember the Grid search query (raoulvdberge)
- Fixed Portable Grid losing enchantments when placing and breaking (raoulvdberge) - Fixed Portable Grid losing enchantments when placing and breaking (raoulvdberge)

View File

@@ -38,24 +38,22 @@ public class GridRecipeTransferHandler implements IRecipeTransferHandler<GridCon
@Override @Override
public IRecipeTransferError transferRecipe(@Nonnull GridContainer container, Object recipe, @Nonnull IRecipeLayout recipeLayout, @Nonnull PlayerEntity player, boolean maxTransfer, boolean doTransfer) { public IRecipeTransferError transferRecipe(@Nonnull GridContainer container, Object recipe, @Nonnull IRecipeLayout recipeLayout, @Nonnull PlayerEntity player, boolean maxTransfer, boolean doTransfer) {
IngredientTracker tracker = trackItems(container, recipeLayout, player); IngredientTracker tracker = createTracker(container, recipeLayout, player);
if (tracker.hasMissing()) { if (tracker.hasMissing() && !doTransfer) {
if (doTransfer && Screen.hasControlDown()) { return new RecipeTransferGridError(tracker);
} else if (tracker.hasMissing() && doTransfer && Screen.hasControlDown()) {
tracker.getCraftingRequests().forEach((id, count) -> { tracker.getCraftingRequests().forEach((id, count) -> {
RS.NETWORK_HANDLER.sendToServer(new GridCraftingPreviewRequestMessage(id, count, Screen.hasShiftDown(), false)); RS.NETWORK_HANDLER.sendToServer(new GridCraftingPreviewRequestMessage(id, count, Screen.hasShiftDown(), false));
}); });
} else if (doTransfer) { } else if (doTransfer) {
moveItems(container, recipeLayout); moveItems(container, recipeLayout);
} else {
return new RecipeTransferGridError(tracker);
}
} }
return null; return null;
} }
private IngredientTracker trackItems(GridContainer container, IRecipeLayout recipeLayout, PlayerEntity player) { private IngredientTracker createTracker(GridContainer container, IRecipeLayout recipeLayout, PlayerEntity player) {
IngredientTracker tracker = new IngredientTracker(recipeLayout); IngredientTracker tracker = new IngredientTracker(recipeLayout);
if (!(container.getScreenInfoProvider() instanceof GridScreen)) { if (!(container.getScreenInfoProvider() instanceof GridScreen)) {
return tracker; return tracker;
@@ -139,6 +137,4 @@ public class GridRecipeTransferHandler implements IRecipeTransferHandler<GridCon
)); ));
} }
} }
} }

View File

@@ -67,5 +67,4 @@ public class IngredientTracker {
return toRequest; return toRequest;
} }
} }