Add some missing recipes

This commit is contained in:
Andrew-71 2023-10-04 14:47:51 +03:00
parent cce60f65c6
commit b119ea2a4c
108 changed files with 3972 additions and 85 deletions

View file

@ -25,8 +25,6 @@ public class BarbedWireBlock extends Block {
entity.damage(world.getDamageSources().generic(), 2.0F);
}
}
}
}
}

View file

@ -0,0 +1,2 @@
# Meat mechanic

View file

@ -9,6 +9,7 @@ import net.minecraft.data.server.recipe.RecipeJsonProvider;
import net.minecraft.data.server.recipe.RecipeProvider;
import net.minecraft.data.server.recipe.ShapedRecipeJsonBuilder;
import net.minecraft.data.server.recipe.ShapelessRecipeJsonBuilder;
import net.minecraft.item.DyeItem;
import net.minecraft.item.ItemConvertible;
import net.minecraft.item.Items;
import net.minecraft.recipe.Ingredient;
@ -111,6 +112,29 @@ public class RecipeGenerator extends FabricRecipeProvider {
.offerTo(exporter);
}
private void centerRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible input_outer, ItemConvertible input_center) {
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output, 8)
.input('X', input_outer).input('Y', input_center)
.pattern("XXX")
.pattern("XYX")
.pattern("XXX")
.criterion(hasItem(input_outer), conditionsFromItem(input_outer))
.criterion(hasItem(input_center), conditionsFromItem(input_center))
.offerTo(exporter);
}
private void concreteRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible dye) {
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output, 6)
.input('D', dye).input('B', Blocks.IRON_BARS).input('S', Blocks.STONE)
.pattern("SBS")
.pattern(" D ")
.pattern("SBS")
.criterion(hasItem(dye), conditionsFromItem(dye))
.criterion(hasItem(Blocks.IRON_BARS), conditionsFromItem(Blocks.IRON_BARS))
.criterion(hasItem(Blocks.STONE), conditionsFromItem(Blocks.STONE))
.offerTo(exporter);
}
private void tvRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible dye) {
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, output, 1)
.pattern("N N")
@ -397,13 +421,11 @@ public class RecipeGenerator extends FabricRecipeProvider {
list.add(NSE_Blocks.VARIATED_TEAL_TILES);
list.add(Blocks.PRISMARINE_BRICKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.AQUAMARINE_TILES);
list.add(NSE_Blocks.GLAZED_AQUAMARINE_TILES);
list.add(NSE_Blocks.SMALL_AQUAMARINE_TILES);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.DIORITE_BRICKS);
list.add(NSE_Blocks.BIG_DIORITE_TILES);
@ -411,26 +433,22 @@ public class RecipeGenerator extends FabricRecipeProvider {
list.add(NSE_Blocks.NII_WALL_1);
list.add(Blocks.POLISHED_DIORITE);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CALCITE_TILES);
list.add(NSE_Blocks.DIAGONAL_CALCITE_TILES);
list.add(Blocks.CALCITE);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.DRIPSTONE_TILES);
list.add(NSE_Blocks.DRIPSTONE_BRICKS);
list.add(Blocks.DRIPSTONE_BLOCK);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.DEEPSLATE_TILES);
list.add(NSE_Blocks.DIAGONAL_DEEPSLATE_TILES);
list.add(NSE_Blocks.SMALL_DEEPSLATE_TILES);
list.add(Blocks.POLISHED_DEEPSLATE);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.LIGHT_BLUE_TILES);
list.add(NSE_Blocks.LIGHT_BLUE_BRICKS);
@ -438,27 +456,23 @@ public class RecipeGenerator extends FabricRecipeProvider {
list.add(NSE_Blocks.GLAZED_LIGHT_BLUE_TILES);
list.add(NSE_Blocks.SMALL_LIGHT_BLUE_TILES);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.BIG_GRANITE_TILES);
list.add(NSE_Blocks.SMALL_GRANITE_TILES);
list.add(Blocks.POLISHED_GRANITE);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.TUFF_TILES);
list.add(NSE_Blocks.TUFF_BRICKS);
list.add(NSE_Blocks.BIG_TUFF_TILES);
list.add(Blocks.TUFF);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.SMALL_WHITE_TILES);
list.add(NSE_Blocks.SMALL_CRACKED_WHITE_TILES);
list.add(NSE_Blocks.GLAZED_WHITE_TILES);
list.add(NSE_Blocks.CRACKED_GLAZED_WHITE_TILES);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CROSS_ACACIA_PLANKS);
list.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS);
@ -505,17 +519,20 @@ public class RecipeGenerator extends FabricRecipeProvider {
list.add(NSE_Blocks.GLAZED_BRICK_TILES);
list.add(Blocks.BRICKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.NII_WALL_3);
list.add(Blocks.STONE);
list.add(Blocks.STONE_BRICKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.NII_WALL_2);
list.add(Blocks.SMOOTH_STONE);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.BLUE_IRON_BARS);
list.add(NSE_Blocks.VINTAGE_IRON_BARS);
list.add(Blocks.IRON_BARS);
}), RecipeCategory.BUILDING_BLOCKS);
diceRecipe(exporter, NSE_Items.DICE_D4);
diceRecipe(exporter, NSE_Items.DICE_D6);
@ -539,23 +556,11 @@ public class RecipeGenerator extends FabricRecipeProvider {
.criterion(hasItem(Items.COBBLESTONE), conditionsFromItem(Items.COBBLESTONE))
.offerTo(exporter);
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.BIG_GREEN_TILES, 8)
.input('#', NSE_Blocks.BIG_DIORITE_TILES).input('G', Items.GREEN_DYE)
.pattern("###")
.pattern("#G#")
.pattern("###")
.criterion(hasItem(Items.GREEN_DYE), conditionsFromItem(Items.GREEN_DYE))
.criterion(hasItem(NSE_Blocks.BIG_DIORITE_TILES), conditionsFromItem(NSE_Blocks.BIG_DIORITE_TILES))
.offerTo(exporter);
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.GREEN_BRICKS, 8)
.input('#', Items.BRICKS).input('G', Items.GREEN_DYE)
.pattern("###")
.pattern("#G#")
.pattern("###")
.criterion(hasItem(Items.GREEN_DYE), conditionsFromItem(Items.GREEN_DYE))
.criterion(hasItem(Items.BRICKS), conditionsFromItem(Items.BRICKS))
.offerTo(exporter);
centerRecipe(exporter, NSE_Blocks.BIG_GREEN_TILES, NSE_Blocks.BIG_DIORITE_TILES, Items.GREEN_DYE);
centerRecipe(exporter, NSE_Blocks.GREEN_BRICKS, Items.BRICKS, Items.GREEN_DYE);
centerRecipe(exporter, NSE_Blocks.SMALL_YELLOW_TILES, NSE_Blocks.SMALL_WHITE_TILES, Items.YELLOW_DYE);
centerRecipe(exporter, NSE_Blocks.RED_BRICKS, Items.BRICKS, Items.RED_DYE);
centerRecipe(exporter, NSE_Blocks.DARK_BRICK_TILES, NSE_Blocks.BRICK_TILES, Items.BROWN_DYE);
ShapelessRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.GREEN_BRICKS_MIXED, 2)
.input(Items.BRICKS).input(NSE_Blocks.GREEN_BRICKS)
@ -563,33 +568,6 @@ public class RecipeGenerator extends FabricRecipeProvider {
.criterion(hasItem(Items.BRICKS), conditionsFromItem(Items.BRICKS))
.offerTo(exporter);
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.SMALL_YELLOW_TILES, 8)
.pattern("###")
.pattern("#Y#")
.pattern("###")
.input('#', NSE_Blocks.SMALL_WHITE_TILES).input('Y', Items.YELLOW_DYE)
.criterion(hasItem(NSE_Blocks.SMALL_WHITE_TILES), conditionsFromItem(NSE_Blocks.SMALL_WHITE_TILES))
.criterion(hasItem(Items.YELLOW_DYE), conditionsFromItem(Items.YELLOW_DYE))
.offerTo(exporter);
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.RED_BRICKS, 8)
.pattern("###")
.pattern("#R#")
.pattern("###")
.input('#', Items.BRICKS).input('R', Items.RED_DYE)
.criterion(hasItem(Items.BRICKS), conditionsFromItem(Items.BRICKS))
.criterion(hasItem(Items.RED_DYE), conditionsFromItem(Items.RED_DYE))
.offerTo(exporter);
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.DARK_BRICK_TILES, 8)
.pattern("###")
.pattern("#D#")
.pattern("###")
.input('#', NSE_Blocks.BRICK_TILES).input('D', Items.BROWN_DYE)
.criterion(hasItem(NSE_Blocks.BRICK_TILES), conditionsFromItem(NSE_Blocks.BRICK_TILES))
.criterion(hasItem(Items.BROWN_DYE), conditionsFromItem(Items.BROWN_DYE))
.offerTo(exporter);
// Generated stairs and slabs recipes
offerStairsAndSlab(exporter, NSE_Blocks.SAND_TILES_STAIRS, NSE_Blocks.SAND_TILES_SLAB, NSE_Blocks.SAND_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_SAND_TILES_STAIRS, NSE_Blocks.CRACKED_SAND_TILES_SLAB, NSE_Blocks.CRACKED_SAND_TILES);
@ -693,5 +671,35 @@ public class RecipeGenerator extends FabricRecipeProvider {
offerStairsAndSlab(exporter, NSE_Blocks.BROWN_LINOLEUM_STAIRS, NSE_Blocks.BROWN_LINOLEUM_SLAB, NSE_Blocks.BROWN_LINOLEUM);
offerStairsAndSlab(exporter, NSE_Blocks.CYAN_LINOLEUM_STAIRS, NSE_Blocks.CYAN_LINOLEUM_SLAB, NSE_Blocks.CYAN_LINOLEUM);
offerStairsAndSlab(exporter, NSE_Blocks.METAL_PLATING_STAIRS, NSE_Blocks.METAL_PLATING_SLAB, NSE_Blocks.METAL_PLATING);
offerStonecuttingRecipe(exporter, RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.WHITE_BOUNDARY_MARKER, Blocks.DIORITE_WALL, 1);
offerStonecuttingRecipe(exporter, RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.WHITE_BOUNDARY_MARKER, Blocks.BONE_BLOCK, 2);
offerDyeableRecipes(exporter,
List.of(Items.GREEN_DYE, Items.BLACK_DYE, Items.YELLOW_DYE, Items.BLUE_DYE, Items.LIGHT_BLUE_DYE, Items.RED_DYE, Items.WHITE_DYE, Items.LIGHT_GRAY_DYE, Items.GRAY_DYE, Items.CYAN_DYE, Items.ORANGE_DYE, Items.PURPLE_DYE, Items.MAGENTA_DYE, Items.PINK_DYE, Items.LIME_DYE, Items.BROWN_DYE),
List.of(NSE_Blocks.GREEN_BOUNDARY_MARKER.asItem(), NSE_Blocks.BLACK_BOUNDARY_MARKER.asItem(), NSE_Blocks.YELLOW_BOUNDARY_MARKER.asItem(), NSE_Blocks.BLUE_BOUNDARY_MARKER.asItem(),
NSE_Blocks.LIGHT_BLUE_BOUNDARY_MARKER.asItem(), NSE_Blocks.RED_BOUNDARY_MARKER.asItem(), NSE_Blocks.WHITE_BOUNDARY_MARKER.asItem(), NSE_Blocks.LIGHT_GRAY_BOUNDARY_MARKER.asItem(), NSE_Blocks.GRAY_BOUNDARY_MARKER.asItem(),
NSE_Blocks.CYAN_BOUNDARY_MARKER.asItem(), NSE_Blocks.ORANGE_BOUNDARY_MARKER.asItem(), NSE_Blocks.PURPLE_BOUNDARY_MARKER.asItem(), NSE_Blocks.MAGENTA_BOUNDARY_MARKER.asItem(), NSE_Blocks.PINK_BOUNDARY_MARKER.asItem(), NSE_Blocks.LIME_BOUNDARY_MARKER.asItem(), NSE_Blocks.BROWN_BOUNDARY_MARKER.asItem()),
"boundary_markers");
offerDyeableRecipes(exporter,
List.of(Items.GREEN_DYE, Items.BLACK_DYE, Items.YELLOW_DYE, Items.BLUE_DYE, Items.LIGHT_BLUE_DYE, Items.RED_DYE, Items.GRAY_DYE, Items.CYAN_DYE, Items.ORANGE_DYE, Items.PURPLE_DYE, Items.MAGENTA_DYE, Items.LIME_DYE),
List.of(NSE_Blocks.GREEN_WARNING.asItem(), NSE_Blocks.INDUSTRIAL_WARNING.asItem(), NSE_Blocks.YELLOW_WARNING.asItem(), NSE_Blocks.BLUE_WARNING.asItem(),
NSE_Blocks.LIGHT_BLUE_WARNING.asItem(), NSE_Blocks.RED_WARNING.asItem(), NSE_Blocks.GRAY_WARNING.asItem(),
NSE_Blocks.CYAN_WARNING.asItem(), NSE_Blocks.ORANGE_WARNING.asItem(), NSE_Blocks.PURPLE_WARNING.asItem(), NSE_Blocks.MAGENTA_WARNING.asItem(), NSE_Blocks.LIME_WARNING.asItem()),
"warning_stripes");
offerDyeableRecipes(exporter,
List.of(Items.GREEN_DYE, Items.YELLOW_DYE, Items.BLUE_DYE, Items.RED_DYE, Items.WHITE_DYE, Items.LIGHT_GRAY_DYE),
List.of(NSE_Blocks.GREEN_CONCRETE.asItem(), NSE_Blocks.YELLOW_CONCRETE.asItem(), NSE_Blocks.BLUE_CONCRETE.asItem(),
NSE_Blocks.RED_CONCRETE.asItem(), NSE_Blocks.WHITE_CONCRETE.asItem(), NSE_Blocks.BEIGE_CONCRETE.asItem()),
"boundary_markers");
concreteRecipe(exporter, NSE_Blocks.GREEN_CONCRETE, Items.GREEN_DYE);
concreteRecipe(exporter, NSE_Blocks.YELLOW_CONCRETE, Items.YELLOW_DYE);
concreteRecipe(exporter, NSE_Blocks.BLUE_CONCRETE, Items.BLUE_DYE);
concreteRecipe(exporter, NSE_Blocks.RED_CONCRETE, Items.RED_DYE);
concreteRecipe(exporter, NSE_Blocks.WHITE_CONCRETE, Items.WHITE_DYE);
concreteRecipe(exporter, NSE_Blocks.BEIGE_CONCRETE, Items.LIGHT_GRAY_DYE);
}
}