Jump to content

Recommended Posts

Posted (edited)

Hello there,

 

I extended the DoorBlock class, everything works fine.  Just after breaking the upper/lower part of the door it drops itself 2x.

( Which could be used to duplicate the doors )

I don't want to have an Item for the door, I want the default model to be the item. If there is any way to accomplish this i would thank you.

My class doesn't has any special code, it just has some properties like hardness, harvestlevel.. It is just the extended DoorBlock class. 

Edited by Kikoz
the version doesn't matters
Posted
public class SpecialDoor extends DoorBlock {

public SpecialDoor(Properties builder)  {
	super(builder);
}


protected static final VoxelShape EAST = Block.makeCuboidShape(0.0D, 0.0D, 7.0D, 16.0D, 16.0D, 9.0D);
protected static final VoxelShape NORTH = Block.makeCuboidShape(7.0D, 0.0D, 0.0D, 9.0D, 16.0D, 16.0D);

protected static final VoxelShape EAST4 = Block.makeCuboidShape(15.0D, 1.0D, 7.0D, 16.0D, 16.0D, 9.0D);
protected static final VoxelShape EAST5 = Block.makeCuboidShape(0.0D, 1.0D, 7.0D, 1.0D, 16.0D, 9.0D);

protected static final VoxelShape NORTH4 = Block.makeCuboidShape(7.0D, 1.0D, 15.0D, 9.0D, 16.0D, 16.0D);
protected static final VoxelShape NORTH6 = Block.makeCuboidShape(7.0D, 1.0D, 0.0D, 9.0D, 16.0D, 1.0D);

protected static final VoxelShape EAST2 = VoxelShapes.or(EAST4, EAST5);
protected static final VoxelShape NORTH2 = VoxelShapes.or(NORTH4, NORTH6);


@Override
public VoxelShape getShape(BlockState state, IBlockReader blockReader, BlockPos pos, ISelectionContext selectionContext)
{
    switch (state.get(FACING))
    {
   
        case NORTH:
     	   final Boolean half = state.get(OPEN);
            if (half == true) return EAST2;
            else return EAST;

        case SOUTH:
     	   final Boolean half2 = state.get(OPEN);
            if (half2 == true) return EAST2;
            else return EAST;

        case EAST:
     	   final Boolean half3 = state.get(OPEN);
            if (half3 == true) return NORTH2;
            else return NORTH;

        default: case WEST:
     	   final Boolean half4 = state.get(OPEN);
            if (half4 == true) return NORTH2;
            else return NORTH;
    }
}

public SpecialDoor() {
		super(Properties.create(Material.GLASS)
				.sound(SoundType.GLASS)
				.hardnessAndResistance(0.2f,1.8f)
				.lightValue(0)
				.harvestTool(ToolType.AXE)
				.harvestLevel(1)	
				);	
	}}

 

Posted
2 hours ago, diesieben07 said:

If your block does not have a corresponding Item it cannot exist in inventories or as an item entity.

Post your code.

I don't know how to create a corresponding item to it.

Posted
2 minutes ago, Kikoz said:

I don't know how to create a corresponding item to it.

Have you looked at how vanilla does it?

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted
On 4/6/2020 at 9:22 PM, Animefan8888 said:

That makes no sense. Have you tried looking at Items.ACACIA_DOOR or any other door?

Fixed, had just wrong names set in the loot_tables

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.