Refactor DataGeneration into multiple files

This commit is contained in:
Andrew-71 2023-09-16 15:01:18 +03:00
parent c1c3120825
commit 701158aedd
13 changed files with 1855 additions and 1838 deletions

View file

@ -6,7 +6,6 @@ import net.fabricmc.api.Environment;
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
import net.fabricmc.fabric.api.client.rendering.v1.BlockEntityRendererRegistry;
import net.minecraft.client.render.RenderLayer;
import su.a71.new_soviet.entity.TVBlockEntity;
import su.a71.new_soviet.registration.NSE_Blocks;
import su.a71.new_soviet.registration.NSE_Custom;

View file

@ -4,22 +4,14 @@ import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.block.BlockState;
import net.minecraft.block.SignBlock;
import net.minecraft.block.entity.SignText;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.render.block.entity.BlockEntityRenderer;
import net.minecraft.client.render.block.entity.BlockEntityRendererFactory;
import net.minecraft.client.render.block.entity.SignBlockEntityRenderer;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.text.OrderedText;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.RotationAxis;
import net.minecraft.util.math.Vec3d;
import org.joml.Matrix4f;
import su.a71.new_soviet.entity.TVBlockEntity;
import java.util.List;
import su.a71.new_soviet.entities.TVBlockEntity;
@Environment(EnvType.CLIENT)
public class TVBlockEntityRenderer implements BlockEntityRenderer<TVBlockEntity> {

File diff suppressed because it is too large Load diff

View file

@ -21,7 +21,7 @@ import net.minecraft.util.shape.VoxelShapes;
import net.minecraft.world.BlockView;
import net.minecraft.world.WorldAccess;
import su.a71.new_soviet.entity.TVBlockEntity;
import su.a71.new_soviet.entities.TVBlockEntity;
import su.a71.new_soviet.util.Shapes;
import java.util.List;

View file

@ -13,7 +13,7 @@ import net.minecraft.util.shape.VoxelShape;
import net.minecraft.util.shape.VoxelShapes;
import net.minecraft.world.BlockView;
import su.a71.new_soviet.entity.TVBlockEntity;
import su.a71.new_soviet.entities.TVBlockEntity;
import su.a71.new_soviet.util.Shapes;
import java.util.List;

View file

@ -0,0 +1,414 @@
package su.a71.new_soviet.datagen;
// === ABANDON HOPE, YE WHO ENTER HERE ===
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricBlockLootTableProvider;
import su.a71.new_soviet.registration.NSE_Blocks;
import su.a71.new_soviet.registration.NSE_Custom;
public class BlockLootTables extends FabricBlockLootTableProvider {
public BlockLootTables(FabricDataOutput dataOutput) {
super(dataOutput);
}
@Override
public void generate() {
// Drops for building blocks
addDrop(NSE_Blocks.SAND_TILES);
addDrop(NSE_Blocks.NII_FLOOR);
addDrop(NSE_Blocks.BIG_GREEN_TILES);
addDrop(NSE_Blocks.BIG_GREEN_TILES_CRACKED);
addDrop(NSE_Blocks.GREEN_BRICKS);
addDrop(NSE_Blocks.CRACKED_GREEN_BRICKS);
addDrop(NSE_Blocks.MOSSY_GREEN_BRICKS);
addDrop(NSE_Blocks.GREEN_BRICKS_2);
addDrop(NSE_Blocks.CRACKED_GREEN_BRICKS_2);
addDrop(NSE_Blocks.MOSSY_GREEN_BRICKS_2);
addDrop(NSE_Blocks.CRACKED_SAND_TILES);
addDrop(NSE_Blocks.MOSSY_SAND_TILES);
addDrop(NSE_Blocks.SMALL_SAND_TILES);
addDrop(NSE_Blocks.SMALL_CRACKED_SAND_TILES);
addDrop(NSE_Blocks.HERRINGBONE_SAND_TILES);
addDrop(NSE_Blocks.CROSS_SAND_TILES);
addDrop(NSE_Blocks.BIG_SAND_TILES);
addDrop(NSE_Blocks.SAND_BRICKS);
addDrop(NSE_Blocks.CRACKED_SAND_BRICKS);
addDrop(NSE_Blocks.MOSSY_SAND_BRICKS);
addDrop(NSE_Blocks.BIG_SAND_BRICKS);
addDrop(NSE_Blocks.BRICK_TILES);
addDrop(NSE_Blocks.CRACKED_BRICK_TILES);
addDrop(NSE_Blocks.MOSSY_BRICK_TILES);
addDrop(NSE_Blocks.DIRTY_BRICK_TILES);
addDrop(NSE_Blocks.DARK_BRICK_TILES);
addDrop(NSE_Blocks.CRACKED_DARK_BRICK_TILES);
addDrop(NSE_Blocks.MOSSY_DARK_BRICK_TILES);
addDrop(NSE_Blocks.DIRTY_DARK_BRICK_TILES);
addDrop(NSE_Blocks.TEAL_TILES);
addDrop(NSE_Blocks.CRACKED_TEAL_TILES);
addDrop(NSE_Blocks.MOSSY_TEAL_TILES);
addDrop(NSE_Blocks.SMALL_TEAL_TILES);
addDrop(NSE_Blocks.SMALL_CRACKED_TEAL_TILES);
addDrop(NSE_Blocks.GLAZED_TEAL_TILES);
addDrop(NSE_Blocks.CRACKED_GLAZED_TEAL_TILES);
addDrop(NSE_Blocks.VARIATED_TEAL_TILES);
addDrop(NSE_Blocks.AQUAMARINE_TILES);
addDrop(NSE_Blocks.CRACKED_AQUAMARINE_TILES);
addDrop(NSE_Blocks.MOSSY_AQUAMARINE_TILES);
addDrop(NSE_Blocks.DIRTY_AQUAMARINE_TILES);
addDrop(NSE_Blocks.SMALL_AQUAMARINE_TILES);
addDrop(NSE_Blocks.SMALL_CRACKED_AQUAMARINE_TILES);
addDrop(NSE_Blocks.GLAZED_AQUAMARINE_TILES);
addDrop(NSE_Blocks.CRACKED_GLAZED_AQUAMARINE_TILES);
addDrop(NSE_Blocks.SMALL_DIORITE_TILES);
addDrop(NSE_Blocks.SMALL_CRACKED_DIORITE_TILES);
addDrop(NSE_Blocks.BIG_DIORITE_TILES);
addDrop(NSE_Blocks.DIORITE_BRICKS);
addDrop(NSE_Blocks.CRACKED_DIORITE_BRICKS);
addDrop(NSE_Blocks.MOSSY_DIORITE_BRICKS);
addDrop(NSE_Blocks.CALCITE_TILES);
addDrop(NSE_Blocks.CRACKED_CALCITE_TILES);
addDrop(NSE_Blocks.MOSSY_CALCITE_TILES);
addDrop(NSE_Blocks.DIAGONAL_CALCITE_TILES);
addDrop(NSE_Blocks.NII_WALL_1);
addDrop(NSE_Blocks.CRACKED_NII_WALL_1);
addDrop(NSE_Blocks.NII_WALL_2);
addDrop(NSE_Blocks.NII_WALL_3);
addDrop(NSE_Blocks.DRIPSTONE_TILES);
addDrop(NSE_Blocks.CRACKED_DRIPSTONE_TILES);
addDrop(NSE_Blocks.MOSSY_DRIPSTONE_TILES);
addDrop(NSE_Blocks.DRIPSTONE_BRICKS);
addDrop(NSE_Blocks.DEEPSLATE_TILES);
addDrop(NSE_Blocks.CRACKED_DEEPSLATE_TILES);
addDrop(NSE_Blocks.MOSSY_DEEPSLATE_TILES);
addDrop(NSE_Blocks.SMALL_DEEPSLATE_TILES);
addDrop(NSE_Blocks.SMALL_CRACKED_DEEPSLATE_TILES);
addDrop(NSE_Blocks.DIAGONAL_DEEPSLATE_TILES);
addDrop(NSE_Blocks.LIGHT_BLUE_TILES);
addDrop(NSE_Blocks.CRACKED_LIGHT_BLUE_TILES);
addDrop(NSE_Blocks.MOSSY_LIGHT_BLUE_TILES);
addDrop(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES);
addDrop(NSE_Blocks.SMALL_LIGHT_BLUE_TILES);
addDrop(NSE_Blocks.SMALL_CRACKED_LIGHT_BLUE_TILES);
addDrop(NSE_Blocks.GLAZED_LIGHT_BLUE_TILES);
addDrop(NSE_Blocks.CRACKED_GLAZED_LIGHT_BLUE_TILES);
addDrop(NSE_Blocks.LIGHT_BLUE_BRICKS);
addDrop(NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS);
addDrop(NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS);
addDrop(NSE_Blocks.BIG_GRANITE_TILES);
addDrop(NSE_Blocks.SMALL_GRANITE_TILES);
addDrop(NSE_Blocks.SMALL_CRACKED_GRANITE_TILES);
addDrop(NSE_Blocks.GREEN_WHITE_TILES);
addDrop(NSE_Blocks.CRACKED_GREEN_WHITE_TILES);
addDrop(NSE_Blocks.MOSSY_GREEN_WHITE_TILES);
addDrop(NSE_Blocks.TUFF_TILES);
addDrop(NSE_Blocks.CRACKED_TUFF_TILES);
addDrop(NSE_Blocks.MOSSY_TUFF_TILES);
addDrop(NSE_Blocks.BIG_TUFF_TILES);
addDrop(NSE_Blocks.TUFF_BRICKS);
addDrop(NSE_Blocks.CRACKED_TUFF_BRICKS);
addDrop(NSE_Blocks.MOSSY_TUFF_BRICKS);
addDrop(NSE_Blocks.INDUSTRIAL_WARNING);
addDrop(NSE_Blocks.GRAY_WARNING);
addDrop(NSE_Blocks.RED_WARNING);
addDrop(NSE_Blocks.ORANGE_WARNING);
addDrop(NSE_Blocks.YELLOW_WARNING);
addDrop(NSE_Blocks.LIME_WARNING);
addDrop(NSE_Blocks.GREEN_WARNING);
addDrop(NSE_Blocks.CYAN_WARNING);
addDrop(NSE_Blocks.LIGHT_BLUE_WARNING);
addDrop(NSE_Blocks.BLUE_WARNING);
addDrop(NSE_Blocks.PURPLE_WARNING);
addDrop(NSE_Blocks.MAGENTA_WARNING);
addDrop(NSE_Blocks.METAL_PLATING);
addDrop(NSE_Blocks.CRATE);
addDrop(NSE_Blocks.CONCRETE_WALL);
addDrop(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS);
addDrop(NSE_Blocks.CROSS_ACACIA_PLANKS);
addDrop(NSE_Blocks.HERRINGBONE_OAK_PLANKS);
addDrop(NSE_Blocks.CROSS_OAK_PLANKS);
addDrop(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS);
addDrop(NSE_Blocks.CROSS_BIRCH_PLANKS);
addDrop(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS);
addDrop(NSE_Blocks.CROSS_CRIMSON_PLANKS);
addDrop(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS);
addDrop(NSE_Blocks.CROSS_DARK_OAK_PLANKS);
addDrop(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS);
addDrop(NSE_Blocks.CROSS_JUNGLE_PLANKS);
addDrop(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS);
addDrop(NSE_Blocks.CROSS_MANGROVE_PLANKS);
addDrop(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS);
addDrop(NSE_Blocks.CROSS_SPRUCE_PLANKS);
addDrop(NSE_Blocks.HERRINGBONE_PARQUET);
addDrop(NSE_Blocks.STRAIGHT_PARQUET);
addDrop(NSE_Blocks.SEPARATED_PARQUET);
addDrop(NSE_Blocks.GREEN_LINOLEUM);
addDrop(NSE_Blocks.BLUE_LINOLEUM);
addDrop(NSE_Blocks.RED_LINOLEUM);
addDrop(NSE_Blocks.GRAY_LINOLEUM);
addDrop(NSE_Blocks.ORANGE_LINOLEUM);
addDrop(NSE_Blocks.BROWN_LINOLEUM);
addDrop(NSE_Blocks.CYAN_LINOLEUM);
addDrop(NSE_Blocks.CROSS_ORANGE_LINOLEUM);
addDrop(NSE_Blocks.CROSS_BROWN_LINOLEUM);
addDrop(NSE_Blocks.WHITE_CONCRETE);
addDrop(NSE_Blocks.CRACKED_WHITE_CONCRETE);
addDrop(NSE_Blocks.BEIGE_CONCRETE);
addDrop(NSE_Blocks.CRACKED_BEIGE_CONCRETE);
addDrop(NSE_Blocks.BLUE_CONCRETE);
addDrop(NSE_Blocks.CRACKED_BLUE_CONCRETE);
addDrop(NSE_Blocks.RED_CONCRETE);
addDrop(NSE_Blocks.CRACKED_RED_CONCRETE);
addDrop(NSE_Blocks.YELLOW_CONCRETE);
addDrop(NSE_Blocks.CRACKED_YELLOW_CONCRETE);
addDrop(NSE_Blocks.GREEN_CONCRETE);
addDrop(NSE_Blocks.CRACKED_GREEN_CONCRETE);
addDrop(NSE_Blocks.WHITEWASH);
addDrop(NSE_Blocks.CRACKED_WHITEWASH);
addDrop(NSE_Blocks.VERY_CRACKED_WHITEWASH);
addDrop(NSE_Blocks.SMALL_YELLOW_TILES);
addDrop(NSE_Blocks.SMALL_CRACKED_YELLOW_TILES);
addDrop(NSE_Blocks.MEAT);
addDrop(NSE_Blocks.MEAT_EYE);
addDrop(NSE_Blocks.MEAT_TEETH);
addDrop(NSE_Blocks.CHISELED_BIRCH_DOOR, doorDrops(NSE_Blocks.CHISELED_BIRCH_DOOR));
addDrop(NSE_Blocks.CHISELED_MANGROVE_DOOR, doorDrops(NSE_Blocks.CHISELED_MANGROVE_DOOR));;
addDrop(NSE_Blocks.CHISELED_OAK_DOOR, doorDrops(NSE_Blocks.CHISELED_OAK_DOOR));
addDrop(NSE_Blocks.CHISELED_SPRUCE_DOOR, doorDrops(NSE_Blocks.CHISELED_SPRUCE_DOOR));;
addDrop(NSE_Blocks.BEIGE_WALLPAPER);
addDrop(NSE_Blocks.BROWN_WALLPAPER);
addDrop(NSE_Blocks.GREEN_WALLPAPER);
addDrop(NSE_Blocks.HANDRAIL);
// Drops for furniture/electronics/appliances
addDrop(NSE_Custom.WHITE_PAWN);
addDrop(NSE_Custom.WHITE_BISHOP);
addDrop(NSE_Custom.WHITE_KING);
addDrop(NSE_Custom.WHITE_KNIGHT);
addDrop(NSE_Custom.WHITE_QUEEN);
addDrop(NSE_Custom.WHITE_ROOK);
addDrop(NSE_Custom.BLACK_KNIGHT);
addDrop(NSE_Custom.BLACK_PAWN);
addDrop(NSE_Custom.BLACK_KING);
addDrop(NSE_Custom.BLACK_QUEEN);
addDrop(NSE_Custom.BLACK_BISHOP);
addDrop(NSE_Custom.BLACK_ROOK);
addDrop(NSE_Custom.TV);
addDrop(NSE_Custom.RED_TV);
addDrop(NSE_Custom.BROWN_TV);
addDrop(NSE_Custom.RADIO_RECEIVER);
addDrop(NSE_Custom.SIREN);
addDrop(NSE_Custom.TABLE_LAMP);
addDrop(NSE_Custom.VINTAGE_LAMP);
addDrop(NSE_Custom.CEILING_FAN);
addDrop(NSE_Custom.SWITCH);
// Generated stairs and slabs drops
addDrop(NSE_Blocks.SAND_TILES_SLAB);
addDrop(NSE_Blocks.SAND_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_SAND_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_SAND_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_SAND_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_SAND_TILES_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_SAND_TILES_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_SAND_TILES_STAIRS);
addDrop(NSE_Blocks.CROSS_SAND_TILES_SLAB);
addDrop(NSE_Blocks.CROSS_SAND_TILES_STAIRS);
addDrop(NSE_Blocks.SAND_BRICKS_SLAB);
addDrop(NSE_Blocks.SAND_BRICKS_STAIRS);
addDrop(NSE_Blocks.CRACKED_SAND_BRICKS_SLAB);
addDrop(NSE_Blocks.CRACKED_SAND_BRICKS_STAIRS);
addDrop(NSE_Blocks.MOSSY_SAND_BRICKS_SLAB);
addDrop(NSE_Blocks.MOSSY_SAND_BRICKS_STAIRS);
addDrop(NSE_Blocks.BIG_SAND_BRICKS_SLAB);
addDrop(NSE_Blocks.BIG_SAND_BRICKS_STAIRS);
addDrop(NSE_Blocks.BRICK_TILES_SLAB);
addDrop(NSE_Blocks.BRICK_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_BRICK_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_BRICK_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_BRICK_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_BRICK_TILES_STAIRS);
addDrop(NSE_Blocks.DIRTY_BRICK_TILES_SLAB);
addDrop(NSE_Blocks.DIRTY_BRICK_TILES_STAIRS);
addDrop(NSE_Blocks.DARK_BRICK_TILES_SLAB);
addDrop(NSE_Blocks.DARK_BRICK_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_DARK_BRICK_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_DARK_BRICK_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_DARK_BRICK_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_DARK_BRICK_TILES_STAIRS);
addDrop(NSE_Blocks.DIRTY_DARK_BRICK_TILES_SLAB);
addDrop(NSE_Blocks.DIRTY_DARK_BRICK_TILES_STAIRS);
addDrop(NSE_Blocks.RED_BRICKS_SLAB);
addDrop(NSE_Blocks.RED_BRICKS_STAIRS);
addDrop(NSE_Blocks.CRACKED_RED_BRICKS_SLAB);
addDrop(NSE_Blocks.CRACKED_RED_BRICKS_STAIRS);
addDrop(NSE_Blocks.MOSSY_RED_BRICKS_SLAB);
addDrop(NSE_Blocks.MOSSY_RED_BRICKS_STAIRS);
addDrop(NSE_Blocks.TEAL_TILES_SLAB);
addDrop(NSE_Blocks.TEAL_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_TEAL_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_TEAL_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_TEAL_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_TEAL_TILES_STAIRS);
addDrop(NSE_Blocks.VARIATED_TEAL_TILES_SLAB);
addDrop(NSE_Blocks.VARIATED_TEAL_TILES_STAIRS);
addDrop(NSE_Blocks.GREEN_BRICKS_SLAB);
addDrop(NSE_Blocks.GREEN_BRICKS_STAIRS);
addDrop(NSE_Blocks.CRACKED_GREEN_BRICKS_SLAB);
addDrop(NSE_Blocks.CRACKED_GREEN_BRICKS_STAIRS);
addDrop(NSE_Blocks.MOSSY_GREEN_BRICKS_SLAB);
addDrop(NSE_Blocks.MOSSY_GREEN_BRICKS_STAIRS);
addDrop(NSE_Blocks.GREEN_BRICKS_2_SLAB);
addDrop(NSE_Blocks.GREEN_BRICKS_2_STAIRS);
addDrop(NSE_Blocks.CRACKED_GREEN_BRICKS_2_SLAB);
addDrop(NSE_Blocks.CRACKED_GREEN_BRICKS_2_STAIRS);
addDrop(NSE_Blocks.MOSSY_GREEN_BRICKS_2_SLAB);
addDrop(NSE_Blocks.MOSSY_GREEN_BRICKS_2_STAIRS);
addDrop(NSE_Blocks.AQUAMARINE_TILES_SLAB);
addDrop(NSE_Blocks.AQUAMARINE_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_AQUAMARINE_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_AQUAMARINE_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_AQUAMARINE_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_AQUAMARINE_TILES_STAIRS);
addDrop(NSE_Blocks.DIRTY_AQUAMARINE_TILES_SLAB);
addDrop(NSE_Blocks.DIRTY_AQUAMARINE_TILES_STAIRS);
addDrop(NSE_Blocks.DIORITE_BRICKS_SLAB);
addDrop(NSE_Blocks.DIORITE_BRICKS_STAIRS);
addDrop(NSE_Blocks.CRACKED_DIORITE_BRICKS_SLAB);
addDrop(NSE_Blocks.CRACKED_DIORITE_BRICKS_STAIRS);
addDrop(NSE_Blocks.MOSSY_DIORITE_BRICKS_SLAB);
addDrop(NSE_Blocks.MOSSY_DIORITE_BRICKS_STAIRS);
addDrop(NSE_Blocks.CALCITE_TILES_SLAB);
addDrop(NSE_Blocks.CALCITE_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_CALCITE_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_CALCITE_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_CALCITE_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_CALCITE_TILES_STAIRS);
addDrop(NSE_Blocks.DRIPSTONE_TILES_SLAB);
addDrop(NSE_Blocks.DRIPSTONE_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_DRIPSTONE_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_DRIPSTONE_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_DRIPSTONE_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_DRIPSTONE_TILES_STAIRS);
addDrop(NSE_Blocks.DEEPSLATE_TILES_SLAB);
addDrop(NSE_Blocks.DEEPSLATE_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_DEEPSLATE_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_DEEPSLATE_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_DEEPSLATE_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_DEEPSLATE_TILES_STAIRS);
addDrop(NSE_Blocks.LIGHT_BLUE_TILES_SLAB);
addDrop(NSE_Blocks.LIGHT_BLUE_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_LIGHT_BLUE_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_LIGHT_BLUE_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_STAIRS);
addDrop(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES_SLAB);
addDrop(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES_STAIRS);
addDrop(NSE_Blocks.LIGHT_BLUE_BRICKS_SLAB);
addDrop(NSE_Blocks.LIGHT_BLUE_BRICKS_STAIRS);
addDrop(NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS_SLAB);
addDrop(NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS_STAIRS);
addDrop(NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_SLAB);
addDrop(NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_STAIRS);
addDrop(NSE_Blocks.GREEN_WHITE_TILES_SLAB);
addDrop(NSE_Blocks.GREEN_WHITE_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_GREEN_WHITE_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_GREEN_WHITE_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_GREEN_WHITE_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_GREEN_WHITE_TILES_STAIRS);
addDrop(NSE_Blocks.TUFF_TILES_SLAB);
addDrop(NSE_Blocks.TUFF_TILES_STAIRS);
addDrop(NSE_Blocks.CRACKED_TUFF_TILES_SLAB);
addDrop(NSE_Blocks.CRACKED_TUFF_TILES_STAIRS);
addDrop(NSE_Blocks.MOSSY_TUFF_TILES_SLAB);
addDrop(NSE_Blocks.MOSSY_TUFF_TILES_STAIRS);
addDrop(NSE_Blocks.TUFF_BRICKS_SLAB);
addDrop(NSE_Blocks.TUFF_BRICKS_STAIRS);
addDrop(NSE_Blocks.CRACKED_TUFF_BRICKS_SLAB);
addDrop(NSE_Blocks.CRACKED_TUFF_BRICKS_STAIRS);
addDrop(NSE_Blocks.MOSSY_TUFF_BRICKS_SLAB);
addDrop(NSE_Blocks.MOSSY_TUFF_BRICKS_STAIRS);
addDrop(NSE_Blocks.WHITE_CONCRETE_SLAB);
addDrop(NSE_Blocks.WHITE_CONCRETE_STAIRS);
addDrop(NSE_Blocks.CRACKED_WHITE_CONCRETE_SLAB);
addDrop(NSE_Blocks.CRACKED_WHITE_CONCRETE_STAIRS);
addDrop(NSE_Blocks.BEIGE_CONCRETE_SLAB);
addDrop(NSE_Blocks.BEIGE_CONCRETE_STAIRS);
addDrop(NSE_Blocks.CRACKED_BEIGE_CONCRETE_SLAB);
addDrop(NSE_Blocks.CRACKED_BEIGE_CONCRETE_STAIRS);
addDrop(NSE_Blocks.BLUE_CONCRETE_SLAB);
addDrop(NSE_Blocks.BLUE_CONCRETE_STAIRS);
addDrop(NSE_Blocks.CRACKED_BLUE_CONCRETE_SLAB);
addDrop(NSE_Blocks.CRACKED_BLUE_CONCRETE_STAIRS);
addDrop(NSE_Blocks.RED_CONCRETE_SLAB);
addDrop(NSE_Blocks.RED_CONCRETE_STAIRS);
addDrop(NSE_Blocks.CRACKED_RED_CONCRETE_SLAB);
addDrop(NSE_Blocks.CRACKED_RED_CONCRETE_STAIRS);
addDrop(NSE_Blocks.YELLOW_CONCRETE_SLAB);
addDrop(NSE_Blocks.YELLOW_CONCRETE_STAIRS);
addDrop(NSE_Blocks.CRACKED_YELLOW_CONCRETE_SLAB);
addDrop(NSE_Blocks.CRACKED_YELLOW_CONCRETE_STAIRS);
addDrop(NSE_Blocks.GREEN_CONCRETE_SLAB);
addDrop(NSE_Blocks.GREEN_CONCRETE_STAIRS);
addDrop(NSE_Blocks.CRACKED_GREEN_CONCRETE_SLAB);
addDrop(NSE_Blocks.CRACKED_GREEN_CONCRETE_STAIRS);
addDrop(NSE_Blocks.NII_FLOOR_SLAB);
addDrop(NSE_Blocks.NII_FLOOR_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_STAIRS);
addDrop(NSE_Blocks.CROSS_ACACIA_PLANKS_SLAB);
addDrop(NSE_Blocks.CROSS_ACACIA_PLANKS_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_OAK_PLANKS_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_OAK_PLANKS_STAIRS);
addDrop(NSE_Blocks.CROSS_OAK_PLANKS_SLAB);
addDrop(NSE_Blocks.CROSS_OAK_PLANKS_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_STAIRS);
addDrop(NSE_Blocks.CROSS_BIRCH_PLANKS_SLAB);
addDrop(NSE_Blocks.CROSS_BIRCH_PLANKS_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_STAIRS);
addDrop(NSE_Blocks.CROSS_CRIMSON_PLANKS_SLAB);
addDrop(NSE_Blocks.CROSS_CRIMSON_PLANKS_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_STAIRS);
addDrop(NSE_Blocks.CROSS_DARK_OAK_PLANKS_SLAB);
addDrop(NSE_Blocks.CROSS_DARK_OAK_PLANKS_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_STAIRS);
addDrop(NSE_Blocks.CROSS_JUNGLE_PLANKS_SLAB);
addDrop(NSE_Blocks.CROSS_JUNGLE_PLANKS_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_STAIRS);
addDrop(NSE_Blocks.CROSS_MANGROVE_PLANKS_SLAB);
addDrop(NSE_Blocks.CROSS_MANGROVE_PLANKS_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_STAIRS);
addDrop(NSE_Blocks.CROSS_SPRUCE_PLANKS_SLAB);
addDrop(NSE_Blocks.CROSS_SPRUCE_PLANKS_STAIRS);
addDrop(NSE_Blocks.HERRINGBONE_PARQUET_SLAB);
addDrop(NSE_Blocks.HERRINGBONE_PARQUET_STAIRS);
addDrop(NSE_Blocks.STRAIGHT_PARQUET_SLAB);
addDrop(NSE_Blocks.STRAIGHT_PARQUET_STAIRS);
addDrop(NSE_Blocks.SEPARATED_PARQUET_SLAB);
addDrop(NSE_Blocks.SEPARATED_PARQUET_STAIRS);
addDrop(NSE_Blocks.GREEN_LINOLEUM_SLAB);
addDrop(NSE_Blocks.GREEN_LINOLEUM_STAIRS);
addDrop(NSE_Blocks.BLUE_LINOLEUM_SLAB);
addDrop(NSE_Blocks.BLUE_LINOLEUM_STAIRS);
addDrop(NSE_Blocks.RED_LINOLEUM_SLAB);
addDrop(NSE_Blocks.RED_LINOLEUM_STAIRS);
addDrop(NSE_Blocks.GRAY_LINOLEUM_SLAB);
addDrop(NSE_Blocks.GRAY_LINOLEUM_STAIRS);
addDrop(NSE_Blocks.ORANGE_LINOLEUM_SLAB);
addDrop(NSE_Blocks.ORANGE_LINOLEUM_STAIRS);
addDrop(NSE_Blocks.BROWN_LINOLEUM_SLAB);
addDrop(NSE_Blocks.BROWN_LINOLEUM_STAIRS);
addDrop(NSE_Blocks.CYAN_LINOLEUM_SLAB);
addDrop(NSE_Blocks.CYAN_LINOLEUM_STAIRS);
addDrop(NSE_Blocks.METAL_PLATING_SLAB);
addDrop(NSE_Blocks.METAL_PLATING_STAIRS);
addDropWithSilkTouch(NSE_Custom.LIGHT_BULB_LAMP);
}
}

View file

@ -0,0 +1,680 @@
package su.a71.new_soviet.datagen;
// === ABANDON HOPE, YE WHO ENTER HERE ===
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
import net.minecraft.registry.RegistryWrapper;
import net.minecraft.registry.tag.BlockTags;
import su.a71.new_soviet.registration.NSE_Blocks;
import su.a71.new_soviet.registration.NSE_Custom;
import su.a71.new_soviet.registration.NSE_Tags;
import java.util.concurrent.CompletableFuture;
public class BlockTagGenerator extends FabricTagProvider.BlockTagProvider {
public BlockTagGenerator(FabricDataOutput output, CompletableFuture<RegistryWrapper.WrapperLookup> completableFuture) {
super(output, completableFuture);
}
@Override
protected void configure(RegistryWrapper.WrapperLookup arg) {
// Blocks mined with a pickaxe
getOrCreateTagBuilder(BlockTags.PICKAXE_MINEABLE)
.add(NSE_Blocks.SAND_TILES)
.add(NSE_Blocks.HANDRAIL)
.add(NSE_Blocks.NII_FLOOR)
.add(NSE_Blocks.BIG_GREEN_TILES)
.add(NSE_Blocks.BIG_GREEN_TILES_CRACKED)
.add(NSE_Blocks.GREEN_BRICKS)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS)
.add(NSE_Blocks.GREEN_BRICKS_2)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_2)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_2)
.add(NSE_Blocks.CRACKED_SAND_TILES)
.add(NSE_Blocks.MOSSY_SAND_TILES)
.add(NSE_Blocks.SMALL_SAND_TILES)
.add(NSE_Blocks.SMALL_CRACKED_SAND_TILES)
.add(NSE_Blocks.HERRINGBONE_SAND_TILES)
.add(NSE_Blocks.CROSS_SAND_TILES)
.add(NSE_Blocks.BIG_SAND_TILES)
.add(NSE_Blocks.SAND_BRICKS)
.add(NSE_Blocks.CRACKED_SAND_BRICKS)
.add(NSE_Blocks.MOSSY_SAND_BRICKS)
.add(NSE_Blocks.BIG_SAND_BRICKS)
.add(NSE_Blocks.BRICK_TILES)
.add(NSE_Blocks.CRACKED_BRICK_TILES)
.add(NSE_Blocks.MOSSY_BRICK_TILES)
.add(NSE_Blocks.DIRTY_BRICK_TILES)
.add(NSE_Blocks.DARK_BRICK_TILES)
.add(NSE_Blocks.CRACKED_DARK_BRICK_TILES)
.add(NSE_Blocks.MOSSY_DARK_BRICK_TILES)
.add(NSE_Blocks.DIRTY_DARK_BRICK_TILES)
.add(NSE_Blocks.GLAZED_BRICK_TILES)
.add(NSE_Blocks.CRACKED_GLAZED_BRICK_TILES)
.add(NSE_Blocks.RED_BRICKS)
.add(NSE_Blocks.CRACKED_RED_BRICKS)
.add(NSE_Blocks.MOSSY_RED_BRICKS)
.add(NSE_Blocks.TEAL_TILES)
.add(NSE_Blocks.CRACKED_TEAL_TILES)
.add(NSE_Blocks.MOSSY_TEAL_TILES)
.add(NSE_Blocks.SMALL_TEAL_TILES)
.add(NSE_Blocks.SMALL_CRACKED_TEAL_TILES)
.add(NSE_Blocks.GLAZED_TEAL_TILES)
.add(NSE_Blocks.CRACKED_GLAZED_TEAL_TILES)
.add(NSE_Blocks.VARIATED_TEAL_TILES)
.add(NSE_Blocks.AQUAMARINE_TILES)
.add(NSE_Blocks.CRACKED_AQUAMARINE_TILES)
.add(NSE_Blocks.MOSSY_AQUAMARINE_TILES)
.add(NSE_Blocks.DIRTY_AQUAMARINE_TILES)
.add(NSE_Blocks.SMALL_AQUAMARINE_TILES)
.add(NSE_Blocks.SMALL_CRACKED_AQUAMARINE_TILES)
.add(NSE_Blocks.GLAZED_AQUAMARINE_TILES)
.add(NSE_Blocks.CRACKED_GLAZED_AQUAMARINE_TILES)
.add(NSE_Blocks.SMALL_DIORITE_TILES)
.add(NSE_Blocks.SMALL_CRACKED_DIORITE_TILES)
.add(NSE_Blocks.BIG_DIORITE_TILES)
.add(NSE_Blocks.DIORITE_BRICKS)
.add(NSE_Blocks.CRACKED_DIORITE_BRICKS)
.add(NSE_Blocks.MOSSY_DIORITE_BRICKS)
.add(NSE_Blocks.CALCITE_TILES)
.add(NSE_Blocks.CRACKED_CALCITE_TILES)
.add(NSE_Blocks.MOSSY_CALCITE_TILES)
.add(NSE_Blocks.DIAGONAL_CALCITE_TILES)
.add(NSE_Blocks.NII_WALL_1)
.add(NSE_Blocks.CRACKED_NII_WALL_1)
.add(NSE_Blocks.NII_WALL_2)
.add(NSE_Blocks.NII_WALL_3)
.add(NSE_Blocks.DRIPSTONE_TILES)
.add(NSE_Blocks.CRACKED_DRIPSTONE_TILES)
.add(NSE_Blocks.MOSSY_DRIPSTONE_TILES)
.add(NSE_Blocks.DRIPSTONE_BRICKS)
.add(NSE_Blocks.DEEPSLATE_TILES)
.add(NSE_Blocks.CRACKED_DEEPSLATE_TILES)
.add(NSE_Blocks.MOSSY_DEEPSLATE_TILES)
.add(NSE_Blocks.SMALL_DEEPSLATE_TILES)
.add(NSE_Blocks.SMALL_CRACKED_DEEPSLATE_TILES)
.add(NSE_Blocks.DIAGONAL_DEEPSLATE_TILES)
.add(NSE_Blocks.LIGHT_BLUE_TILES)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_TILES)
.add(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_TILES)
.add(NSE_Blocks.SMALL_LIGHT_BLUE_TILES)
.add(NSE_Blocks.SMALL_CRACKED_LIGHT_BLUE_TILES)
.add(NSE_Blocks.GLAZED_LIGHT_BLUE_TILES)
.add(NSE_Blocks.CRACKED_GLAZED_LIGHT_BLUE_TILES)
.add(NSE_Blocks.LIGHT_BLUE_BRICKS)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS)
.add(NSE_Blocks.BIG_GRANITE_TILES)
.add(NSE_Blocks.SMALL_GRANITE_TILES)
.add(NSE_Blocks.SMALL_CRACKED_GRANITE_TILES)
.add(NSE_Blocks.GREEN_WHITE_TILES)
.add(NSE_Blocks.CRACKED_GREEN_WHITE_TILES)
.add(NSE_Blocks.MOSSY_GREEN_WHITE_TILES)
.add(NSE_Blocks.TUFF_TILES)
.add(NSE_Blocks.CRACKED_TUFF_TILES)
.add(NSE_Blocks.MOSSY_TUFF_TILES)
.add(NSE_Blocks.BIG_TUFF_TILES)
.add(NSE_Blocks.TUFF_BRICKS)
.add(NSE_Blocks.CRACKED_TUFF_BRICKS)
.add(NSE_Blocks.MOSSY_TUFF_BRICKS)
.add(NSE_Blocks.INDUSTRIAL_WARNING)
.add(NSE_Blocks.GRAY_WARNING)
.add(NSE_Blocks.RED_WARNING)
.add(NSE_Blocks.ORANGE_WARNING)
.add(NSE_Blocks.YELLOW_WARNING)
.add(NSE_Blocks.LIME_WARNING)
.add(NSE_Blocks.GREEN_WARNING)
.add(NSE_Blocks.CYAN_WARNING)
.add(NSE_Blocks.LIGHT_BLUE_WARNING)
.add(NSE_Blocks.BLUE_WARNING)
.add(NSE_Blocks.PURPLE_WARNING)
.add(NSE_Blocks.MAGENTA_WARNING)
.add(NSE_Blocks.METAL_PLATING)
.add(NSE_Blocks.CONCRETE_WALL)
.add(NSE_Blocks.SMALL_YELLOW_TILES)
.add(NSE_Blocks.SMALL_CRACKED_YELLOW_TILES)
.add(NSE_Blocks.SAND_TILES_STAIRS)
.add(NSE_Blocks.SAND_TILES_SLAB)
.add(NSE_Blocks.CRACKED_SAND_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_SAND_TILES_SLAB)
.add(NSE_Blocks.MOSSY_SAND_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_SAND_TILES_SLAB)
.add(NSE_Blocks.HERRINGBONE_SAND_TILES_STAIRS)
.add(NSE_Blocks.HERRINGBONE_SAND_TILES_SLAB)
.add(NSE_Blocks.CROSS_SAND_TILES_STAIRS)
.add(NSE_Blocks.CROSS_SAND_TILES_SLAB)
.add(NSE_Blocks.SAND_BRICKS_STAIRS)
.add(NSE_Blocks.SAND_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_SAND_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_SAND_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_SAND_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_SAND_BRICKS_SLAB)
.add(NSE_Blocks.BIG_SAND_BRICKS_STAIRS)
.add(NSE_Blocks.BIG_SAND_BRICKS_SLAB)
.add(NSE_Blocks.BRICK_TILES_STAIRS)
.add(NSE_Blocks.BRICK_TILES_SLAB)
.add(NSE_Blocks.CRACKED_BRICK_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_BRICK_TILES_SLAB)
.add(NSE_Blocks.MOSSY_BRICK_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_BRICK_TILES_SLAB)
.add(NSE_Blocks.DIRTY_BRICK_TILES_STAIRS)
.add(NSE_Blocks.DIRTY_BRICK_TILES_SLAB)
.add(NSE_Blocks.DARK_BRICK_TILES_STAIRS)
.add(NSE_Blocks.DARK_BRICK_TILES_SLAB)
.add(NSE_Blocks.CRACKED_DARK_BRICK_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_DARK_BRICK_TILES_SLAB)
.add(NSE_Blocks.MOSSY_DARK_BRICK_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_DARK_BRICK_TILES_SLAB)
.add(NSE_Blocks.DIRTY_DARK_BRICK_TILES_STAIRS)
.add(NSE_Blocks.DIRTY_DARK_BRICK_TILES_SLAB)
.add(NSE_Blocks.RED_BRICKS_STAIRS)
.add(NSE_Blocks.RED_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_RED_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_RED_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_RED_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_RED_BRICKS_SLAB)
.add(NSE_Blocks.TEAL_TILES_STAIRS)
.add(NSE_Blocks.TEAL_TILES_SLAB)
.add(NSE_Blocks.CRACKED_TEAL_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_TEAL_TILES_SLAB)
.add(NSE_Blocks.MOSSY_TEAL_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_TEAL_TILES_SLAB)
.add(NSE_Blocks.VARIATED_TEAL_TILES_STAIRS)
.add(NSE_Blocks.VARIATED_TEAL_TILES_SLAB)
.add(NSE_Blocks.GREEN_BRICKS_STAIRS)
.add(NSE_Blocks.GREEN_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_SLAB)
.add(NSE_Blocks.GREEN_BRICKS_2_STAIRS)
.add(NSE_Blocks.GREEN_BRICKS_2_SLAB)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_2_STAIRS)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_2_SLAB)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_2_STAIRS)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_2_SLAB)
.add(NSE_Blocks.AQUAMARINE_TILES_STAIRS)
.add(NSE_Blocks.AQUAMARINE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_AQUAMARINE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_AQUAMARINE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_AQUAMARINE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_AQUAMARINE_TILES_SLAB)
.add(NSE_Blocks.DIRTY_AQUAMARINE_TILES_STAIRS)
.add(NSE_Blocks.DIRTY_AQUAMARINE_TILES_SLAB)
.add(NSE_Blocks.DIORITE_BRICKS_STAIRS)
.add(NSE_Blocks.DIORITE_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_DIORITE_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_DIORITE_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_DIORITE_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_DIORITE_BRICKS_SLAB)
.add(NSE_Blocks.CALCITE_TILES_STAIRS)
.add(NSE_Blocks.CALCITE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_CALCITE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_CALCITE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_CALCITE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_CALCITE_TILES_SLAB)
.add(NSE_Blocks.DRIPSTONE_TILES_STAIRS)
.add(NSE_Blocks.DRIPSTONE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_DRIPSTONE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_DRIPSTONE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_DRIPSTONE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_DRIPSTONE_TILES_SLAB)
.add(NSE_Blocks.DEEPSLATE_TILES_STAIRS)
.add(NSE_Blocks.DEEPSLATE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_DEEPSLATE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_DEEPSLATE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_DEEPSLATE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_DEEPSLATE_TILES_SLAB)
.add(NSE_Blocks.LIGHT_BLUE_TILES_STAIRS)
.add(NSE_Blocks.LIGHT_BLUE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_SLAB)
.add(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES_STAIRS)
.add(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES_SLAB)
.add(NSE_Blocks.LIGHT_BLUE_BRICKS_STAIRS)
.add(NSE_Blocks.LIGHT_BLUE_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_SLAB)
.add(NSE_Blocks.GREEN_WHITE_TILES_STAIRS)
.add(NSE_Blocks.GREEN_WHITE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_GREEN_WHITE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_GREEN_WHITE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_GREEN_WHITE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_GREEN_WHITE_TILES_SLAB)
.add(NSE_Blocks.TUFF_TILES_STAIRS)
.add(NSE_Blocks.TUFF_TILES_SLAB)
.add(NSE_Blocks.CRACKED_TUFF_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_TUFF_TILES_SLAB)
.add(NSE_Blocks.MOSSY_TUFF_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_TUFF_TILES_SLAB)
.add(NSE_Blocks.TUFF_BRICKS_STAIRS)
.add(NSE_Blocks.TUFF_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_TUFF_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_TUFF_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_TUFF_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_TUFF_BRICKS_SLAB)
.add(NSE_Blocks.WHITE_CONCRETE_STAIRS)
.add(NSE_Blocks.WHITE_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_WHITE_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_WHITE_CONCRETE_SLAB)
.add(NSE_Blocks.BEIGE_CONCRETE_STAIRS)
.add(NSE_Blocks.BEIGE_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_BEIGE_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_BEIGE_CONCRETE_SLAB)
.add(NSE_Blocks.BLUE_CONCRETE_STAIRS)
.add(NSE_Blocks.BLUE_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_BLUE_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_BLUE_CONCRETE_SLAB)
.add(NSE_Blocks.RED_CONCRETE_STAIRS)
.add(NSE_Blocks.RED_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_RED_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_RED_CONCRETE_SLAB)
.add(NSE_Blocks.YELLOW_CONCRETE_STAIRS)
.add(NSE_Blocks.YELLOW_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_YELLOW_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_YELLOW_CONCRETE_SLAB)
.add(NSE_Blocks.GREEN_CONCRETE_STAIRS)
.add(NSE_Blocks.GREEN_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_GREEN_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_GREEN_CONCRETE_SLAB)
.add(NSE_Blocks.NII_FLOOR_STAIRS)
.add(NSE_Blocks.NII_FLOOR_SLAB)
.add(NSE_Blocks.METAL_PLATING_STAIRS)
.add(NSE_Blocks.METAL_PLATING_SLAB)
.add(NSE_Custom.VINTAGE_LAMP)
.add(NSE_Custom.LIGHT_BULB_LAMP);
// Blocks mined with an axe
getOrCreateTagBuilder(BlockTags.AXE_MINEABLE)
.add(NSE_Blocks.CRATE)
.add(NSE_Blocks.CONCRETE_WALL)
.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS)
.add(NSE_Blocks.CROSS_ACACIA_PLANKS)
.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS)
.add(NSE_Blocks.CROSS_OAK_PLANKS)
.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS)
.add(NSE_Blocks.CROSS_BIRCH_PLANKS)
.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS)
.add(NSE_Blocks.CROSS_CRIMSON_PLANKS)
.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS)
.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS)
.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS)
.add(NSE_Blocks.CROSS_JUNGLE_PLANKS)
.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS)
.add(NSE_Blocks.CROSS_MANGROVE_PLANKS)
.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS)
.add(NSE_Blocks.CROSS_SPRUCE_PLANKS)
.add(NSE_Blocks.HERRINGBONE_PARQUET)
.add(NSE_Blocks.STRAIGHT_PARQUET)
.add(NSE_Blocks.SEPARATED_PARQUET)
.add(NSE_Blocks.GREEN_LINOLEUM)
.add(NSE_Blocks.BLUE_LINOLEUM)
.add(NSE_Blocks.RED_LINOLEUM)
.add(NSE_Blocks.GRAY_LINOLEUM)
.add(NSE_Blocks.ORANGE_LINOLEUM)
.add(NSE_Blocks.BROWN_LINOLEUM)
.add(NSE_Blocks.CYAN_LINOLEUM)
.add(NSE_Blocks.CROSS_ORANGE_LINOLEUM)
.add(NSE_Blocks.CROSS_BROWN_LINOLEUM)
.add(NSE_Blocks.CHISELED_BIRCH_DOOR)
.add(NSE_Blocks.CHISELED_MANGROVE_DOOR)
.add(NSE_Blocks.CHISELED_OAK_DOOR)
.add(NSE_Blocks.CHISELED_SPRUCE_DOOR)
.add(NSE_Blocks.GREEN_WALLPAPER)
.add(NSE_Blocks.BROWN_WALLPAPER)
.add(NSE_Blocks.BEIGE_WALLPAPER)
.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_ACACIA_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_ACACIA_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_OAK_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_BIRCH_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_BIRCH_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_CRIMSON_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_CRIMSON_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_JUNGLE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_JUNGLE_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_MANGROVE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_MANGROVE_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_SPRUCE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_SPRUCE_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_PARQUET_STAIRS)
.add(NSE_Blocks.HERRINGBONE_PARQUET_SLAB)
.add(NSE_Blocks.STRAIGHT_PARQUET_STAIRS)
.add(NSE_Blocks.STRAIGHT_PARQUET_SLAB)
.add(NSE_Blocks.SEPARATED_PARQUET_STAIRS)
.add(NSE_Blocks.SEPARATED_PARQUET_SLAB)
.add(NSE_Blocks.GREEN_LINOLEUM_STAIRS)
.add(NSE_Blocks.GREEN_LINOLEUM_SLAB)
.add(NSE_Blocks.BLUE_LINOLEUM_STAIRS)
.add(NSE_Blocks.BLUE_LINOLEUM_SLAB)
.add(NSE_Blocks.RED_LINOLEUM_STAIRS)
.add(NSE_Blocks.RED_LINOLEUM_SLAB)
.add(NSE_Blocks.GRAY_LINOLEUM_STAIRS)
.add(NSE_Blocks.GRAY_LINOLEUM_SLAB)
.add(NSE_Blocks.ORANGE_LINOLEUM_STAIRS)
.add(NSE_Blocks.ORANGE_LINOLEUM_SLAB)
.add(NSE_Blocks.BROWN_LINOLEUM_STAIRS)
.add(NSE_Blocks.BROWN_LINOLEUM_SLAB)
.add(NSE_Blocks.CYAN_LINOLEUM_STAIRS)
.add(NSE_Blocks.CYAN_LINOLEUM_SLAB)
.add(NSE_Custom.TABLE_LAMP);
getOrCreateTagBuilder(NSE_Tags.Blocks.RAKE_MINEABLE)
.add(NSE_Blocks.MEAT)
.add(NSE_Blocks.MEAT_EYE)
.add(NSE_Blocks.MEAT_TEETH)
.add(NSE_Blocks.PURPLE_GOO);
getOrCreateTagBuilder(NSE_Tags.Blocks.TV)
.add(NSE_Custom.TV)
.add(NSE_Custom.RED_TV)
.add(NSE_Custom.BROWN_TV);
getOrCreateTagBuilder(NSE_Tags.Blocks.POST_LAMPS)
.add(NSE_Custom.CAGED_POST_LAMP)
.add(NSE_Custom.VINTAGE_POST_LAMP)
.add(NSE_Custom.MODERN_POST_LAMP)
.add(NSE_Custom.BIG_POST_LAMP);
getOrCreateTagBuilder(BlockTags.DOORS)
.add(NSE_Blocks.CHISELED_BIRCH_DOOR)
.add(NSE_Blocks.CHISELED_OAK_DOOR)
.add(NSE_Blocks.CHISELED_MANGROVE_DOOR)
.add(NSE_Blocks.CHISELED_SPRUCE_DOOR);
getOrCreateTagBuilder(BlockTags.WOODEN_DOORS)
.add(NSE_Blocks.CHISELED_BIRCH_DOOR)
.add(NSE_Blocks.CHISELED_OAK_DOOR)
.add(NSE_Blocks.CHISELED_MANGROVE_DOOR)
.add(NSE_Blocks.CHISELED_SPRUCE_DOOR);
getOrCreateTagBuilder(BlockTags.WALLS).add(NSE_Blocks.CONCRETE_WALL);
getOrCreateTagBuilder(BlockTags.PLANKS)
.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS)
.add(NSE_Blocks.CROSS_ACACIA_PLANKS)
.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS)
.add(NSE_Blocks.CROSS_OAK_PLANKS)
.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS)
.add(NSE_Blocks.CROSS_BIRCH_PLANKS)
.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS)
.add(NSE_Blocks.CROSS_CRIMSON_PLANKS)
.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS)
.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS)
.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS)
.add(NSE_Blocks.CROSS_JUNGLE_PLANKS)
.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS)
.add(NSE_Blocks.CROSS_MANGROVE_PLANKS)
.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS)
.add(NSE_Blocks.CROSS_SPRUCE_PLANKS);
getOrCreateTagBuilder(BlockTags.STAIRS)
.add(NSE_Blocks.SAND_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_SAND_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_SAND_TILES_STAIRS)
.add(NSE_Blocks.HERRINGBONE_SAND_TILES_STAIRS)
.add(NSE_Blocks.CROSS_SAND_TILES_STAIRS)
.add(NSE_Blocks.SAND_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_SAND_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_SAND_BRICKS_STAIRS)
.add(NSE_Blocks.BIG_SAND_BRICKS_STAIRS)
.add(NSE_Blocks.BRICK_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_BRICK_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_BRICK_TILES_STAIRS)
.add(NSE_Blocks.DIRTY_BRICK_TILES_STAIRS)
.add(NSE_Blocks.DARK_BRICK_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_DARK_BRICK_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_DARK_BRICK_TILES_STAIRS)
.add(NSE_Blocks.DIRTY_DARK_BRICK_TILES_STAIRS)
.add(NSE_Blocks.RED_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_RED_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_RED_BRICKS_STAIRS)
.add(NSE_Blocks.TEAL_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_TEAL_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_TEAL_TILES_STAIRS)
.add(NSE_Blocks.VARIATED_TEAL_TILES_STAIRS)
.add(NSE_Blocks.GREEN_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_STAIRS)
.add(NSE_Blocks.GREEN_BRICKS_2_STAIRS)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_2_STAIRS)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_2_STAIRS)
.add(NSE_Blocks.AQUAMARINE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_AQUAMARINE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_AQUAMARINE_TILES_STAIRS)
.add(NSE_Blocks.DIRTY_AQUAMARINE_TILES_STAIRS)
.add(NSE_Blocks.DIORITE_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_DIORITE_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_DIORITE_BRICKS_STAIRS)
.add(NSE_Blocks.CALCITE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_CALCITE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_CALCITE_TILES_STAIRS)
.add(NSE_Blocks.DRIPSTONE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_DRIPSTONE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_DRIPSTONE_TILES_STAIRS)
.add(NSE_Blocks.DEEPSLATE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_DEEPSLATE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_DEEPSLATE_TILES_STAIRS)
.add(NSE_Blocks.LIGHT_BLUE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_STAIRS)
.add(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES_STAIRS)
.add(NSE_Blocks.LIGHT_BLUE_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_STAIRS)
.add(NSE_Blocks.GREEN_WHITE_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_GREEN_WHITE_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_GREEN_WHITE_TILES_STAIRS)
.add(NSE_Blocks.TUFF_TILES_STAIRS)
.add(NSE_Blocks.CRACKED_TUFF_TILES_STAIRS)
.add(NSE_Blocks.MOSSY_TUFF_TILES_STAIRS)
.add(NSE_Blocks.TUFF_BRICKS_STAIRS)
.add(NSE_Blocks.CRACKED_TUFF_BRICKS_STAIRS)
.add(NSE_Blocks.MOSSY_TUFF_BRICKS_STAIRS)
.add(NSE_Blocks.WHITE_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_WHITE_CONCRETE_STAIRS)
.add(NSE_Blocks.BEIGE_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_BEIGE_CONCRETE_STAIRS)
.add(NSE_Blocks.BLUE_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_BLUE_CONCRETE_STAIRS)
.add(NSE_Blocks.RED_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_RED_CONCRETE_STAIRS)
.add(NSE_Blocks.YELLOW_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_YELLOW_CONCRETE_STAIRS)
.add(NSE_Blocks.GREEN_CONCRETE_STAIRS)
.add(NSE_Blocks.CRACKED_GREEN_CONCRETE_STAIRS)
.add(NSE_Blocks.NII_FLOOR_STAIRS)
.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_ACACIA_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_BIRCH_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_CRIMSON_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_JUNGLE_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_MANGROVE_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_SPRUCE_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_PARQUET_STAIRS)
.add(NSE_Blocks.STRAIGHT_PARQUET_STAIRS)
.add(NSE_Blocks.SEPARATED_PARQUET_STAIRS)
.add(NSE_Blocks.GREEN_LINOLEUM_STAIRS)
.add(NSE_Blocks.BLUE_LINOLEUM_STAIRS)
.add(NSE_Blocks.RED_LINOLEUM_STAIRS)
.add(NSE_Blocks.GRAY_LINOLEUM_STAIRS)
.add(NSE_Blocks.ORANGE_LINOLEUM_STAIRS)
.add(NSE_Blocks.BROWN_LINOLEUM_STAIRS)
.add(NSE_Blocks.CYAN_LINOLEUM_STAIRS)
.add(NSE_Blocks.METAL_PLATING_STAIRS);
getOrCreateTagBuilder(BlockTags.SLABS)
.add(NSE_Blocks.SAND_TILES_SLAB)
.add(NSE_Blocks.CRACKED_SAND_TILES_SLAB)
.add(NSE_Blocks.MOSSY_SAND_TILES_SLAB)
.add(NSE_Blocks.HERRINGBONE_SAND_TILES_SLAB)
.add(NSE_Blocks.CROSS_SAND_TILES_SLAB)
.add(NSE_Blocks.SAND_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_SAND_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_SAND_BRICKS_SLAB)
.add(NSE_Blocks.BIG_SAND_BRICKS_SLAB)
.add(NSE_Blocks.BRICK_TILES_SLAB)
.add(NSE_Blocks.CRACKED_BRICK_TILES_SLAB)
.add(NSE_Blocks.MOSSY_BRICK_TILES_SLAB)
.add(NSE_Blocks.DIRTY_BRICK_TILES_SLAB)
.add(NSE_Blocks.DARK_BRICK_TILES_SLAB)
.add(NSE_Blocks.CRACKED_DARK_BRICK_TILES_SLAB)
.add(NSE_Blocks.MOSSY_DARK_BRICK_TILES_SLAB)
.add(NSE_Blocks.DIRTY_DARK_BRICK_TILES_SLAB)
.add(NSE_Blocks.RED_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_RED_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_RED_BRICKS_SLAB)
.add(NSE_Blocks.TEAL_TILES_SLAB)
.add(NSE_Blocks.CRACKED_TEAL_TILES_SLAB)
.add(NSE_Blocks.MOSSY_TEAL_TILES_SLAB)
.add(NSE_Blocks.VARIATED_TEAL_TILES_SLAB)
.add(NSE_Blocks.GREEN_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_SLAB)
.add(NSE_Blocks.GREEN_BRICKS_2_SLAB)
.add(NSE_Blocks.CRACKED_GREEN_BRICKS_2_SLAB)
.add(NSE_Blocks.MOSSY_GREEN_BRICKS_2_SLAB)
.add(NSE_Blocks.AQUAMARINE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_AQUAMARINE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_AQUAMARINE_TILES_SLAB)
.add(NSE_Blocks.DIRTY_AQUAMARINE_TILES_SLAB)
.add(NSE_Blocks.DIORITE_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_DIORITE_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_DIORITE_BRICKS_SLAB)
.add(NSE_Blocks.CALCITE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_CALCITE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_CALCITE_TILES_SLAB)
.add(NSE_Blocks.DRIPSTONE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_DRIPSTONE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_DRIPSTONE_TILES_SLAB)
.add(NSE_Blocks.DEEPSLATE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_DEEPSLATE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_DEEPSLATE_TILES_SLAB)
.add(NSE_Blocks.LIGHT_BLUE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_SLAB)
.add(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES_SLAB)
.add(NSE_Blocks.LIGHT_BLUE_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_SLAB)
.add(NSE_Blocks.GREEN_WHITE_TILES_SLAB)
.add(NSE_Blocks.CRACKED_GREEN_WHITE_TILES_SLAB)
.add(NSE_Blocks.MOSSY_GREEN_WHITE_TILES_SLAB)
.add(NSE_Blocks.TUFF_TILES_SLAB)
.add(NSE_Blocks.CRACKED_TUFF_TILES_SLAB)
.add(NSE_Blocks.MOSSY_TUFF_TILES_SLAB)
.add(NSE_Blocks.TUFF_BRICKS_SLAB)
.add(NSE_Blocks.CRACKED_TUFF_BRICKS_SLAB)
.add(NSE_Blocks.MOSSY_TUFF_BRICKS_SLAB)
.add(NSE_Blocks.WHITE_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_WHITE_CONCRETE_SLAB)
.add(NSE_Blocks.BEIGE_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_BEIGE_CONCRETE_SLAB)
.add(NSE_Blocks.BLUE_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_BLUE_CONCRETE_SLAB)
.add(NSE_Blocks.RED_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_RED_CONCRETE_SLAB)
.add(NSE_Blocks.YELLOW_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_YELLOW_CONCRETE_SLAB)
.add(NSE_Blocks.GREEN_CONCRETE_SLAB)
.add(NSE_Blocks.CRACKED_GREEN_CONCRETE_SLAB)
.add(NSE_Blocks.NII_FLOOR_SLAB)
.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_ACACIA_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_OAK_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_BIRCH_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_CRIMSON_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_JUNGLE_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_MANGROVE_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_SPRUCE_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_PARQUET_SLAB)
.add(NSE_Blocks.STRAIGHT_PARQUET_SLAB)
.add(NSE_Blocks.SEPARATED_PARQUET_SLAB)
.add(NSE_Blocks.GREEN_LINOLEUM_SLAB)
.add(NSE_Blocks.BLUE_LINOLEUM_SLAB)
.add(NSE_Blocks.RED_LINOLEUM_SLAB)
.add(NSE_Blocks.GRAY_LINOLEUM_SLAB)
.add(NSE_Blocks.ORANGE_LINOLEUM_SLAB)
.add(NSE_Blocks.BROWN_LINOLEUM_SLAB)
.add(NSE_Blocks.CYAN_LINOLEUM_SLAB)
.add(NSE_Blocks.METAL_PLATING_SLAB);
getOrCreateTagBuilder(BlockTags.WOODEN_STAIRS)
.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_ACACIA_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_BIRCH_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_CRIMSON_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_JUNGLE_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_MANGROVE_PLANKS_STAIRS)
.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_STAIRS)
.add(NSE_Blocks.CROSS_SPRUCE_PLANKS_STAIRS);
getOrCreateTagBuilder(BlockTags.WOODEN_SLABS)
.add(NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_ACACIA_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_OAK_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_BIRCH_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_CRIMSON_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_JUNGLE_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_MANGROVE_PLANKS_SLAB)
.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_SLAB)
.add(NSE_Blocks.CROSS_SPRUCE_PLANKS_SLAB);
}
}

