Jump to content

[1.11.2] What consequences could have the use of FMLClientHandler in this specific situation?


Recommended Posts

Posted

In an overridden method that doesn't tell me the facing on which a block was hit after breaking (onBlockDestroyed), I am using FMLClientHandler.instance().getClient() and if it is not null I try to get what face of the block was hit with FMLClientHandler.instance().getClient().objectMouseOver.sideHit.

 

Everything works fine and I have not had any problems. I don't know if this is the best way, it is the only way I found. I call this inside the logical server and I am playing in single player. 

 

If the mod is used in a multiplayer server in which the server as well the client have the mod installed, would that cause trouble?

 

If the answer is yes, would there be a preferred way to get the side of the block that was hit?

Posted

I understand. Thanks for explaining. I could have messed up really bad. I must change my code.

 

I am trying to get which face of the block was hit when a block broke because depending on the face that it was hit, I will perform operations on neighbor blocks. If it was hit on the West or East side I will ignore the East and West offset blocks and work on the North and South offsets. If it was hit on the North and South offsets I will ignore the North and South offsets and work on the East and West offsets. But the block has to first break before I can perform operations on the neighbor blocks.

 

I have an item that extends ItemPickaxe and I override the onBlockDestroyed method which has signature

public Boolean onBlockDestroyed(ItemStack stack, World worldIn, IBlockState state, BlockPos pos, EntitiLivingBase entityLiving)

 

I thought I could get the face it was hit from the IBlockState, but I can't find any method that would return it. Or maybe I'm not searching well.

To get that information I later thought I could override the onBlockStartBreak method which gets called right before onBlockDestroyed gets called, but that one has less information passed as arguments. onBlockStartBreak has only an ItemStack, BlockPos, and EntityPlayer on its signature.

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.