Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

How is the best way for me to make bedrock destructible?  I want to make a wand that will be able to mine. bedrock. I just need to know how to make bedrock mine-able. (looking at mojang's code, there is a indestructible property added to bedrock.)

Any help would be appreciated.

 

-Thomas

Lets make forge modding the best it can be!

I haven't coded items for a long time, but this might help you. In your item class, you add the method onItemUse(), get the player, get his looking vector and set an air block at the given coordinates of the vector. (and spawn a drop)

I haven't coded items for a long time, but this might help you. In your item class, you add the method onItemUse(), get the player, get his looking vector and set an air block at the given coordinates of the vector. (and spawn a drop)

 

this, should solve everything for you ;)

If you can't get it to work either rethink what you are doing or re-visit the java sections :)

If you guys dont get it.. then well ya.. try harder...

In on item use the par2 par3 and par4 are x y and z of the block clicked par in the world so you can do.

If(par1world.getBlockID(par2,par3,par4)==Block.bedrock){

par1world.setblock(par2,par3,par4,0);

Then all you have to do is spawn a item in the worlxld.

In on item use the par2 par3 and par4 are x y and z of the block clicked par in the world so you can do.

If(par1world.getBlockID(par2,par3,par4)==Block.bedrock){

par1world.setblock(par2,par3,par4,0);

Then all you have to do is spawn a item in the worlxld.

I think you mean

Block.bedrock.blockId

  • Author

I have transposed some code across from another tool of mine, and have thought about this code:

public boolean func_111207_a(ItemStack itemstack, EntityPlayer player,
		EntityLivingBase target) {
	if (!target.worldObj.equals(Block.bedrock)){
		Block.bedrock.setHardness(1.5f);

	}
	return false;
}

Would that work?  What would i have to add for the block to be destroyed?

Lets make forge modding the best it can be!

I can say right now, that's not gonna work. You can't compare World to Block.  It just won't work. If you're new to java, I suggest understanding the concept of object oriented programming.

  • Author

Ok, I now understand Object Orientated Programming in java. But I am still confused on this matter. Can anyone just tell me how to make a wand that when I right click it destroys bedrock?

  - Thomas

Lets make forge modding the best it can be!

  • Author
I'm not at my computer, but when I am I'll post some code that you can use.

 

Thank you very much indeed!

Lets make forge modding the best it can be!

	public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ)
{
	if(!world.isRemote)
	{
		if(world.getBlockId(x, y, z) == Block.bedrock.blockID)
		{
			world.setBlockToAir(x, y, z);
			EntityItem entityitem = new EntityItem(world, x, y, z, new ItemStack(Block.bedrock, 1, 0));
			world.spawnEntityInWorld(entityitem);
                                //damage the tool
			stack.damageItem(1, player);
			return true;
		}
		else 
		{
			return false;
		}
	}
	else
	{
		return false;
	}
}

 

I would like to make a modification to that.

	public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ)
{
	if(!world.isRemote)
	{
		if(world.getBlockId(x, y, z) == Block.bedrock.blockID)
		{
			world.setBlockToAir(x, y, z);
			EntityItem entityitem = new EntityItem(world, player.posX, player.posY, player.posZ, new ItemStack(Block.bedrock));
			world.spawnEntityInWorld(entityitem);
                                //damage the tool
			stack.damageItem(1, player);
			return true;
		}
	}
                return false;
}

that should work and spawn the item on the player.

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...

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.