View file

@ -0,0 +1,54 @@
package su.a71.new_soviet.datagen;
// === ABANDON HOPE, YE WHO ENTER HERE ===
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricModelProvider;
import net.minecraft.block.Block;
import net.minecraft.data.client.BlockStateModelGenerator;
import net.minecraft.data.client.ItemModelGenerator;
import net.minecraft.data.client.Models;
import net.minecraft.data.client.TextureMap;
import net.minecraft.registry.Registries;
import net.minecraft.util.Identifier;
import su.a71.new_soviet.registration.NSE_Blocks;
public class ModelGenerator extends FabricModelProvider {
public ModelGenerator(FabricDataOutput generator) {
super(generator);
}
// Helper method since "normal" registerDoor doesn't account for non-flat texture dir
public void registerDoor(BlockStateModelGenerator blockStateModelGenerator, Block doorBlock) {
TextureMap textureMap = TextureMap.topBottom(
Registries.BLOCK.getId(doorBlock).withPath((path) -> "block/doors/" + path + "_top"),
Registries.BLOCK.getId(doorBlock).withPath((path) -> "block/doors/" + path + "_bottom"));
Identifier identifier = Models.DOOR_BOTTOM_LEFT.upload(doorBlock, textureMap, blockStateModelGenerator.modelCollector);
Identifier identifier2 = Models.DOOR_BOTTOM_LEFT_OPEN.upload(doorBlock, textureMap, blockStateModelGenerator.modelCollector);
Identifier identifier3 = Models.DOOR_BOTTOM_RIGHT.upload(doorBlock, textureMap, blockStateModelGenerator.modelCollector);
Identifier identifier4 = Models.DOOR_BOTTOM_RIGHT_OPEN.upload(doorBlock, textureMap, blockStateModelGenerator.modelCollector);
Identifier identifier5 = Models.DOOR_TOP_LEFT.upload(doorBlock, textureMap, blockStateModelGenerator.modelCollector);
Identifier identifier6 = Models.DOOR_TOP_LEFT_OPEN.upload(doorBlock, textureMap, blockStateModelGenerator.modelCollector);
Identifier identifier7 = Models.DOOR_TOP_RIGHT.upload(doorBlock, textureMap, blockStateModelGenerator.modelCollector);
Identifier identifier8 = Models.DOOR_TOP_RIGHT_OPEN.upload(doorBlock, textureMap, blockStateModelGenerator.modelCollector);
blockStateModelGenerator.registerItemModel(doorBlock.asItem());
blockStateModelGenerator.blockStateCollector.accept(BlockStateModelGenerator.createDoorBlockState(doorBlock, identifier, identifier2, identifier3, identifier4, identifier5, identifier6, identifier7, identifier8));
}
@Override
public void generateBlockStateModels(BlockStateModelGenerator blockStateModelGenerator) {
// BlockStateModelGenerator.createSingletonBlockState(NSE_Blocks.SAND_TILES, new Identifier("new_soviet", "block/sand_tiles"));
// BlockStateModelGenerator.createSlabBlockState()
// BlockStateModelGenerator.createWallBlockState()
// BlockStateModelGenerator.createStairsBlockState(NSE_Blocks.SAND_TILES_STAIRS, new Identifier(NewSoviet.MOD_ID, "sand_tiles_stairs"));
registerDoor(blockStateModelGenerator, NSE_Blocks.CHISELED_BIRCH_DOOR);
registerDoor(blockStateModelGenerator, NSE_Blocks.CHISELED_SPRUCE_DOOR);
registerDoor(blockStateModelGenerator, NSE_Blocks.CHISELED_OAK_DOOR);
registerDoor(blockStateModelGenerator, NSE_Blocks.CHISELED_MANGROVE_DOOR);
// blockStateModelGenerator.register();
}
@Override
public void generateItemModels(ItemModelGenerator itemModelGenerator) {
}
}

