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
- Port to Minecraft 1.16.3 (raoulvdberge)
- 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)
- Fixed Portable Grid losing enchantments when placing and breaking (raoulvdberge)

View File

@@ -38,24 +38,22 @@ public class GridRecipeTransferHandler implements IRecipeTransferHandler<GridCon
@Override
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 (doTransfer && Screen.hasControlDown()) {
tracker.getCraftingRequests().forEach((id, count) -> {
RS.NETWORK_HANDLER.sendToServer(new GridCraftingPreviewRequestMessage(id, count, Screen.hasShiftDown(), false));
});
} else if (doTransfer) {
moveItems(container, recipeLayout);
} else {
return new RecipeTransferGridError(tracker);
}
if (tracker.hasMissing() && !doTransfer) {
return new RecipeTransferGridError(tracker);
} else if (tracker.hasMissing() && doTransfer && Screen.hasControlDown()) {
tracker.getCraftingRequests().forEach((id, count) -> {
RS.NETWORK_HANDLER.sendToServer(new GridCraftingPreviewRequestMessage(id, count, Screen.hasShiftDown(), false));
});
} else if (doTransfer) {
moveItems(container, recipeLayout);
}
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);
if (!(container.getScreenInfoProvider() instanceof GridScreen)) {
return tracker;
@@ -139,6 +137,4 @@ public class GridRecipeTransferHandler implements IRecipeTransferHandler<GridCon
));
}
}
}

View File

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