@@ -224,31 +224,31 @@ public static void addShapedNBTClearingRecipe(Consumer<FinishedRecipe> provider,
224224 }
225225
226226 /**
227- * @see #addShapedRecipe(Consumer, boolean, boolean, ResourceLocation, ItemStack, Object...)
227+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
228228 */
229229 public static void addShapedRecipe (Consumer <FinishedRecipe > provider , @ NotNull String regName ,
230230 @ NotNull ItemStack result , @ NotNull Object ... recipe ) {
231231 addShapedRecipe (provider , GTCEu .id (regName ), result , recipe );
232232 }
233233
234234 /**
235- * @see #addShapedRecipe(Consumer, boolean, boolean, ResourceLocation, ItemStack, Object...)
235+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
236236 */
237237 public static void addShapedRecipe (Consumer <FinishedRecipe > provider , @ NotNull ResourceLocation regName ,
238238 @ NotNull ItemStack result , @ NotNull Object ... recipe ) {
239239 addShapedRecipe (provider , false , regName , result , recipe );
240240 }
241241
242242 /**
243- * @see #addShapedRecipe(Consumer, boolean, boolean, ResourceLocation, ItemStack, Object...)
243+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
244244 */
245245 public static void addStrictShapedRecipe (Consumer <FinishedRecipe > provider , @ NotNull String regName ,
246246 @ NotNull ItemStack result , @ NotNull Object ... recipe ) {
247247 addStrictShapedRecipe (provider , GTCEu .id (regName ), result , recipe );
248248 }
249249
250250 /**
251- * @see #addShapedRecipe(Consumer, boolean, boolean, ResourceLocation, ItemStack, Object...)
251+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
252252 */
253253 public static void addStrictShapedRecipe (Consumer <FinishedRecipe > provider , boolean setMaterialInfoData ,
254254 @ NotNull String regName ,
@@ -257,13 +257,38 @@ public static void addStrictShapedRecipe(Consumer<FinishedRecipe> provider, bool
257257 }
258258
259259 /**
260- * @see #addShapedRecipe(Consumer, boolean, boolean, ResourceLocation, ItemStack, Object...)
260+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
261261 */
262262 public static void addStrictShapedRecipe (Consumer <FinishedRecipe > provider , @ NotNull ResourceLocation regName ,
263263 @ NotNull ItemStack result , @ NotNull Object ... recipe ) {
264264 addStrictShapedRecipe (provider , false , regName , result , recipe );
265265 }
266266
267+ /**
268+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
269+ */
270+ public static void addStrictSizeShapedRecipe (Consumer <FinishedRecipe > provider , @ NotNull String regName ,
271+ @ NotNull ItemStack result , @ NotNull Object ... recipe ) {
272+ addStrictSizeShapedRecipe (provider , GTCEu .id (regName ), result , recipe );
273+ }
274+
275+ /**
276+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
277+ */
278+ public static void addStrictSizeShapedRecipe (Consumer <FinishedRecipe > provider , boolean setMaterialInfoData ,
279+ @ NotNull String regName ,
280+ @ NotNull ItemStack result , @ NotNull Object ... recipe ) {
281+ addStrictSizeShapedRecipe (provider , setMaterialInfoData , GTCEu .id (regName ), result , recipe );
282+ }
283+
284+ /**
285+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
286+ */
287+ public static void addStrictSizeShapedRecipe (Consumer <FinishedRecipe > provider , @ NotNull ResourceLocation regName ,
288+ @ NotNull ItemStack result , @ NotNull Object ... recipe ) {
289+ addStrictSizeShapedRecipe (provider , false , regName , result , recipe );
290+ }
291+
267292 /**
268293 * Adds Shaped Crafting Recipes.
269294 * <p/>
@@ -284,17 +309,20 @@ public static void addStrictShapedRecipe(Consumer<FinishedRecipe> provider, @Not
284309 * <li>{@code 'w'} - {@code craftingToolWrench}</li>
285310 * <li>{@code 'x'} - {@code craftingToolWireCutter}</li>
286311 * </ul>
287- *
312+ *
288313 * @param setMaterialInfoData whether to add material decomposition information to the recipe output
314+ *
315+ * @param matchSize
289316 * @param regName the registry name for the recipe
290317 * @param result the output for the recipe
291318 * @param recipe the contents of the recipe
292319 */
293320 public static void addShapedRecipe (Consumer <FinishedRecipe > provider , boolean setMaterialInfoData , boolean isStrict ,
294- @ NotNull ResourceLocation regName , @ NotNull ItemStack result ,
321+ boolean matchSize , @ NotNull ResourceLocation regName , @ NotNull ItemStack result ,
295322 @ NotNull Object ... recipe ) {
296323 var builder = new ShapedRecipeBuilder (regName ).output (result );
297324 builder .isStrict (isStrict );
325+ builder .matchSize (matchSize );
298326 final CharSet tools = ToolHelper .getToolSymbols ();
299327 CharSet foundTools = new CharArraySet (9 );
300328 for (int i = 0 ; i < recipe .length ; i ++) {
@@ -354,29 +382,38 @@ public static void addShapedRecipe(Consumer<FinishedRecipe> provider, boolean se
354382 }
355383
356384 /**
357- * @see #addShapedRecipe(Consumer, boolean, boolean, ResourceLocation, ItemStack, Object...)
385+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
358386 */
359387 public static void addShapedRecipe (Consumer <FinishedRecipe > provider , boolean setMaterialInfoData ,
360388 @ NotNull String regName , @ NotNull ItemStack result , @ NotNull Object ... recipe ) {
361389 addShapedRecipe (provider , setMaterialInfoData , GTCEu .id (regName ), result , recipe );
362390 }
363391
364392 /**
365- * @see #addShapedRecipe(Consumer, boolean, boolean, ResourceLocation, ItemStack, Object...)
393+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
366394 */
367395 public static void addShapedRecipe (Consumer <FinishedRecipe > provider , boolean setMaterialInfoData ,
368396 @ NotNull ResourceLocation regName , @ NotNull ItemStack result ,
369397 @ NotNull Object ... recipe ) {
370- addShapedRecipe (provider , setMaterialInfoData , false , regName , result , recipe );
398+ addShapedRecipe (provider , setMaterialInfoData , false , false , regName , result , recipe );
371399 }
372400
373401 /**
374- * @see #addShapedRecipe(Consumer, boolean, boolean, ResourceLocation, ItemStack, Object...)
402+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
375403 */
376404 public static void addStrictShapedRecipe (Consumer <FinishedRecipe > provider , boolean setMaterialInfoData ,
377405 @ NotNull ResourceLocation regName , @ NotNull ItemStack result ,
378406 @ NotNull Object ... recipe ) {
379- addShapedRecipe (provider , setMaterialInfoData , true , regName , result , recipe );
407+ addShapedRecipe (provider , setMaterialInfoData , true , false , regName , result , recipe );
408+ }
409+
410+ /**
411+ * @see #addShapedRecipe(Consumer, boolean, boolean, boolean, ResourceLocation, ItemStack, Object...)
412+ */
413+ public static void addStrictSizeShapedRecipe (Consumer <FinishedRecipe > provider , boolean setMaterialInfoData ,
414+ @ NotNull ResourceLocation regName , @ NotNull ItemStack result ,
415+ @ NotNull Object ... recipe ) {
416+ addShapedRecipe (provider , setMaterialInfoData , true , true , regName , result , recipe );
380417 }
381418
382419 public static void addShapelessRecipe (Consumer <FinishedRecipe > provider , @ NotNull String regName ,
0 commit comments