View file

@ -0,0 +1,697 @@
package su.a71.new_soviet.datagen;
// === ABANDON HOPE, YE WHO ENTER HERE ===
import com.google.common.collect.Lists;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
import net.minecraft.block.Blocks;
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.ItemConvertible;
import net.minecraft.item.Items;
import net.minecraft.recipe.Ingredient;
import net.minecraft.recipe.book.RecipeCategory;
import net.minecraft.registry.tag.ItemTags;
import net.minecraft.util.Util;
import su.a71.new_soviet.registration.NSE_Blocks;
import su.a71.new_soviet.registration.NSE_Custom;
import su.a71.new_soviet.registration.NSE_Items;
import java.util.List;
import java.util.function.Consumer;
public class RecipeGenerator extends FabricRecipeProvider {
public RecipeGenerator(FabricDataOutput generator) {
super(generator);
}
private void mossRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible input) {
var path = convertBetween(output, input);
ShapelessRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output).input(input).input(Items.VINE).criterion(FabricRecipeProvider.hasItem(output),
FabricRecipeProvider.conditionsFromItem(output)).criterion(FabricRecipeProvider.hasItem(input),
FabricRecipeProvider.conditionsFromItem(output)).criterion(FabricRecipeProvider.hasItem(Items.VINE),
FabricRecipeProvider.conditionsFromItem(output)).offerTo(exporter, path + "_vine");
ShapelessRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output).input(input).input(Items.MOSS_BLOCK).criterion(FabricRecipeProvider.hasItem(output),
FabricRecipeProvider.conditionsFromItem(output)).criterion(FabricRecipeProvider.hasItem(input),
FabricRecipeProvider.conditionsFromItem(output)).criterion(FabricRecipeProvider.hasItem(Items.MOSS_BLOCK),
FabricRecipeProvider.conditionsFromItem(output)).offerTo(exporter, path + "_moss");
}
private void dirtyRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible input) {
var path = convertBetween(output, input);
ShapelessRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output).input(input).input(Items.DIRT).criterion(FabricRecipeProvider.hasItem(output),
FabricRecipeProvider.conditionsFromItem(output)).criterion(FabricRecipeProvider.hasItem(input),
FabricRecipeProvider.conditionsFromItem(output)).criterion(FabricRecipeProvider.hasItem(Items.DIRT),
FabricRecipeProvider.conditionsFromItem(output)).offerTo(exporter, path + "_dirt");
ShapelessRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output).input(input).input(Items.GLOW_LICHEN).criterion(FabricRecipeProvider.hasItem(output),
FabricRecipeProvider.conditionsFromItem(output)).criterion(FabricRecipeProvider.hasItem(input),
FabricRecipeProvider.conditionsFromItem(output)).criterion(FabricRecipeProvider.hasItem(Items.GLOW_LICHEN),
FabricRecipeProvider.conditionsFromItem(output)).offerTo(exporter, path + "_lichen");
}
private void stoneCuttingCategory(Consumer<RecipeJsonProvider> exporter, List<ItemConvertible> category, RecipeCategory recipe_category) {
for (int i = 0; i < category.size(); i++) {
for (int j = 0; j < category.size(); j++) {
if (i != j) {
offerStonecuttingRecipe(exporter, recipe_category,
category.get(i), category.get(j));
}
}
}
}
private void diceRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible dice) {
// why can't we use BlockTags.WOODEN_BUTTONS
var buttons = Util.make(Lists.newArrayList(), list -> {
list.add(Blocks.OAK_BUTTON);
list.add(Blocks.BAMBOO_BUTTON);
list.add(Blocks.BIRCH_BUTTON);
list.add(Blocks.CHERRY_BUTTON);
list.add(Blocks.ACACIA_BUTTON);
list.add(Blocks.CRIMSON_BUTTON);
list.add(Blocks.DARK_OAK_BUTTON);
list.add(Blocks.JUNGLE_BUTTON);
list.add(Blocks.MANGROVE_BUTTON);
list.add(Blocks.SPRUCE_BUTTON);
list.add(Blocks.WARPED_BUTTON);
});
for (Object button : buttons) {
offerStonecuttingRecipe(exporter, RecipeCategory.MISC, dice, (ItemConvertible) button);
}
}
private void warningStripeRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible dye) {
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output, 4)
.pattern("D#D")
.pattern("#D#")
.pattern("D#D")
.input('D', dye)
.input('#', Items.IRON_INGOT)
.criterion(RecipeProvider.hasItem(Items.IRON_INGOT),
RecipeProvider.conditionsFromItem(Items.IRON_INGOT))
.criterion(RecipeProvider.hasItem(dye),
RecipeProvider.conditionsFromItem(dye))
.offerTo(exporter);
}
private void crissCrossRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible input1, ItemConvertible input2) {
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output, 4)
.pattern("XY")
.pattern("YX")
.input('X', input1)
.input('Y', input2)
.criterion(RecipeProvider.hasItem(input1),
RecipeProvider.conditionsFromItem(input1))
.criterion(RecipeProvider.hasItem(input2),
RecipeProvider.conditionsFromItem(input2))
.offerTo(exporter);
}
private void tvRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible dye) {
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, output, 1)
.pattern("N N")
.pattern("DGD")
.pattern("DRD")
.input('D', dye)
.input('N', Items.IRON_NUGGET)
.input('R', Items.REDSTONE)
.input('G', Items.GLASS_PANE)
.criterion(RecipeProvider.hasItem(Items.IRON_NUGGET),
RecipeProvider.conditionsFromItem(Items.IRON_NUGGET))
.criterion(RecipeProvider.hasItem(Items.GLASS_PANE),
RecipeProvider.conditionsFromItem(Items.GLASS_PANE))
.criterion(RecipeProvider.hasItem(Items.REDSTONE),
RecipeProvider.conditionsFromItem(Items.REDSTONE))
.criterion(RecipeProvider.hasItem(dye),
RecipeProvider.conditionsFromItem(dye))
.offerTo(exporter);
}
private void radioRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output) {
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, output, 1)
.pattern(" N")
.pattern("MMM")
.pattern("III")
.input('M', Blocks.NOTE_BLOCK)
.input('N', Items.IRON_NUGGET)
.input('I', Items.IRON_INGOT)
.criterion(RecipeProvider.hasItem(Items.IRON_NUGGET),
RecipeProvider.conditionsFromItem(Items.IRON_NUGGET))
.criterion(RecipeProvider.hasItem(Items.NOTE_BLOCK),
RecipeProvider.conditionsFromItem(Items.NOTE_BLOCK))
.criterion(RecipeProvider.hasItem(Items.IRON_INGOT),
RecipeProvider.conditionsFromItem(Items.IRON_INGOT))
.offerTo(exporter);
}
private void ceilingFanRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output) {
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, output, 1)
.pattern(" S ")
.pattern("WNW")
.input('S', Items.STICK)
.input('N', Items.IRON_NUGGET)
.input('W', Items.WHITE_WOOL)
.criterion(RecipeProvider.hasItem(Items.IRON_NUGGET),
RecipeProvider.conditionsFromItem(Items.IRON_NUGGET))
.criterion(RecipeProvider.hasItem(Items.STICK),
RecipeProvider.conditionsFromItem(Items.STICK))
.criterion(RecipeProvider.hasItem(Items.WHITE_WOOL),
RecipeProvider.conditionsFromItem(Items.WHITE_WOOL))
.offerTo(exporter);
}
private void tableLampRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output) {
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, output, 3)
.pattern("WWW")
.pattern("WTW")
.pattern(" S ")
.input('S', Items.STICK)
.input('T', Items.TORCH)
.input('W', ItemTags.WOOL)
.criterion(RecipeProvider.hasItem(Items.TORCH),
RecipeProvider.conditionsFromItem(Items.TORCH))
.criterion(RecipeProvider.hasItem(Items.STICK),
RecipeProvider.conditionsFromItem(Items.STICK))
.criterion("has_wool", RecipeProvider.conditionsFromTag(ItemTags.WOOL))
.offerTo(exporter);
}
private void vintageLampRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output) {
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, output, 3)
.pattern("NNN")
.pattern("GTG")
.pattern(" N ")
.input('N', Items.IRON_NUGGET)
.input('T', Items.TORCH)
.input('G', Items.GREEN_STAINED_GLASS)
.criterion(RecipeProvider.hasItem(Items.TORCH),
RecipeProvider.conditionsFromItem(Items.TORCH))
.criterion(RecipeProvider.hasItem(Items.IRON_NUGGET),
RecipeProvider.conditionsFromItem(Items.IRON_NUGGET))
.criterion(RecipeProvider.hasItem(Items.GREEN_STAINED_GLASS),
RecipeProvider.conditionsFromItem(Items.GREEN_STAINED_GLASS))
.offerTo(exporter);
}
private void sickleRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output) {
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, output, 1)
.pattern(" I ")
.pattern(" I")
.pattern(" S ")
.input('S', Items.STICK)
.input('I', Items.IRON_INGOT)
.criterion(RecipeProvider.hasItem(Items.STICK),
RecipeProvider.conditionsFromItem(Items.STICK))
.criterion(RecipeProvider.hasItem(Items.IRON_INGOT),
RecipeProvider.conditionsFromItem(Items.IRON_INGOT))
.offerTo(exporter);
}
private void rakeRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output) {
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, output, 1)
.pattern("III")
.pattern(" N ")
.pattern(" S ")
.input('S', Items.STICK)
.input('I', Items.IRON_INGOT)
.input('N', Items.IRON_NUGGET)
.criterion(RecipeProvider.hasItem(Items.STICK),
RecipeProvider.conditionsFromItem(Items.STICK))
.criterion(RecipeProvider.hasItem(Items.IRON_INGOT),
RecipeProvider.conditionsFromItem(Items.IRON_INGOT))
.criterion(RecipeProvider.hasItem(Items.IRON_NUGGET),
RecipeProvider.conditionsFromItem(Items.IRON_NUGGET))
.offerTo(exporter);
}
private void offerStairsAndSlab(Consumer<RecipeJsonProvider> exporter, ItemConvertible output_stairs, ItemConvertible output_slab, ItemConvertible input) {
createStairsRecipe(output_stairs, Ingredient.ofItems(input))
.criterion(hasItem(input), conditionsFromItem(input)).offerTo(exporter);
createSlabRecipe(RecipeCategory.BUILDING_BLOCKS, output_slab, Ingredient.ofItems(input))
.criterion(hasItem(input), conditionsFromItem(input)).offerTo(exporter);
offerStonecuttingRecipe(exporter, RecipeCategory.BUILDING_BLOCKS, output_stairs, input);
offerStonecuttingRecipe(exporter, RecipeCategory.BUILDING_BLOCKS, output_slab, input);
}
@Override
public void generate(Consumer<RecipeJsonProvider> exporter) {
crissCrossRecipe(exporter, NSE_Blocks.SAND_TILES, Blocks.SMOOTH_SANDSTONE, Blocks.SMOOTH_RED_SANDSTONE);
crissCrossRecipe(exporter, NSE_Blocks.LIGHT_BLUE_TILES, Blocks.STONE, Items.LIGHT_BLUE_DYE);
crissCrossRecipe(exporter, NSE_Blocks.SMALL_WHITE_TILES, Blocks.STONE, Items.WHITE_DYE);
crissCrossRecipe(exporter, NSE_Blocks.GREEN_WHITE_TILES, Blocks.POLISHED_DIORITE, Items.GREEN_DYE);
tvRecipe(exporter, NSE_Custom.TV, Items.ORANGE_DYE);
tvRecipe(exporter, NSE_Custom.BROWN_TV, Items.BROWN_DYE);
tvRecipe(exporter, NSE_Custom.RED_TV, Items.RED_DYE);
radioRecipe(exporter, NSE_Custom.RADIO_RECEIVER);
ceilingFanRecipe(exporter, NSE_Custom.CEILING_FAN);
tableLampRecipe(exporter, NSE_Custom.TABLE_LAMP);
vintageLampRecipe(exporter, NSE_Custom.VINTAGE_LAMP);
sickleRecipe(exporter, NSE_Items.SICKLE);
rakeRecipe(exporter, NSE_Items.RAKE);
// Cracked blocks
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_BRICK_TILES, NSE_Blocks.BRICK_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_GLAZED_BRICK_TILES, NSE_Blocks.GLAZED_BRICK_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_DARK_BRICK_TILES, NSE_Blocks.DARK_BRICK_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_NII_WALL_1, NSE_Blocks.NII_WALL_1);
offerCrackingRecipe(exporter, NSE_Blocks.SMALL_CRACKED_YELLOW_TILES, NSE_Blocks.SMALL_YELLOW_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_SAND_TILES, NSE_Blocks.SAND_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.SMALL_CRACKED_SAND_TILES, NSE_Blocks.SMALL_SAND_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_SAND_BRICKS, NSE_Blocks.SAND_BRICKS);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_TEAL_TILES, NSE_Blocks.TEAL_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.SMALL_CRACKED_TEAL_TILES, NSE_Blocks.SMALL_TEAL_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_GLAZED_TEAL_TILES, NSE_Blocks.GLAZED_TEAL_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_AQUAMARINE_TILES, NSE_Blocks.AQUAMARINE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.SMALL_CRACKED_AQUAMARINE_TILES, NSE_Blocks.SMALL_AQUAMARINE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_GLAZED_AQUAMARINE_TILES, NSE_Blocks.GLAZED_AQUAMARINE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.SMALL_CRACKED_DIORITE_TILES, NSE_Blocks.SMALL_DIORITE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_DIORITE_BRICKS, NSE_Blocks.DIORITE_BRICKS);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_CALCITE_TILES, NSE_Blocks.CALCITE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_DRIPSTONE_TILES, NSE_Blocks.DRIPSTONE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_DEEPSLATE_TILES, NSE_Blocks.DEEPSLATE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.SMALL_CRACKED_DEEPSLATE_TILES, NSE_Blocks.SMALL_DEEPSLATE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_LIGHT_BLUE_TILES, NSE_Blocks.LIGHT_BLUE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.SMALL_CRACKED_LIGHT_BLUE_TILES, NSE_Blocks.SMALL_LIGHT_BLUE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_GLAZED_LIGHT_BLUE_TILES, NSE_Blocks.GLAZED_LIGHT_BLUE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS, NSE_Blocks.LIGHT_BLUE_BRICKS);
offerCrackingRecipe(exporter, NSE_Blocks.SMALL_CRACKED_GRANITE_TILES, NSE_Blocks.SMALL_GRANITE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_GREEN_WHITE_TILES, NSE_Blocks.GREEN_WHITE_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_TUFF_TILES, NSE_Blocks.TUFF_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_TUFF_BRICKS, NSE_Blocks.TUFF_BRICKS);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_WHITEWASH, NSE_Blocks.WHITEWASH);
offerCrackingRecipe(exporter, NSE_Blocks.VERY_CRACKED_WHITEWASH, NSE_Blocks.CRACKED_WHITEWASH);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_WHITE_CONCRETE, NSE_Blocks.WHITE_CONCRETE);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_BEIGE_CONCRETE, NSE_Blocks.BEIGE_CONCRETE);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_BLUE_CONCRETE, NSE_Blocks.BLUE_CONCRETE);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_RED_CONCRETE, NSE_Blocks.RED_CONCRETE);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_YELLOW_CONCRETE, NSE_Blocks.YELLOW_CONCRETE);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_GREEN_CONCRETE, NSE_Blocks.GREEN_CONCRETE);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_GREEN_BRICKS, NSE_Blocks.GREEN_BRICKS);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_GREEN_BRICKS_2, NSE_Blocks.GREEN_BRICKS_2);
offerCrackingRecipe(exporter, NSE_Blocks.BIG_GREEN_TILES_CRACKED, NSE_Blocks.BIG_GREEN_TILES);
offerCrackingRecipe(exporter, NSE_Blocks.CRACKED_RED_BRICKS, NSE_Blocks.RED_BRICKS);
// Mossy variants
mossRecipe(exporter, NSE_Blocks.MOSSY_SAND_TILES, NSE_Blocks.SAND_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_SAND_BRICKS, NSE_Blocks.SAND_BRICKS);
mossRecipe(exporter, NSE_Blocks.MOSSY_TEAL_TILES, NSE_Blocks.TEAL_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_AQUAMARINE_TILES, NSE_Blocks.AQUAMARINE_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_DIORITE_BRICKS, NSE_Blocks.DIORITE_BRICKS);
mossRecipe(exporter, NSE_Blocks.MOSSY_CALCITE_TILES, NSE_Blocks.CALCITE_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_DRIPSTONE_TILES, NSE_Blocks.DRIPSTONE_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_DEEPSLATE_TILES, NSE_Blocks.DEEPSLATE_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_LIGHT_BLUE_TILES, NSE_Blocks.LIGHT_BLUE_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS, NSE_Blocks.LIGHT_BLUE_BRICKS);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_WHITE_TILES, NSE_Blocks.GREEN_WHITE_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_TUFF_TILES, NSE_Blocks.TUFF_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_TUFF_BRICKS, NSE_Blocks.TUFF_BRICKS);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_BRICKS, NSE_Blocks.GREEN_BRICKS);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_BRICKS_2, NSE_Blocks.GREEN_BRICKS_2);
mossRecipe(exporter, NSE_Blocks.MOSSY_RED_BRICKS, NSE_Blocks.RED_BRICKS);
mossRecipe(exporter, NSE_Blocks.MOSSY_BRICK_TILES, NSE_Blocks.BRICK_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_DARK_BRICK_TILES, NSE_Blocks.DARK_BRICK_TILES);
mossRecipe(exporter, NSE_Blocks.MOSSY_SAND_TILES_STAIRS, NSE_Blocks.SAND_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_SAND_TILES_SLAB, NSE_Blocks.SAND_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_SAND_BRICKS_STAIRS, NSE_Blocks.SAND_BRICKS_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_SAND_BRICKS_SLAB, NSE_Blocks.SAND_BRICKS_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_BRICK_TILES_STAIRS, NSE_Blocks.BRICK_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_BRICK_TILES_SLAB, NSE_Blocks.BRICK_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_DARK_BRICK_TILES_STAIRS, NSE_Blocks.DARK_BRICK_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_DARK_BRICK_TILES_SLAB, NSE_Blocks.DARK_BRICK_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_RED_BRICKS_STAIRS, NSE_Blocks.RED_BRICKS_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_RED_BRICKS_SLAB, NSE_Blocks.RED_BRICKS_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_TEAL_TILES_STAIRS, NSE_Blocks.TEAL_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_TEAL_TILES_SLAB, NSE_Blocks.TEAL_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_BRICKS_STAIRS, NSE_Blocks.GREEN_BRICKS_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_BRICKS_SLAB, NSE_Blocks.GREEN_BRICKS_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_BRICKS_2_STAIRS, NSE_Blocks.GREEN_BRICKS_2_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_BRICKS_2_SLAB, NSE_Blocks.GREEN_BRICKS_2_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_AQUAMARINE_TILES_STAIRS, NSE_Blocks.AQUAMARINE_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_AQUAMARINE_TILES_SLAB, NSE_Blocks.AQUAMARINE_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_DIORITE_BRICKS_STAIRS, NSE_Blocks.DIORITE_BRICKS_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_DIORITE_BRICKS_SLAB, NSE_Blocks.DIORITE_BRICKS_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_CALCITE_TILES_STAIRS, NSE_Blocks.CALCITE_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_CALCITE_TILES_SLAB, NSE_Blocks.CALCITE_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_DRIPSTONE_TILES_STAIRS, NSE_Blocks.DRIPSTONE_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_DRIPSTONE_TILES_SLAB, NSE_Blocks.DRIPSTONE_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_DEEPSLATE_TILES_STAIRS, NSE_Blocks.DEEPSLATE_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_DEEPSLATE_TILES_SLAB, NSE_Blocks.DEEPSLATE_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_STAIRS, NSE_Blocks.LIGHT_BLUE_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_SLAB, NSE_Blocks.LIGHT_BLUE_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_STAIRS, NSE_Blocks.LIGHT_BLUE_BRICKS_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_SLAB, NSE_Blocks.LIGHT_BLUE_BRICKS_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_WHITE_TILES_STAIRS, NSE_Blocks.GREEN_WHITE_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_GREEN_WHITE_TILES_SLAB, NSE_Blocks.GREEN_WHITE_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_TUFF_TILES_STAIRS, NSE_Blocks.TUFF_TILES_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_TUFF_TILES_SLAB, NSE_Blocks.TUFF_TILES_SLAB);
mossRecipe(exporter, NSE_Blocks.MOSSY_TUFF_BRICKS_STAIRS, NSE_Blocks.TUFF_BRICKS_STAIRS);
mossRecipe(exporter, NSE_Blocks.MOSSY_TUFF_BRICKS_SLAB, NSE_Blocks.TUFF_BRICKS_SLAB);
// Dirty blocks recipe
dirtyRecipe(exporter, NSE_Blocks.DIRTY_AQUAMARINE_TILES, NSE_Blocks.AQUAMARINE_TILES);
dirtyRecipe(exporter, NSE_Blocks.DIRTY_AQUAMARINE_TILES_SLAB, NSE_Blocks.AQUAMARINE_TILES_SLAB);
dirtyRecipe(exporter, NSE_Blocks.DIRTY_AQUAMARINE_TILES_STAIRS, NSE_Blocks.AQUAMARINE_TILES_STAIRS);
dirtyRecipe(exporter, NSE_Blocks.DIRTY_BRICK_TILES, NSE_Blocks.BRICK_TILES);
dirtyRecipe(exporter, NSE_Blocks.DIRTY_BRICK_TILES_SLAB, NSE_Blocks.BRICK_TILES_SLAB);
dirtyRecipe(exporter, NSE_Blocks.DIRTY_BRICK_TILES_STAIRS, NSE_Blocks.BRICK_TILES_STAIRS);
dirtyRecipe(exporter, NSE_Blocks.DIRTY_DARK_BRICK_TILES, NSE_Blocks.DARK_BRICK_TILES);
dirtyRecipe(exporter, NSE_Blocks.DIRTY_DARK_BRICK_TILES_SLAB, NSE_Blocks.DARK_BRICK_TILES_SLAB);
dirtyRecipe(exporter, NSE_Blocks.DIRTY_DARK_BRICK_TILES_STAIRS, NSE_Blocks.DARK_BRICK_TILES_STAIRS);
// Warning stripes
warningStripeRecipe(exporter, NSE_Blocks.INDUSTRIAL_WARNING, Items.BLACK_DYE);
warningStripeRecipe(exporter, NSE_Blocks.RED_WARNING, Items.RED_DYE);
warningStripeRecipe(exporter, NSE_Blocks.BLUE_WARNING, Items.BLUE_DYE);
warningStripeRecipe(exporter, NSE_Blocks.LIGHT_BLUE_WARNING, Items.LIGHT_BLUE_DYE);
warningStripeRecipe(exporter, NSE_Blocks.CYAN_WARNING, Items.CYAN_DYE);
warningStripeRecipe(exporter, NSE_Blocks.YELLOW_WARNING, Items.YELLOW_DYE);
warningStripeRecipe(exporter, NSE_Blocks.ORANGE_WARNING, Items.ORANGE_DYE);
warningStripeRecipe(exporter, NSE_Blocks.GREEN_WARNING, Items.GREEN_DYE);
warningStripeRecipe(exporter, NSE_Blocks.LIME_WARNING, Items.LIME_DYE);
warningStripeRecipe(exporter, NSE_Blocks.PURPLE_WARNING, Items.PURPLE_DYE);
warningStripeRecipe(exporter, NSE_Blocks.MAGENTA_WARNING, Items.MAGENTA_DYE);
warningStripeRecipe(exporter, NSE_Blocks.GRAY_WARNING, Items.GRAY_DYE);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.SAND_TILES);
list.add(NSE_Blocks.SAND_BRICKS);
list.add(NSE_Blocks.SMALL_SAND_TILES);
list.add(NSE_Blocks.BIG_SAND_TILES);
list.add(NSE_Blocks.BIG_SAND_BRICKS);
list.add(NSE_Blocks.CROSS_SAND_TILES);
list.add(NSE_Blocks.HERRINGBONE_SAND_TILES);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.TEAL_TILES);
list.add(NSE_Blocks.SMALL_TEAL_TILES);
list.add(NSE_Blocks.GLAZED_TEAL_TILES);
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);
list.add(NSE_Blocks.SMALL_DIORITE_TILES);
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);
list.add(NSE_Blocks.VARIATED_LIGHT_BLUE_TILES);
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);
list.add(Blocks.ACACIA_PLANKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CROSS_OAK_PLANKS);
list.add(NSE_Blocks.HERRINGBONE_OAK_PLANKS);
list.add(Blocks.OAK_PLANKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CROSS_BIRCH_PLANKS);
list.add(NSE_Blocks.HERRINGBONE_BIRCH_PLANKS);
list.add(Blocks.BIRCH_PLANKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CROSS_CRIMSON_PLANKS);
list.add(NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS);
list.add(Blocks.CRIMSON_PLANKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CROSS_DARK_OAK_PLANKS);
list.add(NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS);
list.add(Blocks.DARK_OAK_PLANKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CROSS_JUNGLE_PLANKS);
list.add(NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS);
list.add(Blocks.JUNGLE_PLANKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CROSS_MANGROVE_PLANKS);
list.add(NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS);
list.add(Blocks.MANGROVE_PLANKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.CROSS_SPRUCE_PLANKS);
list.add(NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS);
list.add(Blocks.SPRUCE_PLANKS);
}), RecipeCategory.BUILDING_BLOCKS);
stoneCuttingCategory(exporter, Util.make(Lists.newArrayList(), list -> {
list.add(NSE_Blocks.BRICK_TILES);
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);
diceRecipe(exporter, NSE_Items.DICE_D4);
diceRecipe(exporter, NSE_Items.DICE_D6);
diceRecipe(exporter, NSE_Items.DICE_D20);
offerStonecuttingRecipe(exporter, RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.CHISELED_MANGROVE_DOOR, Blocks.MANGROVE_DOOR);
offerStonecuttingRecipe(exporter, RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.CHISELED_OAK_DOOR, Blocks.OAK_DOOR);
offerStonecuttingRecipe(exporter, RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.CHISELED_SPRUCE_DOOR, Blocks.SPRUCE_DOOR);
offerStonecuttingRecipe(exporter, RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.CHISELED_BIRCH_DOOR, Blocks.BIRCH_DOOR);
ShapedRecipeJsonBuilder.create(RecipeCategory.DECORATIONS, NSE_Custom.LIGHT_BULB_LAMP, 1)
.input('X', Items.IRON_INGOT).input('Y', Items.IRON_NUGGET).input('Z', NSE_Items.LIGHT_BULB)
.pattern(" X ").pattern(" Y ").pattern(" Z ")
.criterion(hasItem(NSE_Items.LIGHT_BULB), conditionsFromItem(NSE_Items.LIGHT_BULB)).offerTo(exporter);
ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.NII_FLOOR, 4)
.input('#', Items.DIORITE).input('G', Items.GRANITE).input('C', Items.COBBLESTONE)
.pattern("#G").pattern("GC")
.criterion(hasItem(Items.GRANITE), conditionsFromItem(Items.GRANITE))
.criterion(hasItem(Items.DIORITE), conditionsFromItem(Items.DIORITE))
.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);
ShapelessRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, NSE_Blocks.GREEN_BRICKS_2, 2)
.input(Items.BRICKS).input(NSE_Blocks.GREEN_BRICKS)
.criterion(hasItem(NSE_Blocks.GREEN_BRICKS), conditionsFromItem(NSE_Blocks.GREEN_BRICKS))
.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);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_SAND_TILES_STAIRS, NSE_Blocks.MOSSY_SAND_TILES_SLAB, NSE_Blocks.MOSSY_SAND_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_SAND_TILES_STAIRS, NSE_Blocks.HERRINGBONE_SAND_TILES_SLAB, NSE_Blocks.HERRINGBONE_SAND_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_SAND_TILES_STAIRS, NSE_Blocks.CROSS_SAND_TILES_SLAB, NSE_Blocks.CROSS_SAND_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.SAND_BRICKS_STAIRS, NSE_Blocks.SAND_BRICKS_SLAB, NSE_Blocks.SAND_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_SAND_BRICKS_STAIRS, NSE_Blocks.CRACKED_SAND_BRICKS_SLAB, NSE_Blocks.CRACKED_SAND_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_SAND_BRICKS_STAIRS, NSE_Blocks.MOSSY_SAND_BRICKS_SLAB, NSE_Blocks.MOSSY_SAND_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.BIG_SAND_BRICKS_STAIRS, NSE_Blocks.BIG_SAND_BRICKS_SLAB, NSE_Blocks.BIG_SAND_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.BRICK_TILES_STAIRS, NSE_Blocks.BRICK_TILES_SLAB, NSE_Blocks.BRICK_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_BRICK_TILES_STAIRS, NSE_Blocks.CRACKED_BRICK_TILES_SLAB, NSE_Blocks.CRACKED_BRICK_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_BRICK_TILES_STAIRS, NSE_Blocks.MOSSY_BRICK_TILES_SLAB, NSE_Blocks.MOSSY_BRICK_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.DIRTY_BRICK_TILES_STAIRS, NSE_Blocks.DIRTY_BRICK_TILES_SLAB, NSE_Blocks.DIRTY_BRICK_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.DARK_BRICK_TILES_STAIRS, NSE_Blocks.DARK_BRICK_TILES_SLAB, NSE_Blocks.DARK_BRICK_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_DARK_BRICK_TILES_STAIRS, NSE_Blocks.CRACKED_DARK_BRICK_TILES_SLAB, NSE_Blocks.CRACKED_DARK_BRICK_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_DARK_BRICK_TILES_STAIRS, NSE_Blocks.MOSSY_DARK_BRICK_TILES_SLAB, NSE_Blocks.MOSSY_DARK_BRICK_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.DIRTY_DARK_BRICK_TILES_STAIRS, NSE_Blocks.DIRTY_DARK_BRICK_TILES_SLAB, NSE_Blocks.DIRTY_DARK_BRICK_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.RED_BRICKS_STAIRS, NSE_Blocks.RED_BRICKS_SLAB, NSE_Blocks.RED_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_RED_BRICKS_STAIRS, NSE_Blocks.CRACKED_RED_BRICKS_SLAB, NSE_Blocks.CRACKED_RED_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_RED_BRICKS_STAIRS, NSE_Blocks.MOSSY_RED_BRICKS_SLAB, NSE_Blocks.MOSSY_RED_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.TEAL_TILES_STAIRS, NSE_Blocks.TEAL_TILES_SLAB, NSE_Blocks.TEAL_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_TEAL_TILES_STAIRS, NSE_Blocks.CRACKED_TEAL_TILES_SLAB, NSE_Blocks.CRACKED_TEAL_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_TEAL_TILES_STAIRS, NSE_Blocks.MOSSY_TEAL_TILES_SLAB, NSE_Blocks.MOSSY_TEAL_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.VARIATED_TEAL_TILES_STAIRS, NSE_Blocks.VARIATED_TEAL_TILES_SLAB, NSE_Blocks.VARIATED_TEAL_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.GREEN_BRICKS_STAIRS, NSE_Blocks.GREEN_BRICKS_SLAB, NSE_Blocks.GREEN_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_GREEN_BRICKS_STAIRS, NSE_Blocks.CRACKED_GREEN_BRICKS_SLAB, NSE_Blocks.CRACKED_GREEN_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_GREEN_BRICKS_STAIRS, NSE_Blocks.MOSSY_GREEN_BRICKS_SLAB, NSE_Blocks.MOSSY_GREEN_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.GREEN_BRICKS_2_STAIRS, NSE_Blocks.GREEN_BRICKS_2_SLAB, NSE_Blocks.GREEN_BRICKS_2);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_GREEN_BRICKS_2_STAIRS, NSE_Blocks.CRACKED_GREEN_BRICKS_2_SLAB, NSE_Blocks.CRACKED_GREEN_BRICKS_2);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_GREEN_BRICKS_2_STAIRS, NSE_Blocks.MOSSY_GREEN_BRICKS_2_SLAB, NSE_Blocks.MOSSY_GREEN_BRICKS_2);
offerStairsAndSlab(exporter, NSE_Blocks.AQUAMARINE_TILES_STAIRS, NSE_Blocks.AQUAMARINE_TILES_SLAB, NSE_Blocks.AQUAMARINE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_AQUAMARINE_TILES_STAIRS, NSE_Blocks.CRACKED_AQUAMARINE_TILES_SLAB, NSE_Blocks.CRACKED_AQUAMARINE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_AQUAMARINE_TILES_STAIRS, NSE_Blocks.MOSSY_AQUAMARINE_TILES_SLAB, NSE_Blocks.MOSSY_AQUAMARINE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.DIRTY_AQUAMARINE_TILES_STAIRS, NSE_Blocks.DIRTY_AQUAMARINE_TILES_SLAB, NSE_Blocks.DIRTY_AQUAMARINE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.DIORITE_BRICKS_STAIRS, NSE_Blocks.DIORITE_BRICKS_SLAB, NSE_Blocks.DIORITE_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_DIORITE_BRICKS_STAIRS, NSE_Blocks.CRACKED_DIORITE_BRICKS_SLAB, NSE_Blocks.CRACKED_DIORITE_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_DIORITE_BRICKS_STAIRS, NSE_Blocks.MOSSY_DIORITE_BRICKS_SLAB, NSE_Blocks.MOSSY_DIORITE_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.CALCITE_TILES_STAIRS, NSE_Blocks.CALCITE_TILES_SLAB, NSE_Blocks.CALCITE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_CALCITE_TILES_STAIRS, NSE_Blocks.CRACKED_CALCITE_TILES_SLAB, NSE_Blocks.CRACKED_CALCITE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_CALCITE_TILES_STAIRS, NSE_Blocks.MOSSY_CALCITE_TILES_SLAB, NSE_Blocks.MOSSY_CALCITE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.DRIPSTONE_TILES_STAIRS, NSE_Blocks.DRIPSTONE_TILES_SLAB, NSE_Blocks.DRIPSTONE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_DRIPSTONE_TILES_STAIRS, NSE_Blocks.CRACKED_DRIPSTONE_TILES_SLAB, NSE_Blocks.CRACKED_DRIPSTONE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_DRIPSTONE_TILES_STAIRS, NSE_Blocks.MOSSY_DRIPSTONE_TILES_SLAB, NSE_Blocks.MOSSY_DRIPSTONE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.DEEPSLATE_TILES_STAIRS, NSE_Blocks.DEEPSLATE_TILES_SLAB, NSE_Blocks.DEEPSLATE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_DEEPSLATE_TILES_STAIRS, NSE_Blocks.CRACKED_DEEPSLATE_TILES_SLAB, NSE_Blocks.CRACKED_DEEPSLATE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_DEEPSLATE_TILES_STAIRS, NSE_Blocks.MOSSY_DEEPSLATE_TILES_SLAB, NSE_Blocks.MOSSY_DEEPSLATE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.LIGHT_BLUE_TILES_STAIRS, NSE_Blocks.LIGHT_BLUE_TILES_SLAB, NSE_Blocks.LIGHT_BLUE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_LIGHT_BLUE_TILES_STAIRS, NSE_Blocks.CRACKED_LIGHT_BLUE_TILES_SLAB, NSE_Blocks.CRACKED_LIGHT_BLUE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_STAIRS, NSE_Blocks.MOSSY_LIGHT_BLUE_TILES_SLAB, NSE_Blocks.MOSSY_LIGHT_BLUE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.VARIATED_LIGHT_BLUE_TILES_STAIRS, NSE_Blocks.VARIATED_LIGHT_BLUE_TILES_SLAB, NSE_Blocks.VARIATED_LIGHT_BLUE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.LIGHT_BLUE_BRICKS_STAIRS, NSE_Blocks.LIGHT_BLUE_BRICKS_SLAB, NSE_Blocks.LIGHT_BLUE_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS_STAIRS, NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS_SLAB, NSE_Blocks.CRACKED_LIGHT_BLUE_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_STAIRS, NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS_SLAB, NSE_Blocks.MOSSY_LIGHT_BLUE_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.GREEN_WHITE_TILES_STAIRS, NSE_Blocks.GREEN_WHITE_TILES_SLAB, NSE_Blocks.GREEN_WHITE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_GREEN_WHITE_TILES_STAIRS, NSE_Blocks.CRACKED_GREEN_WHITE_TILES_SLAB, NSE_Blocks.CRACKED_GREEN_WHITE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_GREEN_WHITE_TILES_STAIRS, NSE_Blocks.MOSSY_GREEN_WHITE_TILES_SLAB, NSE_Blocks.MOSSY_GREEN_WHITE_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.TUFF_TILES_STAIRS, NSE_Blocks.TUFF_TILES_SLAB, NSE_Blocks.TUFF_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_TUFF_TILES_STAIRS, NSE_Blocks.CRACKED_TUFF_TILES_SLAB, NSE_Blocks.CRACKED_TUFF_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_TUFF_TILES_STAIRS, NSE_Blocks.MOSSY_TUFF_TILES_SLAB, NSE_Blocks.MOSSY_TUFF_TILES);
offerStairsAndSlab(exporter, NSE_Blocks.TUFF_BRICKS_STAIRS, NSE_Blocks.TUFF_BRICKS_SLAB, NSE_Blocks.TUFF_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_TUFF_BRICKS_STAIRS, NSE_Blocks.CRACKED_TUFF_BRICKS_SLAB, NSE_Blocks.CRACKED_TUFF_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.MOSSY_TUFF_BRICKS_STAIRS, NSE_Blocks.MOSSY_TUFF_BRICKS_SLAB, NSE_Blocks.MOSSY_TUFF_BRICKS);
offerStairsAndSlab(exporter, NSE_Blocks.WHITE_CONCRETE_STAIRS, NSE_Blocks.WHITE_CONCRETE_SLAB, NSE_Blocks.WHITE_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_WHITE_CONCRETE_STAIRS, NSE_Blocks.CRACKED_WHITE_CONCRETE_SLAB, NSE_Blocks.CRACKED_WHITE_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.BEIGE_CONCRETE_STAIRS, NSE_Blocks.BEIGE_CONCRETE_SLAB, NSE_Blocks.BEIGE_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_BEIGE_CONCRETE_STAIRS, NSE_Blocks.CRACKED_BEIGE_CONCRETE_SLAB, NSE_Blocks.CRACKED_BEIGE_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.BLUE_CONCRETE_STAIRS, NSE_Blocks.BLUE_CONCRETE_SLAB, NSE_Blocks.BLUE_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_BLUE_CONCRETE_STAIRS, NSE_Blocks.CRACKED_BLUE_CONCRETE_SLAB, NSE_Blocks.CRACKED_BLUE_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.RED_CONCRETE_STAIRS, NSE_Blocks.RED_CONCRETE_SLAB, NSE_Blocks.RED_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_RED_CONCRETE_STAIRS, NSE_Blocks.CRACKED_RED_CONCRETE_SLAB, NSE_Blocks.CRACKED_RED_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.YELLOW_CONCRETE_STAIRS, NSE_Blocks.YELLOW_CONCRETE_SLAB, NSE_Blocks.YELLOW_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_YELLOW_CONCRETE_STAIRS, NSE_Blocks.CRACKED_YELLOW_CONCRETE_SLAB, NSE_Blocks.CRACKED_YELLOW_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.GREEN_CONCRETE_STAIRS, NSE_Blocks.GREEN_CONCRETE_SLAB, NSE_Blocks.GREEN_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.CRACKED_GREEN_CONCRETE_STAIRS, NSE_Blocks.CRACKED_GREEN_CONCRETE_SLAB, NSE_Blocks.CRACKED_GREEN_CONCRETE);
offerStairsAndSlab(exporter, NSE_Blocks.NII_FLOOR_STAIRS, NSE_Blocks.NII_FLOOR_SLAB, NSE_Blocks.NII_FLOOR);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_STAIRS, NSE_Blocks.HERRINGBONE_ACACIA_PLANKS_SLAB, NSE_Blocks.HERRINGBONE_ACACIA_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_ACACIA_PLANKS_STAIRS, NSE_Blocks.CROSS_ACACIA_PLANKS_SLAB, NSE_Blocks.CROSS_ACACIA_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_OAK_PLANKS_STAIRS, NSE_Blocks.HERRINGBONE_OAK_PLANKS_SLAB, NSE_Blocks.HERRINGBONE_OAK_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_OAK_PLANKS_STAIRS, NSE_Blocks.CROSS_OAK_PLANKS_SLAB, NSE_Blocks.CROSS_OAK_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_STAIRS, NSE_Blocks.HERRINGBONE_BIRCH_PLANKS_SLAB, NSE_Blocks.HERRINGBONE_BIRCH_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_BIRCH_PLANKS_STAIRS, NSE_Blocks.CROSS_BIRCH_PLANKS_SLAB, NSE_Blocks.CROSS_BIRCH_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_STAIRS, NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS_SLAB, NSE_Blocks.HERRINGBONE_CRIMSON_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_CRIMSON_PLANKS_STAIRS, NSE_Blocks.CROSS_CRIMSON_PLANKS_SLAB, NSE_Blocks.CROSS_CRIMSON_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_STAIRS, NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS_SLAB, NSE_Blocks.HERRINGBONE_DARK_OAK_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_DARK_OAK_PLANKS_STAIRS, NSE_Blocks.CROSS_DARK_OAK_PLANKS_SLAB, NSE_Blocks.CROSS_DARK_OAK_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_STAIRS, NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS_SLAB, NSE_Blocks.HERRINGBONE_JUNGLE_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_JUNGLE_PLANKS_STAIRS, NSE_Blocks.CROSS_JUNGLE_PLANKS_SLAB, NSE_Blocks.CROSS_JUNGLE_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_STAIRS, NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS_SLAB, NSE_Blocks.HERRINGBONE_MANGROVE_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_MANGROVE_PLANKS_STAIRS, NSE_Blocks.CROSS_MANGROVE_PLANKS_SLAB, NSE_Blocks.CROSS_MANGROVE_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_STAIRS, NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS_SLAB, NSE_Blocks.HERRINGBONE_SPRUCE_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.CROSS_SPRUCE_PLANKS_STAIRS, NSE_Blocks.CROSS_SPRUCE_PLANKS_SLAB, NSE_Blocks.CROSS_SPRUCE_PLANKS);
offerStairsAndSlab(exporter, NSE_Blocks.HERRINGBONE_PARQUET_STAIRS, NSE_Blocks.HERRINGBONE_PARQUET_SLAB, NSE_Blocks.HERRINGBONE_PARQUET);
offerStairsAndSlab(exporter, NSE_Blocks.STRAIGHT_PARQUET_STAIRS, NSE_Blocks.STRAIGHT_PARQUET_SLAB, NSE_Blocks.STRAIGHT_PARQUET);
offerStairsAndSlab(exporter, NSE_Blocks.SEPARATED_PARQUET_STAIRS, NSE_Blocks.SEPARATED_PARQUET_SLAB, NSE_Blocks.SEPARATED_PARQUET);
offerStairsAndSlab(exporter, NSE_Blocks.GREEN_LINOLEUM_STAIRS, NSE_Blocks.GREEN_LINOLEUM_SLAB, NSE_Blocks.GREEN_LINOLEUM);
offerStairsAndSlab(exporter, NSE_Blocks.BLUE_LINOLEUM_STAIRS, NSE_Blocks.BLUE_LINOLEUM_SLAB, NSE_Blocks.BLUE_LINOLEUM);
offerStairsAndSlab(exporter, NSE_Blocks.RED_LINOLEUM_STAIRS, NSE_Blocks.RED_LINOLEUM_SLAB, NSE_Blocks.RED_LINOLEUM);
offerStairsAndSlab(exporter, NSE_Blocks.GRAY_LINOLEUM_STAIRS, NSE_Blocks.GRAY_LINOLEUM_SLAB, NSE_Blocks.GRAY_LINOLEUM);
offerStairsAndSlab(exporter, NSE_Blocks.ORANGE_LINOLEUM_STAIRS, NSE_Blocks.ORANGE_LINOLEUM_SLAB, NSE_Blocks.ORANGE_LINOLEUM);
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);
}
}

