Jump to content

[1.20.4] my BlockEntity Model is moved out of place, Block Entity Menu Force armor slots to allow only armor items ?


Recommended Posts

Good days 
I finnaly manage to fix and get a working gui from BlockItem and from BlockEntity

the next issues i have to fix is this the block Entity model for some reason is moved to the south west 
this briefcase model must be centered but is moved to a side, i have nothing weird in the code but this is happening

	// ########## ########## ########## ##########
@Override
public RenderShape getRenderShape(BlockState blkstate) {
    return RenderShape.MODEL;
}
	

2024-03-04-20-24-33.png

the block model is out of place However The hitBox of the block is right in place

Spoiler

				
			package mercmod.blocks.classes;
		
		
		import mercmod.blockentitys.BlockEntityBriefcase;
		import mercmod.blocks.BlockInit;
		import mercmod.util.Block_Helper;
		import mercmod.util.Postate;
		import net.minecraft.core.BlockPos;
		import net.minecraft.core.Direction;
		import net.minecraft.nbt.CompoundTag;
		import net.minecraft.network.chat.Component;
		import net.minecraft.world.InteractionHand;
		import net.minecraft.world.InteractionResult;
		import net.minecraft.world.MenuProvider;
		import net.minecraft.world.entity.LivingEntity;
		import net.minecraft.world.entity.item.ItemEntity;
		import net.minecraft.world.entity.player.Player;
		import net.minecraft.world.item.Item;
		import net.minecraft.world.item.ItemStack;
		import net.minecraft.world.item.Items;
		import net.minecraft.world.item.context.BlockPlaceContext;
		import net.minecraft.world.level.BlockGetter;
		import net.minecraft.world.level.Explosion;
		import net.minecraft.world.level.Level;
		import net.minecraft.world.level.LevelAccessor;
		import net.minecraft.world.level.block.*;
		import net.minecraft.world.level.block.entity.BlockEntity;
		import net.minecraft.world.level.block.state.BlockState;
		import net.minecraft.world.level.block.state.StateDefinition;
		import net.minecraft.world.level.block.state.properties.BlockStateProperties;
		import net.minecraft.world.level.block.state.properties.BooleanProperty;
		import net.minecraft.world.level.block.state.properties.DirectionProperty;
		import net.minecraft.world.level.material.Fluid;
		import net.minecraft.world.level.material.FluidState;
		import net.minecraft.world.level.material.Fluids;
		import net.minecraft.world.level.pathfinder.PathComputationType;
		import net.minecraft.world.phys.BlockHitResult;
		import net.minecraft.world.phys.shapes.BooleanOp;
		import net.minecraft.world.phys.shapes.CollisionContext;
		import net.minecraft.world.phys.shapes.Shapes;
		import net.minecraft.world.phys.shapes.VoxelShape;
		import net.minecraftforge.common.capabilities.ForgeCapabilities;
		//import net.minecraftforge.network.NetworkHooks;
		import net.minecraftforge.common.extensions.IForgeServerPlayer;
		import org.jetbrains.annotations.NotNull;
		
		import javax.annotation.Nullable;
		import java.io.IOException;
		import java.util.HashMap;
		import java.util.Map;
		
		//import net.minecraft.item.Item;
		
		//https://youtu.be/jo0BTisGpJk?t=799
		
		//########## ########## ########## ##########
		public class briefcase extends Block implements EntityBlock, SimpleWaterloggedBlock {
		
		// ########## ########## ########## ##########
		// ########## ########## ########## ##########
		
		public static Block waterblock = Blocks.WATER;
		public static BlockState waterstate = Blocks.WATER.defaultBlockState();
		public static final DirectionProperty FACING = BlockStateProperties.HORIZONTAL_FACING;
		public static final BooleanProperty DOWN = BlockStateProperties.DOWN;
		public static final BooleanProperty OPEN = BlockStateProperties.OPEN;
		public static final BooleanProperty WATERLOGGED = BlockStateProperties.WATERLOGGED;
		
		
		protected static final VoxelShape FULL_AABB = Block.box(0.0D, 0.0D, 0.0D, 16.0D, 16.0D, 16.0D);
		protected static final VoxelShape NO_AABB = Block.box(0.0D, 0.0D, 0.0D, 0.0D, 0.0D, 0.0D);
		
		
		// ########## ########## ########## ##########
		//@Override
		public static String getType() {
		return "biefcase";
		}
		
		// ########## ########## ########## ##########
		public briefcase(Properties properties, String json, Boolean crear_archivos) {
		super(properties);
		this.registerDefaultState(this.stateDefinition.any()
		.setValue(FACING, Direction.NORTH)
		.setValue(DOWN, Boolean.valueOf(false))
		.setValue(OPEN, Boolean.valueOf(false))
		.setValue(WATERLOGGED, Boolean.valueOf(false))
		);
		
		try {
		if (crear_archivos) {
		//########## ########## ##########
		//Crear los archivo de texto
		HashMap<String, String> datamap = Block_Helper.fix_json(json);
		datamap.put("typefolder", getType());
		
		Block_Helper.blockstate_json(datamap, blockstate_json);
		
		Map<String, String> files = new HashMap<String, String>();
		files.put("briefcase_base_0", briefcase_base_0);
		files.put("briefcase_base_1", briefcase_base_1);
		files.put("briefcase_base_2", briefcase_base_2);
		files.put("briefcase_base_3", briefcase_base_3);
		
		files.put("briefcase_base", briefcase_base);
		
		Block_Helper.parent_block_json(datamap, files);
		
		files.clear();
		//files.put("parent_tubo", block_json);
		//Block_Helper.block_json(datamap, block_json);
		//files.put( datamap.get("name") + "_base", block_json_base);
		//files.put( datamap.get("name") + "_tapa" , block_json_tapa);
		//files.put( datamap.get("name") + "_open" , block_json_open);
		//Block_Helper.block_json(datamap, files);
		
		
		Block_Helper.blockitem_json(datamap, blockitem_json);
		//Block_Helper.loottable_json(datamap, loottable_json);
		Block_Helper.tags(datamap);
		//Block_Helper.mesa_de_crafteo_json(datamap, crafthing_json);
		Block_Helper.mesa_de_corte_json(datamap, cutthing_json);
		//Block_Helper.smelthing_json(datamap, smelthing_json );
		
		}
		} catch (IOException e) {
		e.printStackTrace();
		}
		}
		// ########## ########## ########## ##########
		// six ways waterloggable panel
		
		//--------------
		//name: case
		public static final VoxelShape case_N = Shapes.join( //Z3 NORTH
		Block.box(1.0, 0.0, 6.0,
		15.0, 10.0, 10.0 ),
		Block.box(5.5, 10.0, 7.5,
		10.5, 11.5, 8.5 ), BooleanOp.OR);
		
		public static final VoxelShape case_S = Shapes.join( //Z0 SOUTH
		Block.box(1.0, 0.0, 6.0,
		15.0, 10.0, 10.0 ),
		Block.box(5.5, 10.0, 7.5,
		10.5, 11.5, 8.5 ), BooleanOp.OR);
		
		public static final VoxelShape case_W = Shapes.join( //X3 WEST
		Block.box(6.0, 0.0, 1.0,
		10.0, 10.0, 15.0 ),
		Block.box(7.5, 10.0, 5.5,
		8.5, 11.5, 10.5 ), BooleanOp.OR);
		
		public static final VoxelShape case_E = Shapes.join( //X0 EAST
		Block.box(6.0, 0.0, 1.0,
		10.0, 10.0, 15.0 ),
		Block.box(7.5, 10.0, 5.5,
		8.5, 11.5, 10.5 ), BooleanOp.OR);
		
		public static final VoxelShape case_U = Shapes.join( //Y3 UP
		Block.box(1.0, 6.0, 6.0,
		15.0, 10.0, 16.0 ),
		Block.box(5.5, 7.5, 4.5,
		10.5, 8.5, 6.0 ), BooleanOp.OR);
		
		public static final VoxelShape case_D = Shapes.join( //Y0 DOWN
		Block.box(1.0, 6.0, 0.0,
		15.0, 10.0, 10.0 ),
		Block.box(5.5, 7.5, 10.0,
		10.5, 8.5, 11.5 ), BooleanOp.OR);
		
		
		//--------------
		//name: case2
		public static final VoxelShape case2_N = Shapes.join( //Z3 NORTH
		Block.box(5.5, 1.5, 0.5,
		10.5, 2.5, 2.0 ),
		Block.box(1.0, 0.0, 2.0,
		15.0, 4.0, 12.0 ), BooleanOp.OR);
		
		public static final VoxelShape case2_S = Shapes.join( //Z0 SOUTH
		Block.box(5.5, 1.5, 14.0,
		10.5, 2.5, 15.5 ),
		Block.box(1.0, 0.0, 4.0,
		15.0, 4.0, 14.0 ), BooleanOp.OR);
		
		public static final VoxelShape case2_W = Shapes.join( //X3 WEST
		Block.box(0.5, 1.5, 5.5,
		2.0, 2.5, 10.5 ),
		Block.box(2.0, 0.0, 1.0,
		12.0, 4.0, 15.0 ), BooleanOp.OR);
		
		public static final VoxelShape case2_E = Shapes.join( //X0 EAST
		Block.box(14.0, 1.5, 5.5,
		15.5, 2.5, 10.5 ),
		Block.box(4.0, 0.0, 1.0,
		14.0, 4.0, 15.0 ), BooleanOp.OR);
		
		public static final VoxelShape case2_U = Shapes.join( //Y3 UP
		Block.box(5.5, 0.5, 13.5,
		10.5, 2.0, 14.5 ),
		Block.box(1.0, 2.0, 12.0,
		15.0, 12.0, 16.0 ), BooleanOp.OR);
		
		public static final VoxelShape case2_D = Shapes.join( //Y0 DOWN
		Block.box(5.5, 14.0, 1.5,
		10.5, 15.5, 2.5 ),
		Block.box(1.0, 4.0, 0.0,
		15.0, 14.0, 4.0 ), BooleanOp.OR);
		
		
		//---------- ---------- ----------
		//name: case3
		public static final VoxelShape case3_N = Shapes.join( //Z3 NORTH
		Shapes.join(
		Block.box(5.5, 1.5, 0.5,
		10.5, 2.5, 2.0 ),
		Block.box(1.0, 0.0, 2.0,
		15.0, 3.0, 12.0 ), BooleanOp.OR),
		Block.box(1.0, 0.0, 12.0,
		15.0, 12.0, 16.0 ), BooleanOp.OR);
		public static final VoxelShape case3_S = Shapes.join( //Z0 SOUTH
		Shapes.join(
		Block.box(5.5, 1.5, 14.0,
		10.5, 2.5, 15.5 ),
		Block.box(1.0, 0.0, 4.0,
		15.0, 3.0, 14.0 ), BooleanOp.OR),
		Block.box(1.0, 0.0, 0.0,
		15.0, 12.0, 4.0 ), BooleanOp.OR);
		public static final VoxelShape case3_W = Shapes.join( //X3 WEST
		Shapes.join(
		Block.box(0.5, 1.5, 5.5,
		2.0, 2.5, 10.5 ),
		Block.box(2.0, 0.0, 1.0,
		12.0, 3.0, 15.0 ), BooleanOp.OR),
		Block.box(12.0, 0.0, 1.0,
		16.0, 12.0, 15.0 ), BooleanOp.OR);
		public static final VoxelShape case3_E = Shapes.join( //X0 EAST
		Shapes.join(
		Block.box(14.0, 1.5, 5.5,
		15.5, 2.5, 10.5 ),
		Block.box(4.0, 0.0, 1.0,
		14.0, 3.0, 15.0 ), BooleanOp.OR),
		Block.box(0.0, 0.0, 1.0,
		4.0, 12.0, 15.0 ), BooleanOp.OR);
		public static final VoxelShape case3_U = Shapes.join( //Y3 UP
		Shapes.join(
		Block.box(5.5, 0.5, 13.5,
		10.5, 2.0, 14.5 ),
		Block.box(1.0, 2.0, 13.0,
		15.0, 12.0, 16.0 ), BooleanOp.OR),
		Block.box(1.0, 12.0, 4.0,
		15.0, 16.0, 16.0 ), BooleanOp.OR);
		public static final VoxelShape case3_D = Shapes.join( //Y0 DOWN
		Shapes.join(
		Block.box(5.5, 14.0, 1.5,
		10.5, 15.5, 2.5 ),
		Block.box(1.0, 4.0, 0.0,
		15.0, 14.0, 3.0 ), BooleanOp.OR),
		Block.box(1.0, 0.0, 0.0,
		15.0, 4.0, 12.0 ), BooleanOp.OR);
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		// @Override
		public @NotNull Component getDisplayName() {
		return Component.literal("Briefcase Block");
		}
		
		// ########## ########## ########## ##########
		@Override
		protected void createBlockStateDefinition(StateDefinition.Builder<Block, BlockState> builder) {
		builder.add(FACING, DOWN ,OPEN ,WATERLOGGED);
		}
		
		// ########## ########## ########## ##########
		@Override
		public VoxelShape getShape(BlockState blkstate, BlockGetter blockgetter, BlockPos blockpos,
		CollisionContext collision) {
		Direction direction = blkstate.getValue(FACING);
		Boolean open = blkstate.getValue(OPEN);
		Boolean down = blkstate.getValue(DOWN);
		
		if( !open && !down ) {
		switch (direction) {
		case EAST:
		default:
		return case_E;
		
		case WEST:
		return case_W;
		
		case SOUTH:
		return case_S;
		
		case NORTH:
		return case_N;
		
		case UP:
		return case_U;
		
		case DOWN:
		return case_D;
		}
		}
		
		if( !open && down ) {
		switch (direction) {
		case EAST:
		default:
		return case2_E;
		
		case WEST:
		return case2_W;
		
		case SOUTH:
		return case2_S;
		
		case NORTH:
		return case2_N;
		
		case UP:
		return case2_U;
		
		case DOWN:
		return case2_D;
		}
		}
		if( open && down ) {
		switch (direction) {
		case EAST:
		default:
		return case3_E;
		
		case WEST:
		return case3_W;
		
		case SOUTH:
		return case3_S;
		
		case NORTH:
		return case3_N;
		
		case UP:
		return case3_U;
		
		case DOWN:
		return case3_D;
		}
		}
		
		
		
		
		
		return NO_AABB;
		}
		
		// ########## ########## ########## ##########
		@Override
		public boolean useShapeForLightOcclusion(BlockState p_220074_1_) {
		return false;
		}
		
		// ########## ########## ########## ##########
		@Override
		public RenderShape getRenderShape(BlockState blkstate) {
		
		return RenderShape.MODEL;
		
		}
		
		// ########## ########## ########## ##########
		@Nullable
		@Override
		public BlockEntity newBlockEntity(BlockPos pos_, BlockState blkstate) {
		//return new container_9_ghost(pos_, blkstate);
		//return new container_9_ghost(pos_, blkstate);
		return new BlockEntityBriefcase(pos_, blkstate);
		
		}
		
		// ########## ########## ########## ##########
		@Override
		public boolean canBeReplaced(BlockState p_56373_, BlockPlaceContext p_56374_) {
		return false;
		}
		
		// ########## ########## ########## ##########
		@Override
		public void setPlacedBy(Level warudo, BlockPos pos, BlockState blkstate, LivingEntity le, ItemStack itemstack) {
		if (itemstack.hasCustomHoverName()) {
		BlockEntity blockentity = warudo.getBlockEntity(pos);
		//if (blockentity instanceof container_9_ghost)
		{
		// ((container_9_ghost) blockentity).setCustomName(itemstack.getHoverName());
		}
		}
		
		}
		
		// ########## #################### ##########
		// @Override
		public void onRemove(BlockState blkstate, BlockPos pos, Level warudo, BlockState nblkstate, boolean pismoving) {
		
		if (blkstate.getBlock() == nblkstate.getBlock()) {
		BlockEntity ghost = warudo.getBlockEntity(pos);
		// if (ghost instanceof briefcase_ghost) {
		// ((briefcase_ghost) ghost).drops();
		// }
		}
		super.onRemove(blkstate, warudo, pos, nblkstate, pismoving);
		}
		
		// ########## ########## ########## ##########
		public InteractionResult use(BlockState blkstate, Level warudo, BlockPos pos, Player pe, InteractionHand hand,
		BlockHitResult hit) {
		
		Boolean open = blkstate.getValue(OPEN);
		Boolean down = blkstate.getValue(DOWN);
		
		if (warudo.isClientSide) {
		return InteractionResult.SUCCESS;
		} else {
		BlockEntity blkentity = warudo.getBlockEntity(pos);
		if (pe.isCrouching()) {
		destroy(warudo, pos);
		} else {
		if(!warudo.isClientSide() && blkentity instanceof BlockEntityBriefcase){
		
		blkstate = blkstate.setValue(OPEN, true);
		blkstate = blkstate.setValue(DOWN, true);
		//warudo.setBlock(pos ,blkstate, 2);
		
		IForgeServerPlayer ifpe = (IForgeServerPlayer)pe;
		ifpe.openMenu( (BlockEntityBriefcase) blkentity, pos );
		}
		}
		}
		
		
		blkstate = blkstate.setValue(OPEN, false);
		blkstate = blkstate.setValue(DOWN, true);
		//warudo.setBlock(pos ,blkstate, 2);
		
		// return InteractionResult.CONSUME;
		return InteractionResult.SUCCESS;
		
		}
		
		// https://www.youtube.com/watch?v=jo0BTisGpJk
		// 7:35
		
		// ########## ########## ########## ##########
		@Override
		public boolean triggerEvent(BlockState p_49226_, Level p_49227_, BlockPos p_49228_, int p_49229_, int p_49230_) {
		super.triggerEvent(p_49226_, p_49227_, p_49228_, p_49229_, p_49230_);
		BlockEntity blockentity = p_49227_.getBlockEntity(p_49228_);
		return blockentity == null ? false : blockentity.triggerEvent(p_49229_, p_49230_);
		}
		
		// ########## ########## ########## ##########
		@Override
		@Nullable
		public MenuProvider getMenuProvider(BlockState p_49234_, Level p_49235_, BlockPos p_49236_) {
		
		
		BlockEntity blockentity = p_49235_.getBlockEntity(p_49236_);
		return blockentity instanceof MenuProvider ? (MenuProvider) blockentity : null;
		
		//return new menu_9( containerId, inventory , new FriendlyByteBuf(Unpooled.buffer() ) );
		
		}
		
		// ########## ########## ########## ##########
		@Override
		@Nullable
		public BlockState getStateForPlacement(BlockPlaceContext context) {
		
		Level warudo = context.getLevel();
		BlockPos pos = context.getClickedPos();
		BlockState blkstate = defaultBlockState();
		Direction facing = context.getHorizontalDirection().getOpposite();
		
		//net.minecraft.world.level.block.state.BlockBehaviour.canBeReplaced()
		FluidState fluidstate = warudo.getFluidState(pos);
		blkstate = blkstate.setValue(WATERLOGGED, (fluidstate.getType() == Fluids.WATER));
		blkstate = blkstate.setValue(FACING, facing);
		blkstate = blkstate.setValue(DOWN, false);
		blkstate = blkstate.setValue(OPEN, false);
		
		return blkstate;
		}
		
		// ########## ########## ########## ##########
		@Override
		public FluidState getFluidState(BlockState blkstate) {
		return blkstate.getValue(WATERLOGGED) ? Fluids.WATER.getSource(false) : super.getFluidState(blkstate);
		}
		
		// ########## ########## ########## ##########
		//@Override
		public boolean canPlaceLiquid(BlockGetter p_56301_, BlockPos p_56302_, BlockState p_56303_, Fluid p_56304_) {
		return !p_56303_.getValue(BlockStateProperties.WATERLOGGED) && p_56304_ == Fluids.WATER;
		}
		
		// ########## ########## ########## ##########
		@Override
		public boolean placeLiquid(LevelAccessor level, BlockPos pos, BlockState blkstate, FluidState fluidstate) {
		System.out.println("placeLiquid()");
		
		
		if (!blkstate.getValue(BlockStateProperties.WATERLOGGED) && fluidstate.getType() == Fluids.WATER) {
		if (!level.isClientSide()) {
		level.setBlock(pos, blkstate.setValue(BlockStateProperties.WATERLOGGED, Boolean.valueOf(true)),
		3);
		level.scheduleTick(pos, fluidstate.getType(), fluidstate.getType().getTickDelay(level));
		}
		
		return true;
		} else {
		return false;
		}
		}
		
		// ########## ########## ########## ##########
		@Override
		public ItemStack pickupBlock(@Nullable Player pe, LevelAccessor level, BlockPos pos, BlockState blkstate) {
		System.out.println("pickupBlock()");
		if (blkstate.getValue(BlockStateProperties.WATERLOGGED)) {
		level.setBlock(pos, blkstate.setValue(BlockStateProperties.WATERLOGGED, Boolean.valueOf(false)), 3);
		if (!blkstate.canSurvive(level, pos)) {
		level.destroyBlock(pos, true);
		}
		
		return new ItemStack(Items.WATER_BUCKET);
		} else {
		return ItemStack.EMPTY;
		}
		}
		
		
		// ########## ########## ########## ##########
		@Override
		public boolean isPathfindable(BlockState blkstate, BlockGetter blkgetter, BlockPos pos, PathComputationType path_type) {
		//int age = blkstate.getValue(AGE_3);
		//boolean OPEN = true;
		
		switch (path_type) {
		case LAND:
		return true;
		case WATER:
		return true;
		case AIR:
		return true;
		default:
		return true;
		}
		}
		
		
		
		// ########## ########## ########## ##########
		public static Boolean is_WATERLOGGED(BlockState blkstate) {
		/*
		FluidState fluidstate = this.warudo.getFluidState(this.pos);
		return (fluidstate.getType() == Fluids.WATER);
		*/
		if (blkstate.hasProperty(WATERLOGGED)) {
		return blkstate.getValue(WATERLOGGED);
		}
		
		if (blkstate.is(waterblock)) {
		//return true;
		}
		
		return false;
		}
		
		// ########## ########## ########## ##########
		public static int isloaded(ItemStack itemstack) {
		CompoundTag compoundtag = itemstack.getOrCreateTag();
		
		int i = 0;
		
		if (compoundtag.contains("loaded")) {
		byte[] biti = compoundtag.getByteArray("loaded");
		
		int b = 1;
		for (int l = 0; l < biti.length; l++) {
		
		if (biti[l] > 0) {
		i += b;
		}
		b = b * 2;
		}
		
		}
		return i;
		}
		
		// ########## ########## ########## ##########
		public static void setloaded(ItemStack itemstack, int value) {
		CompoundTag compoundtag = itemstack.getOrCreateTag();
		byte[] biti = new byte[3];
		
		// and binario paa solo dejar el menor byte
		biti[0] = (byte) ((value & 1));
		
		// and binario paa solo dejar el segundo byte >> correr todos los bites un lugar
		biti[1] = (byte) ((value & 2) >> 1);
		
		// and binario paa solo dejar el tercer byte >> correr todos los bites dos lugar
		biti[2] = (byte) ((value & 4) >> 2);
		
		// 0 0 0 0 0
		// 16 8 4 2 1
		
		compoundtag.putByteArray("loaded", biti);
		/*
		* compoundtag.putBoolean("Charged", p_40886_); compoundtag.putByte("A", (byte)
		* 0); compoundtag.putByte("B", (byte) 0);
		*/
		}
		
		// ########## ########## ########## ##########
		@Override
		public void destroy(LevelAccessor accesor, BlockPos pos, BlockState blkstate) {
		System.out.println("destroy(LevelAccessor)");
		destroy( (Level)accesor, pos);
		}
		
		
		@Override
		public BlockState playerWillDestroy(Level warudo, BlockPos pos, BlockState blkstate, Player pe) {
		System.out.println("playerWillDestroy(warudo)");
		destroy( warudo, pos);
		return blkstate;
		}
		
		
		// ########## ########## ########## ##########
		// @Override
		public void destroy(Level warudo, BlockPos pos) {
		System.out.println("destroy(warudo)");
		
		ItemStack item_briefcase = destroy_and_return_itemstack(warudo, pos);
		ItemEntity pdrop = new ItemEntity(warudo, pos.getX(), pos.getY() + 1, pos.getZ(), item_briefcase);
		warudo.addFreshEntity(pdrop);
		}
		
		// ########## ########## ########## ##########
		// @Override
		public ItemStack destroy_and_return_itemstack(Level warudo, BlockPos pos) {
		
		ItemStack item_briefcase = null;
		
		Postate postate = new Postate(warudo, pos);
		BlockEntity blockentity = warudo.getBlockEntity(pos);
		
		item_briefcase = create_briefcase_from_this_tileentity(blockentity);
		
		postate.setBlockState(Blocks.AIR.defaultBlockState());
		postate.update_WATERLOGGED();
		postate.setBlock(2);
		
		if (blockentity != null) {
		blockentity.setRemoved();
		}
		
		return item_briefcase;
		}
		
		// ########## ########## ########## ##########
		
		
		// ########## ########## ########## ##########
		@Override
		public void onBlockExploded(BlockState blkstate, Level warudo, BlockPos pos, Explosion explosion) {
		// warudo.setBlock(pos, Blocks.AIR.defaultBlockState(), 3);
		wasExploded(warudo, pos, explosion);
		}
		
		// ########## ########## ########## ##########
		@Override
		public void wasExploded(Level warudo, BlockPos pos, Explosion explosion) {
		// Level warudo = (Level) accesor;
		// explosion.
		destroy(warudo, pos, warudo.getBlockState(pos));
		}
		
		
		
		
		
		
		
		
		
		
		
		
		// ########## ########## ########## ##########
		// @Override
		public ItemStack pickup(Level warudo, BlockPos pos, BlockState blkstate) {
		ItemStack drop = ItemStack.EMPTY;
		BlockEntity blockentity;
		
		if (!warudo.isClientSide()) {
		Block blk = blkstate.getBlock();
		
		blockentity = warudo.getBlockEntity(pos);
		
		if(blockentity != null) {
		drop = create_briefcase_from_this_tileentity(blockentity);
		}
		//ItemEntity pdrop = new ItemEntity(warudo, pos.getX(), pos.getY() + 1, pos.getZ(), drop);
		//warudo.addFreshEntity(pdrop);
		}
		
		return drop;
		}
		
		
		
		
		// ########## ########## ########## ##########
		public Item get_briefcase_item() {
		return BlockInit.BLOCK_BRIEFCASE.get().asItem();
		}
		
		// ########## ########## ########## ##########
		public ItemStack create_briefcase_from_this_tileentity(BlockEntity blockentity) {
		ItemStack item_briefcase = new ItemStack(get_briefcase_item(), 1);
		
		if (blockentity == null) {
		return item_briefcase;
		}
		
		blockentity.getCapability(ForgeCapabilities.ITEM_HANDLER).ifPresent(handlerblock -> {
		item_briefcase.getCapability(ForgeCapabilities.ITEM_HANDLER).ifPresent(handleritem -> {
		ItemStack cosa = null;
		for (int i = 0; i < handlerblock.getSlots(); ++i) {
		cosa = handlerblock.getStackInSlot(i);
		handleritem.insertItem(i, cosa, false);
		}
		});
		});
		
		return item_briefcase;
		}
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		
		// ########## ########## ########## ##########
		public static String blockstate_json = """
		{
		"variants" : {
		"facing=south,down=false" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base",
		"y" : 0
		},
		
		"facing=north,down=false" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base",
		"y" : 180
		},
		
		"facing=west,down=false" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base",
		"y" : 90
		},
		
		"facing=east,down=false" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base",
		"y" : 270
		},
		
		
		
		
		"facing=south,down=true,open=false" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_0",
		"y" : 0
		},
		
		"facing=north,down=true,open=false" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_0",
		"y" : 180
		},
		
		"facing=west,down=true,open=false" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_0",
		"y" : 90
		},
		
		"facing=east,down=true,open=false" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_0",
		"y" : 270
		},
		
		
		
		
		"facing=south,down=true,open=true" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_3",
		"y" : 0
		},
		
		"facing=north,down=true,open=true" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_3",
		"y" : 180
		},
		
		"facing=west,down=true,open=true" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_3",
		"y" : 90
		},
		
		"facing=east,down=true,open=true" : {
		"model" : "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_3",
		"y" : 270
		}
		
		
		
		}
		}
		""";
		
		// ########## ########## ########## ##########
		public static String block_json = """
		{
		"parent": "%MOD_ID%:block//parent//%TYPEFOLDER%//parent_panel",
		"textures": {
		"north": "%NORTH%",
		"south": "%SOUTH%",
		"east": "%EAST%",
		"west": "%WEST%",
		"up": "%UP%",
		"down": "%DOWN%",
		"particle": "%PARTICLE%"
		}
		}
		""";
		
		// ########## ########## ########## ##########
		public static String item_json = """
		{
		"parent": "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base"
		}
		""";
		public static String blockitem_json = """
		{
		"overrides": [
		{
		"predicate": {
		"pulling": 0
		},
		"model": "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base"
		},
		{
		"predicate": {
		"pulling": 1
		},
		"model": "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_0"
		},
		{
		"predicate": {
		"pulling": 2
		},
		"model": "%MOD_ID%:block/parent/%TYPEFOLDER%/briefcase_base_3"
		}
		]
		}
		""";
		
		// ########## ########## ########## ##########
		public static String loottable_json = """
		{
		"type": "minecraft:block",
		"pools": [
		{
		"rolls": 1,
		"entries": [
		{
		"type": "minecraft:item",
		"name": "%MOD_ID%:%NAME%"
		}
		]
		}
		]
		}
		""";
		
		
		// ########## ########## ########## ##########
		public static String crafthing_json = """
		{
		"type" : "minecraft:crafting_shaped",
		"pattern" : [ "#", "#", "#" ],
		"key" : {
		"#" : {
		"item" : "%CRAFTHING_INPUT_C0%"
		}
		},
		"result" : {
		"item" : "%MOD_ID%:%NAME%",
		"count" : 1
		}
		}
		""";
		
		// ########## ########## ########## ##########
		public static String cutthing_json = """
		{
		"type": "minecraft:stonecutting",
		"count": 1,
		"ingredient": {
		"item" : "%CUTTHING_INPUT_C0%"
		},
		"result" : "%MOD_ID%:%NAME%",
		"count" : 4
		}
		""";
		
		// ########## ########## ########## ##########
		public static String smelthing_json = """
		{
		"type": "minecraft:smelting",
		"cookingtime": 200,
		"experience": 0.7,
		"group": "iron_ingot",
		"ingredient": {
		"item": "%SMELTHING_INPUT_C0%"
		},
		"result": "%MOD_ID%:%NAME%"
		}
		""";
		
		
		
		// ########## ########## ########## ##########
		public static String briefcase_base_0 = """
		{
		"credit": "Made with Blockbench",
		"textures": {
		"particle": "minecraft:block/gray_concrete",
		"north": "minecraft:block/gray_concrete",
		"east": "minecraft:block/gold_block",
		"south": "minecraft:block/bamboo_fence_gate_particle",
		"west": "minecraft:block/black_concrete_powder"
		},
		"elements": [
		{
		"name": "lock0",
		"from": [11.5, 2.975, 13.825],
		"to": [12.5, 3.475, 14.075],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.5], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3.5, 2.975, 13.825],
		"to": [4.5, 3.475, 14.075],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.5], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 3, 4],
		"to": [15, 4, 4.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#north"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 3, 13.5],
		"to": [15, 4, 14],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#north"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 3.5, 4.5],
		"to": [14.5, 4, 13.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [0, 0, 13, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 13, 9], "texture": "#south"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 3, 4.5],
		"to": [15, 4, 13.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 1, 9], "rotation": 270, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 9], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 3, 4.5],
		"to": [1.5, 4, 13.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 1, 9], "rotation": 270, "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 0, 4],
		"to": [15, 3, 4.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 0, 13.5],
		"to": [15, 3, 14],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 0, 4.5],
		"to": [14.5, 0.5, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [0, 0, 13, 9], "rotation": 180, "texture": "#south"},
		"down": {"uv": [0, 0, 13, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 0, 4.5],
		"to": [15, 3, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 0, 4.5],
		"to": [1.5, 3, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "lock0",
		"from": [11, 1.525, 13.825],
		"to": [13, 3.025, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 2, 1.5], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 2, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3, 1.525, 13.825],
		"to": [5, 3.025, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 2, 1.5], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 2, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock0",
		"from": [9.75, 1.375, 13.825],
		"to": [10.75, 2.625, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 1], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [5.25, 1.375, 13.825],
		"to": [6.25, 2.625, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 1], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.5, 15],
		"to": [10.5, 2.5, 15.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 5, 1], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 5, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 5, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 5, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "handdle",
		"from": [10, 1.5, 14],
		"to": [10.5, 2.5, 15],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "rotation": 270, "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#north"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.5, 14],
		"to": [6, 2.5, 15],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "rotation": 270, "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#north"}
		}
		}
		],
		"display": {
		"thirdperson_righthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"thirdperson_lefthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"firstperson_righthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"firstperson_lefthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"ground": {
		"translation": [0, 3.75, 0]
		},
		"gui": {
		"rotation": [22.5, 22.5, 0],
		"translation": [-0.5, 0, 0],
		"scale": [0.75, 0.75, 0.75]
		},
		"head": {
		"rotation": [0, 180, 0],
		"translation": [0, 2, -8.5]
		},
		"fixed": {
		"rotation": [0, 180, 0],
		"translation": [0, 2.5, -2.25]
		}
		},
		"groups": [
		{
		"name": "group_cover",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [0, 1, 2, 3, 4, 5, 6]
		},
		{
		"name": "group_base",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [7, 8, 9, 10, 11, 12, 13]
		},
		{
		"name": "group_handle",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [14, 15, 16, 17, 18]
		}
		]
		}""";
		// ########## ########## ########## ##########
		public static String briefcase_base_1 = """
		{
		"credit": "Made with Blockbench",
		"textures": {
		"particle": "minecraft:block/gray_concrete",
		"north": "minecraft:block/gray_concrete",
		"east": "minecraft:block/gold_block",
		"south": "minecraft:block/bamboo_fence_gate_particle",
		"west": "minecraft:block/black_concrete_powder"
		},
		"elements": [
		{
		"name": "lock0",
		"from": [11.5, 2.975, 13.825],
		"to": [12.5, 3.475, 14.075],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.5], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3.5, 2.975, 13.825],
		"to": [4.5, 3.475, 14.075],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.5], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 3, 4],
		"to": [15, 4, 4.5],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#north"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 3, 13.5],
		"to": [15, 4, 14],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#north"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 3.5, 4.5],
		"to": [14.5, 4, 13.5],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [0, 0, 13, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 13, 9], "texture": "#south"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 3, 4.5],
		"to": [15, 4, 13.5],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 1, 9], "rotation": 270, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 9], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 3, 4.5],
		"to": [1.5, 4, 13.5],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 1, 9], "rotation": 270, "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 0, 4],
		"to": [15, 3, 4.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 0, 13.5],
		"to": [15, 3, 14],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 0, 4.5],
		"to": [14.5, 0.5, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [0, 0, 13, 9], "rotation": 180, "texture": "#south"},
		"down": {"uv": [0, 0, 13, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 0, 4.5],
		"to": [15, 3, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 0, 4.5],
		"to": [1.5, 3, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "lock0",
		"from": [11, 1.525, 13.825],
		"to": [13, 3.025, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 2, 1.5], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 2, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3, 1.525, 13.825],
		"to": [5, 3.025, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 2, 1.5], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 2, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock0",
		"from": [9.75, 1.375, 13.825],
		"to": [10.75, 2.625, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 1], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [5.25, 1.375, 13.825],
		"to": [6.25, 2.625, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 1], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.5, 15],
		"to": [10.5, 2.5, 15.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 5, 1], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 5, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 5, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 5, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "handdle",
		"from": [10, 1.5, 14],
		"to": [10.5, 2.5, 15],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "rotation": 270, "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#north"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.5, 14],
		"to": [6, 2.5, 15],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "rotation": 270, "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#north"}
		}
		}
		],
		"display": {
		"thirdperson_righthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"thirdperson_lefthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"firstperson_righthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"firstperson_lefthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"ground": {
		"translation": [0, 3.75, 0]
		},
		"gui": {
		"rotation": [22.5, 22.5, 0],
		"translation": [-0.5, 0, 0],
		"scale": [0.75, 0.75, 0.75]
		},
		"head": {
		"rotation": [0, 180, 0],
		"translation": [0, 2, -8.5]
		},
		"fixed": {
		"rotation": [0, 180, 0],
		"translation": [0, 2.5, -2.25]
		}
		},
		"groups": [
		{
		"name": "group_cover",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [0, 1, 2, 3, 4, 5, 6]
		},
		{
		"name": "group_base",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [7, 8, 9, 10, 11, 12, 13]
		},
		{
		"name": "group_handle",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [14, 15, 16, 17, 18]
		}
		]
		}""";
		// ########## ########## ########## ##########
		public static String briefcase_base_2 = """
		{
		"credit": "Made with Blockbench",
		"textures": {
		"particle": "minecraft:block/gray_concrete",
		"north": "minecraft:block/gray_concrete",
		"east": "minecraft:block/gold_block",
		"south": "minecraft:block/bamboo_fence_gate_particle",
		"west": "minecraft:block/black_concrete_powder"
		},
		"elements": [
		{
		"name": "lock0",
		"from": [11.5, 2.975, 13.825],
		"to": [12.5, 3.475, 14.075],
		"rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.5], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3.5, 2.975, 13.825],
		"to": [4.5, 3.475, 14.075],
		"rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.5], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 3, 4],
		"to": [15, 4, 4.5],
		"rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#north"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 3, 13.5],
		"to": [15, 4, 14],
		"rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#north"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 3.5, 4.5],
		"to": [14.5, 4, 13.5],
		"rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [0, 0, 13, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 13, 9], "texture": "#south"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 3, 4.5],
		"to": [15, 4, 13.5],
		"rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 1, 9], "rotation": 270, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 9], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 3, 4.5],
		"to": [1.5, 4, 13.5],
		"rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 1, 9], "rotation": 270, "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 0, 4],
		"to": [15, 3, 4.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 0, 13.5],
		"to": [15, 3, 14],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 0, 4.5],
		"to": [14.5, 0.5, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [0, 0, 13, 9], "rotation": 180, "texture": "#south"},
		"down": {"uv": [0, 0, 13, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 0, 4.5],
		"to": [15, 3, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 0, 4.5],
		"to": [1.5, 3, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "lock0",
		"from": [11, 1.525, 13.825],
		"to": [13, 3.025, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 2, 1.5], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 2, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3, 1.525, 13.825],
		"to": [5, 3.025, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 2, 1.5], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 2, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock0",
		"from": [9.75, 1.375, 13.825],
		"to": [10.75, 2.625, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 1], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [5.25, 1.375, 13.825],
		"to": [6.25, 2.625, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 1], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.5, 15],
		"to": [10.5, 2.5, 15.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 5, 1], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 5, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 5, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 5, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "handdle",
		"from": [10, 1.5, 14],
		"to": [10.5, 2.5, 15],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "rotation": 270, "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#north"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.5, 14],
		"to": [6, 2.5, 15],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "rotation": 270, "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#north"}
		}
		}
		],
		"display": {
		"thirdperson_righthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"thirdperson_lefthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"firstperson_righthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"firstperson_lefthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"ground": {
		"translation": [0, 3.75, 0]
		},
		"gui": {
		"rotation": [22.5, 22.5, 0],
		"translation": [-0.5, 0, 0],
		"scale": [0.75, 0.75, 0.75]
		},
		"head": {
		"rotation": [0, 180, 0],
		"translation": [0, 2, -8.5]
		},
		"fixed": {
		"rotation": [0, 180, 0],
		"translation": [0, 2.5, -2.25]
		}
		},
		"groups": [
		{
		"name": "group_cover",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [0, 1, 2, 3, 4, 5, 6]
		},
		{
		"name": "group_base",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [7, 8, 9, 10, 11, 12, 13]
		},
		{
		"name": "group_handle",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [14, 15, 16, 17, 18]
		}
		]
		}""";
		// ########## ########## ########## ##########
		public static String briefcase_base_3 = """
		{
		"credit": "Made with Blockbench",
		"textures": {
		"particle": "minecraft:block/gray_concrete",
		"north": "minecraft:block/gray_concrete",
		"east": "minecraft:block/gold_block",
		"south": "minecraft:block/bamboo_fence_gate_particle",
		"west": "minecraft:block/black_concrete_powder"
		},
		"elements": [
		{
		"name": "lock0",
		"from": [11.5, 12.825, 3.525],
		"to": [12.5, 13.075, 4.025],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "texture": "#east"},
		"south": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "texture": "#east"},
		"up": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3.5, 12.825, 3.525],
		"to": [4.5, 13.075, 4.025],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "texture": "#east"},
		"south": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "texture": "#east"},
		"up": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 3, 3],
		"to": [15, 3.5, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 0.5], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 14, 0.5], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 12.5, 3],
		"to": [15, 13, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 0.5], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 14, 0.5], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 3.5, 3],
		"to": [14.5, 12.5, 3.5],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 13, 9], "texture": "#north"},
		"south": {"uv": [0, 0, 13, 9], "texture": "#south"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 3.5, 3],
		"to": [15, 12.5, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 9], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 9], "texture": "#west"},
		"south": {"uv": [0, 0, 0.5, 9], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 3.5, 3],
		"to": [1.5, 12.5, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 9], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 9], "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 9], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "texture": "#west"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 0, 4],
		"to": [15, 3, 4.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 0, 13.5],
		"to": [15, 3, 14],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 0, 4.5],
		"to": [14.5, 0.5, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [0, 0, 13, 9], "rotation": 180, "texture": "#south"},
		"down": {"uv": [0, 0, 13, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 0, 4.5],
		"to": [15, 3, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 0, 4.5],
		"to": [1.5, 3, 13.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "lock0",
		"from": [11, 1.525, 13.825],
		"to": [13, 3.025, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 2, 1.5], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 2, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3, 1.525, 13.825],
		"to": [5, 3.025, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 2, 1.5], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 2, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock0",
		"from": [9.75, 1.375, 13.825],
		"to": [10.75, 2.625, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 1], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [5.25, 1.375, 13.825],
		"to": [6.25, 2.625, 14.075],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 1, 1], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "rotation": 270, "texture": "#east"},
		"south": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "rotation": 90, "texture": "#east"},
		"up": {"uv": [0, 0, 1, 0.25], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.25], "texture": "#east"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.5, 15],
		"to": [10.5, 2.5, 15.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 5, 1], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 5, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 5, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 5, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "handdle",
		"from": [10, 1.5, 14],
		"to": [10.5, 2.5, 15],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "rotation": 270, "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#north"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.5, 14],
		"to": [6, 2.5, 15],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "rotation": 270, "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#north"}
		}
		}
		],
		"display": {
		"thirdperson_righthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"thirdperson_lefthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"firstperson_righthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"firstperson_lefthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"ground": {
		"translation": [0, 3.75, 0]
		},
		"gui": {
		"rotation": [22.5, 22.5, 0],
		"translation": [-0.5, 0, 0],
		"scale": [0.75, 0.75, 0.75]
		},
		"head": {
		"rotation": [0, 180, 0],
		"translation": [0, 2, -8.5]
		},
		"fixed": {
		"rotation": [0, 180, 0],
		"translation": [0, 2.5, -2.25]
		}
		},
		"groups": [
		{
		"name": "group_cover",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [0, 1, 2, 3, 4, 5, 6]
		},
		{
		"name": "group_base",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [7, 8, 9, 10, 11, 12, 13]
		},
		{
		"name": "group_handle",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [14, 15, 16, 17, 18]
		}
		]
		}""";
		// ########## ########## ########## ##########
		public static String briefcase_base_4 = """
		{
		"credit": "Made with Blockbench",
		"textures": {
		"particle": "minecraft:block/gray_concrete",
		"north": "minecraft:block/gray_concrete",
		"east": "minecraft:block/gold_block",
		"south": "minecraft:block/bamboo_fence_gate_particle",
		"west": "minecraft:block/black_concrete_powder"
		},
		"elements": [
		{
		"name": "lock0",
		"from": [11.5, 13, 3.5],
		"to": [12.5, 13, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [3, 2, 4, 2.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3.5, 13, 3.5],
		"to": [4.5, 13, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"up": {"uv": [4, 2, 3, 2.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 3, 3],
		"to": [15, 3.5, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 0.5], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 14, 0.5], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 12.5, 3],
		"to": [15, 13, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 14, 0.5], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 14, 0.5], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 3.5, 3],
		"to": [14.5, 12.5, 3.5],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 13, 9], "texture": "#north"},
		"south": {"uv": [0, 0, 13, 9], "texture": "#south"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 3.5, 3],
		"to": [15, 12.5, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 9], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 9], "texture": "#west"},
		"south": {"uv": [0, 0, 0.5, 9], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 3.5, 3],
		"to": [1.5, 12.5, 4],
		"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 4]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 9], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 9], "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 9], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "texture": "#west"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 0, 4],
		"to": [15, 3, 4.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 0, 13.5],
		"to": [15, 3, 14],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 14, 3], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 14, 0.5], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 0, 4.5],
		"to": [14.5, 0.5, 13.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"up": {"uv": [0, 0, 13, 9], "rotation": 180, "texture": "#south"},
		"down": {"uv": [0, 0, 13, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 0, 4.5],
		"to": [15, 3, 13.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#west"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 0, 4.5],
		"to": [1.5, 3, 13.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"east": {"uv": [0, 0, 3, 9], "rotation": 270, "texture": "#north"},
		"west": {"uv": [0, 0, 3, 9], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 9], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 9], "texture": "#west"}
		}
		},
		{
		"name": "lock0",
		"from": [11, 1.5, 14],
		"to": [13, 3, 14],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"south": {"uv": [3, 2, 5, 3.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3, 1.5, 14],
		"to": [5, 3, 14],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"south": {"uv": [5, 2, 3, 3.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock0",
		"from": [9.75, 1.75, 14],
		"to": [10.75, 2.75, 14],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"south": {"uv": [3, 2, 5, 3.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [5.25, 1.75, 14],
		"to": [6.25, 2.75, 14],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"south": {"uv": [5, 2, 3, 3.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.75, 15],
		"to": [10.5, 2.75, 15.5],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 5, 1], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 5, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 5, 0.5], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 5, 0.5], "texture": "#west"}
		}
		},
		{
		"name": "handdle",
		"from": [10, 1.75, 14],
		"to": [10.5, 2.75, 15],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#west"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 1.75, 14],
		"to": [6, 2.75, 15],
		"rotation": {"angle": 0, "axis": "x", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#west"},
		"south": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#west"},
		"west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#west"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 0.5, 1], "texture": "#west"}
		}
		}
		],
		"display": {
		"thirdperson_righthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"thirdperson_lefthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"firstperson_righthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"firstperson_lefthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"ground": {
		"translation": [0, 3.75, 0]
		},
		"gui": {
		"rotation": [22.5, 22.5, 0],
		"translation": [-0.5, 0, 0],
		"scale": [0.75, 0.75, 0.75]
		},
		"head": {
		"rotation": [0, 180, 0],
		"translation": [0, 2, -8.5]
		},
		"fixed": {
		"rotation": [0, 180, 0],
		"translation": [0, 2.5, -2.25]
		}
		},
		"groups": [
		{
		"name": "group_cover",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [0, 1, 2, 3, 4, 5, 6]
		},
		{
		"name": "group_base",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [7, 8, 9, 10, 11, 12, 13]
		},
		{
		"name": "group_handle",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [14, 15, 16, 17, 18]
		}
		]
		}""";
		// ########## ########## ########## ##########
		public static String briefcase_base = """
		{
		"credit": "Made with Blockbench",
		"textures": {
		"particle": "minecraft:block/gray_concrete",
		"north": "minecraft:block/gray_concrete",
		"east": "minecraft:block/gold_block",
		"south": "minecraft:block/bamboo_fence_gate_particle",
		"west": "minecraft:block/black_concrete_powder"
		},
		"elements": [
		{
		"name": "lock0",
		"from": [11.5, 9.825, 6.5],
		"to": [12.5, 10.075, 7],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "texture": "#east"},
		"south": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "texture": "#east"},
		"up": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3.5, 9.825, 6.5],
		"to": [4.5, 10.075, 7],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"east": {"uv": [0, 0, 0.5, 0.25], "texture": "#east"},
		"south": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"west": {"uv": [0, 0, 0.5, 0.25], "texture": "#east"},
		"up": {"uv": [9, 6, 10, 6.5], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 0.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 0, 6],
		"to": [15, 0.5, 7],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 14, 0.5], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 14, 0.5], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 9.5, 6],
		"to": [15, 10, 7],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 14, 0.5], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 14, 0.5], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 1], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 0.5, 6],
		"to": [14.5, 9.5, 6.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 13, 9], "texture": "#north"},
		"south": {"uv": [0, 0, 13, 9], "texture": "#south"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 0.5, 6],
		"to": [15, 9.5, 7],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 9], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 9], "texture": "#west"},
		"south": {"uv": [0, 0, 0.5, 9], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 0.5, 6],
		"to": [1.5, 9.5, 7],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 9], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 9], "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 9], "texture": "#north"},
		"west": {"uv": [0, 0, 1, 9], "texture": "#west"}
		}
		},
		{
		"name": "bbabse0",
		"from": [1, 0, 7],
		"to": [15, 0.5, 10],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 14, 0.5], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 14, 0.5], "texture": "#west"},
		"west": {"uv": [0, 0, 3, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "bbabse1",
		"from": [1, 9.5, 7],
		"to": [15, 10, 10],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 14, 0.5], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 14, 0.5], "texture": "#west"},
		"west": {"uv": [0, 0, 3, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 14, 3], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "bbabse2",
		"from": [1.5, 0.5, 9.5],
		"to": [14.5, 9.5, 10],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 13, 9], "texture": "#south"},
		"south": {"uv": [0, 0, 13, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse3",
		"from": [14.5, 0.5, 7],
		"to": [15, 9.5, 10],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 9], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 9], "texture": "#west"},
		"south": {"uv": [0, 0, 0.5, 9], "texture": "#west"},
		"west": {"uv": [0, 0, 3, 9], "texture": "#north"}
		}
		},
		{
		"name": "bbabse4",
		"from": [1, 0.5, 7],
		"to": [1.5, 9.5, 10],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 9], "texture": "#north"},
		"east": {"uv": [0, 0, 3, 9], "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 9], "texture": "#west"},
		"west": {"uv": [0, 0, 3, 9], "texture": "#west"}
		}
		},
		{
		"name": "lock0",
		"from": [11, 9.825, 7],
		"to": [13, 10.075, 8.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 2, 0.25], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "texture": "#east"},
		"south": {"uv": [0, 0, 2, 0.25], "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "texture": "#east"},
		"up": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 1.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [3, 9.825, 7],
		"to": [5, 10.075, 8.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 2, 0.25], "texture": "#east"},
		"east": {"uv": [0, 0, 1.5, 0.25], "texture": "#east"},
		"south": {"uv": [0, 0, 2, 0.25], "texture": "#east"},
		"west": {"uv": [0, 0, 1.5, 0.25], "texture": "#east"},
		"up": {"uv": [9, 6, 11, 7.5], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 2, 1.5], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock0",
		"from": [9.75, 9.825, 7.375],
		"to": [10.75, 10.075, 8.625],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"south": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"up": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "lock1",
		"from": [5.25, 9.825, 7.375],
		"to": [6.25, 10.075, 8.625],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"east": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"south": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"west": {"uv": [0, 0, 1, 0.25], "texture": "#east"},
		"up": {"uv": [9, 6, 10, 7], "rotation": 180, "texture": "#east"},
		"down": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#east"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 11, 7.5],
		"to": [10.5, 11.5, 8.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 5, 0.5], "texture": "#west"},
		"east": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"south": {"uv": [0, 0, 5, 0.5], "texture": "#west"},
		"west": {"uv": [0, 0, 1, 0.5], "texture": "#west"},
		"up": {"uv": [0, 0, 5, 1], "rotation": 180, "texture": "#west"},
		"down": {"uv": [0, 0, 5, 1], "rotation": 180, "texture": "#west"}
		}
		},
		{
		"name": "handdle",
		"from": [10, 10, 7.5],
		"to": [10.5, 11, 8.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"}
		}
		},
		{
		"name": "handdle",
		"from": [5.5, 10, 7.5],
		"to": [6, 11, 8.5],
		"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]},
		"faces": {
		"north": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"east": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"south": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"west": {"uv": [0, 0, 0.5, 1], "texture": "#north"},
		"up": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"},
		"down": {"uv": [0, 0, 0.5, 1], "rotation": 180, "texture": "#north"}
		}
		}
		],
		"display": {
		"thirdperson_righthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"thirdperson_lefthand": {
		"rotation": [90, 90, 0],
		"translation": [0, -2, -2.5],
		"scale": [0.75, 0.75, 0.75]
		},
		"firstperson_righthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"firstperson_lefthand": {
		"rotation": [0, -90, 0],
		"scale": [0.5, 0.5, 0.5]
		},
		"ground": {
		"translation": [0, 3.75, 0]
		},
		"gui": {
		"rotation": [22.5, 22.5, 0],
		"translation": [-0.5, 0, 0],
		"scale": [0.75, 0.75, 0.75]
		},
		"head": {
		"rotation": [0, 180, 0],
		"translation": [0, 2, -8.5]
		},
		"fixed": {
		"rotation": [0, 180, 0],
		"translation": [0, 2.5, -2.25]
		}
		},
		"groups": [
		{
		"name": "group_cover",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [0, 1, 2, 3, 4, 5, 6]
		},
		{
		"name": "group_base",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [7, 8, 9, 10, 11, 12, 13]
		},
		{
		"name": "group_handle",
		"origin": [0, 0, 0],
		"color": 0,
		"children": [14, 15, 16, 17, 18]
		}
		]
		}""";
		// ########## ########## ########## ##########
		
		// ########## ########## ########## ##########
		// ########## ########## ########## ##########
		// ########## ########## ########## ##########
		// ########## ########## ########## ##########
		
		}				
			

 

