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

I've been looking through vanilla and I think this works.  Would someone confirm if I've got this right or if I'm missing stuff.

 

My goal is to put down a custom bed in place of the normal one so it doesn't blow up in my custom dimensions.

 

 

 

 

                    // Get current meta

                    IBlockState state = world.getBlockState(pos_Temp);

                   

                    // Change the block with the meta intact

                        world.getBlockState(pos_Temp).withProperty(BlockBed.PART, state.getValue(BlockBed.PART)).withProperty(BlockDirectional.FACING, state.getValue(BlockDirectional.FACING));

                   

 

 

 

Long time Bukkit & Forge Programmer

Happy to try and help

  • Author

Looking at the bed in 1.8, I see another way around this in terms of avoiding the explosion.

 

However, I still would like to know about the state copy I put above.

Long time Bukkit & Forge Programmer

Happy to try and help

I think you should use World#setBlockState(...)

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

  • Author

Just noticed some of my code was wrapped weird in the post.  might be hard to read.

 

If I setBlockState, that sets the entire block again.  I just want to modify a few of the state properties and leave the rest alone.

Long time Bukkit & Forge Programmer

Happy to try and help

Then there is no way theoretically...

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

IBlockState

s are immutable.

IBlockState#withProperty

returns a different

IBlockState

instance with the property set to the specified value rather than modifying the existing instance.

 

If you want to change the state of a block in the world, you have to use

World#setBlockState

. Simply calling

IBlockState#withProperty

and not doing anything with the result does nothing.

 

Your code will correctly preserve any properties except the ones you change, though.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

  • Author

I get it now.  Thank you Choonster.

Long time Bukkit & Forge Programmer

Happy to try and help

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.