View file

@ -1,4 +1,4 @@
package su.a71.new_soviet.entity;
package su.a71.new_soviet.entities;
import net.minecraft.block.BlockState;
import net.minecraft.block.entity.BlockEntity;

View file

@ -25,7 +25,7 @@ import su.a71.new_soviet.blocks.lamps.TableLampBlock;
import su.a71.new_soviet.blocks.lamps.VintageLampBlock;
import su.a71.new_soviet.blocks.lamps.lamp_post.LampPostBaseBlock;
import su.a71.new_soviet.blocks.lamps.lamp_post.LampPostLampBlock;
import su.a71.new_soviet.entity.TVBlockEntity;
import su.a71.new_soviet.entities.TVBlockEntity;
import su.a71.new_soviet.util.Shapes;
import java.util.List;

View file

@ -10,7 +10,6 @@ import net.minecraft.text.Text;
import net.minecraft.util.Identifier;
import net.minecraft.util.Rarity;
import su.a71.new_soviet.materials.NSE_ToolMaterials;
import su.a71.new_soviet.items.CigaretteItem;
import su.a71.new_soviet.items.DiceItem;
import su.a71.new_soviet.items.RakeItem;

View file

@ -1,4 +1,4 @@
package su.a71.new_soviet.materials;
package su.a71.new_soviet.registration;
import net.fabricmc.yarn.constants.MiningLevels;
import net.minecraft.item.Items;