###########################################################################################################

This next issue 
Mi gui also adds the 5 slots from the player equipment the thing is theres no filter to determine whats can be put in an armor slot and what not 

2024-03-04-20-45-41.png

Spoiler

				
			package mercmod.menus;
		
		import mercmod.blockentitys.BlockEntityBriefcase;
		import mercmod.blocks.BlockInit;
		import net.minecraft.network.FriendlyByteBuf;
		import net.minecraft.world.InteractionHand;
		import net.minecraft.world.entity.player.Inventory;
		import net.minecraft.world.entity.player.Player;
		import net.minecraft.world.inventory.*;
		import net.minecraft.world.item.ItemStack;
		import net.minecraft.world.level.Level;
		import net.minecraft.world.level.block.entity.BlockEntity;
		import net.minecraftforge.common.capabilities.ForgeCapabilities;
		import net.minecraftforge.items.SlotItemHandler;
		import mercmod.blocks.classes.briefcase;
		
		//########## ########## ##########
		public class MenuBriefcase extends AbstractContainerMenu {
		public final BlockEntityBriefcase blockEntity;
		private final Level level;
		private final ContainerData data;
		
		//########## ########## ##########
		public MenuBriefcase(int pContainerId, Inventory inv, FriendlyByteBuf extraData) {
		this(pContainerId, inv, inv.player.level().getBlockEntity(extraData.readBlockPos()), new SimpleContainerData(2));
		}
		
		//########## ########## ##########
		public MenuBriefcase(int id, Inventory inventory, BlockEntity blkentity, ContainerData data) {
		super(MenuInit.MENUBRIEFCASE.get(), id);
		
		Player pe = inventory.player;
		this.level = pe.level();
		ItemStack container = null;
		//String mundo = ( this.level.isClientSide() )? "Local World" : "Server World";
		
		checkContainerSize(inventory, 9);
		blockEntity = ((BlockEntityBriefcase) blkentity);
		
		this.data = data;
		
		this.blockEntity.getCapability(ForgeCapabilities.ITEM_HANDLER).ifPresent(iItemHandler -> {
		for (int i = 0; i < 3; ++i) {
		for (int j = 0; j < 3; ++j) {
		this.addSlot(new SlotItemHandler(iItemHandler, j + i * 3, 62 + j * 18, 17 + i * 18));
		}
		}
		});
		
		addPlayerArmorSlots(inventory);
		addPlayerInventory(inventory);
		addPlayerHotbar(inventory);
		addDataSlots(data);
		}
		
		//########## ########## ##########
		public boolean isCrafting() {
		return data.get(0) > 0;
		}
		
		//########## ########## ##########
		public int getScaledProgress() {
		int progress = 39;//this.data.get(0);
		int maxProgress = 40;//this.data.get(1); // Max Progress
		int progressArrowSize = 26; // This is the height in pixels of your arrow
		
		return maxProgress != 0 && progress != 0 ? progress * progressArrowSize / maxProgress : 0;
		}
		
		// CREDIT GOES TO: diesieben07 | https://github.com/diesieben07/SevenCommons
		// must assign a slot number to each of the slots used by the GUI.
		// For this container, we can see both the tile inventory's slots as well as the player inventory slots and the hotbar.
		// Each time we add a Slot to the container, it automatically increases the slotIndex, which means
		// 0 - 8 = hotbar slots (which will map to the InventoryPlayer slot numbers 0 - 
		// 9 - 35 = player inventory slots (which map to the InventoryPlayer slot numbers 9 - 35)
		// 36 - 44 = TileInventory slots, which map to our TileEntity slot numbers 0 - 
		private static final int HOTBAR_SLOT_COUNT = 9;
		private static final int PLAYER_INVENTORY_ROW_COUNT = 3;
		private static final int PLAYER_INVENTORY_COLUMN_COUNT = 9;
		private static final int PLAYER_INVENTORY_SLOT_COUNT = PLAYER_INVENTORY_COLUMN_COUNT * PLAYER_INVENTORY_ROW_COUNT;
		private static final int VANILLA_SLOT_COUNT = HOTBAR_SLOT_COUNT + PLAYER_INVENTORY_SLOT_COUNT;
		private static final int VANILLA_FIRST_SLOT_INDEX = 0;
		private static final int TE_INVENTORY_FIRST_SLOT_INDEX = VANILLA_FIRST_SLOT_INDEX + VANILLA_SLOT_COUNT;
		
		// THIS YOU HAVE TO DEFINE!
		private static final int TE_INVENTORY_SLOT_COUNT = 9; // must be the number of slots you have!
		@Override
		public ItemStack quickMoveStack(Player pe, int index) {
		Slot sourceSlot = slots.get(index);
		if (sourceSlot == null || !sourceSlot.hasItem()) return ItemStack.EMPTY; //EMPTY_ITEM
		ItemStack sourceStack = sourceSlot.getItem();
		ItemStack copyOfSourceStack = sourceStack.copy();
		
		// Check if the slot clicked is one of the vanilla container slots
		if (index < VANILLA_FIRST_SLOT_INDEX + VANILLA_SLOT_COUNT) {
		// This is a vanilla container slot so merge the stack into the tile inventory
		if (!moveItemStackTo(sourceStack, TE_INVENTORY_FIRST_SLOT_INDEX, TE_INVENTORY_FIRST_SLOT_INDEX
		+ TE_INVENTORY_SLOT_COUNT, false)) {
		return ItemStack.EMPTY; // EMPTY_ITEM
		}
		} else if (index < TE_INVENTORY_FIRST_SLOT_INDEX + TE_INVENTORY_SLOT_COUNT) {
		// This is a TE slot so merge the stack into the players inventory
		if (!moveItemStackTo(sourceStack, VANILLA_FIRST_SLOT_INDEX, VANILLA_FIRST_SLOT_INDEX + VANILLA_SLOT_COUNT, false)) {
		return ItemStack.EMPTY;
		}
		} else {
		//System.out.println("Invalid slotIndex:" + index);
		return ItemStack.EMPTY;
		}
		// If stack size == 0 (the entire stack was moved) set slot contents to null
		if (sourceStack.getCount() == 0) {
		sourceSlot.set(ItemStack.EMPTY);
		} else {
		sourceSlot.setChanged();
		}
		sourceSlot.onTake(pe, sourceStack);
		return copyOfSourceStack;
		}
		
		//########## ########## ##########
		@Override
		public boolean stillValid(Player pe) {
		return stillValid(ContainerLevelAccess.create(level, blockEntity.getBlockPos()),
		pe, BlockInit.BLOCK_BRIEFCASE.get());
		}
		
		
		
		//########## ########## ##########
		//Draw Player Armor
		private void addPlayerArmorSlots(Inventory playerInventory) {
		// 36
		
		this.addSlot(new Slot(playerInventory, 39, 8, 8));
		
		this.addSlot(new Slot(playerInventory, 38, 8, 26));
		
		this.addSlot(new Slot(playerInventory, 37, 8, 44));
		
		this.addSlot(new Slot(playerInventory, 36, 8, 62));
		
		this.addSlot(new Slot(playerInventory, 40, 26, 53));
		
		}
		
		//########## ########## ##########
		//Draw Player Inventory
		private void addPlayerInventory(Inventory inventory) {
		for (int i = 0; i < 3; ++i) {
		for (int l = 0; l < 9; ++l) {
		this.addSlot(new Slot(inventory, l + i * 9 + 9, 8 + l * 18, 86 + i * 18));
		}
		}
		}
		
		//########## ########## ##########
		//Draw the Hotbar
		private void addPlayerHotbar(Inventory inventory) {
		for (int i = 0; i < 9; ++i) {
		this.addSlot(new Slot(inventory, i, 8 + i * 18, 144));
		}
		}
		
		//########## ########## ##########
		private void addPlayerHotbar(Inventory inventory, ItemStack container) {
		for (int i = 0; i < 9; ++i) {
		if (!inventory.getItem(i).equals(container)) {
		this.addSlot(new Slot(inventory, i, 8 + i * 18, 144));
		}
		}
		}
		
		
		}				
			

 

