Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[1.8] Problem with getActualState


Recommended Posts



I've a block that needs to update the state based on the amount of ice.

The blockstate.json file of this block needs more than 15 combinations (Facing & ice 1 -> 10). So I use getActualState().

But somehow, my

int ice = ((Integer) state.getValue(ICE).intValue();[/Code]

always prints the value of 10 (system.out.println() in getActualState() method).

I don't know how this happen.



Block class:



Creator of the Master Chef Mod and many more to come.


If I helped you, please click the 'thank you' button.

Link to comment
Share on other sites

When using IBlockState properties that are not stored in metadata you have to do some things different:


a) Writing them needs to write the actual backing storage (e.g. the TileEntity). You cannot set those states using world.setBlockState, they will simply revert to the default state of your Block. world.setBlockState only stores the metadata of your state (which is why getActualState exists, to enrich that metadata-stored state).


b) Reading them will always require you to call getActualState, world.getBlockState alone will not contain any of your "special" properties.

Link to comment
Share on other sites

I don't understand why you read property ICE and then write it back.

Also, you didn't implement getMetaFromState and getStateFromMeta well. Since you don't have a getStateFromMeta, the state will always be the default state.


And... using getActualState means some states are calculated not stored in meta. For example, the direction of redstone wire. If your block states cannot be calculated, I suppose tile entity is a better choice.

Author of Tao Land Mod.

width=200 height=69http://taoland.herbix.me/images/1/14/TaoLandLogo.png[/img]

Also, author of RenderTo


I'm not an English native speaker. I just try my best.

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.

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.


  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.