Update changelog, fix bad logic.
This commit is contained in:
@@ -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)
|
||||||
|
|
||||||
|
@@ -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
|
|||||||
));
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -67,5 +67,4 @@ public class IngredientTracker {
|
|||||||
|
|
||||||
return toRequest;
|
return toRequest;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user