Spoiler

				
			package mercmod.menus;
		
		import com.mojang.blaze3d.systems.RenderSystem;
		import mercmod.mercmod;
		import net.minecraft.client.gui.GuiGraphics;
		import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen;
		import net.minecraft.client.renderer.GameRenderer;
		import net.minecraft.network.chat.Component;
		import net.minecraft.resources.ResourceLocation;
		import net.minecraft.world.entity.player.Inventory;
		
		//########## ########## ##########
		public class ScreenBriefcase extends AbstractContainerScreen<MenuBriefcase> {
		private static final ResourceLocation TEXTURE =
		new ResourceLocation(mercmod.MOD_ID, "textures/gui/briefcase_menu.png");
		
		//########## ########## ##########
		public ScreenBriefcase(MenuBriefcase menu, Inventory inventory, Component name) {
		super(menu, inventory, name);
		}
		
		//########## ########## ##########
		@Override
		protected void init() {
		super.init();
		this.inventoryLabelY = 10000;
		this.titleLabelY = 10000;
		}
		
		//########## ########## ##########
		@Override
		protected void renderBg(GuiGraphics guiGraphics, float pPartialTick, int pMouseX, int pMouseY) {
		RenderSystem.setShader(GameRenderer::getPositionTexShader);
		RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F);
		RenderSystem.setShaderTexture(0, TEXTURE);
		int x = (width - imageWidth) / 2;
		int y = (height - imageHeight) / 2;
		
		guiGraphics.blit(TEXTURE, x, y, 0, 0, imageWidth, imageHeight);
		
		renderProgressArrow(guiGraphics, x, y);
		}
		
		//########## ########## ##########
		//progress arrow position
		private void renderProgressArrow(GuiGraphics guiGraphics, int x, int y) {
		if(menu.isCrafting()) {
		guiGraphics.blit(TEXTURE, x + 156, y + 30, 176, 0, 8, menu.getScaledProgress());
		}
		}
		
		//########## ########## ##########
		@Override
		public void render(GuiGraphics guiGraphics, int mouseX, int mouseY, float delta) {
		renderBackground(guiGraphics, mouseX, mouseY, delta);
		super.render(guiGraphics, mouseX, mouseY, delta);
		renderTooltip(guiGraphics, mouseX, mouseY);
		}
		}				
			


 

 

i have this method that draws the slots for the armor, the part i dont get i slike wheres the code that responds when you set an item in a item slot to do checks and allow the item to be set or not 

	//########## ########## ##########
//Draw Player Armor
private void addPlayerArmorSlots(Inventory playerInventory) {
// 36

this.addSlot(new Slot(playerInventory, 39, 8, 8));

this.addSlot(new Slot(playerInventory, 38, 8, 26));

this.addSlot(new Slot(playerInventory, 37, 8, 44));

this.addSlot(new Slot(playerInventory, 36, 8, 62));

this.addSlot(new Slot(playerInventory, 40, 26, 53));

}
	

 

theres must be a method that triggers when you set a itemstack inside an slot and allows to do a check if its a valid item for that slot 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.