Posted June 19, 201510 yr Hi, I have recently begun modding in earnest, and have run into a fairly fatal issue: I cannot set blocks. Upon investigation and research, I have determined that World.setBlockState is the appropriate method to use to this end, using this syntax: world.setBlockState(pos, Blocks.stone.getDefaultState()); When using this code to set blocks, the block appears to be changed, but when the block is right clicked or the world is reloaded the block reverts to it's former state. Additionally, breaking the block in survival mode yields the former block's drop. Does anyone have any suggestions or solutions? My assumption is that this is an issue with siding, or something similar, but I have no experience in those areas of the API. (I have not included any more code as I believe that the issue is local to this line, given that none of the referenced fields are modified by the rest of the code)
June 19, 201510 yr You are setting the block on the client side, not the server side. May we see some more of your code?
June 19, 201510 yr Author Which parts of the code? By my understanding, none of the rest is relevant. I have no knowledge of server/client coding, besides world.isRemote and @SidedProxy. How would I set it on the server side?
June 19, 201510 yr Post whole method, including all checks. On of them may limit server side... Check out my mods: BTAM Armor sets Avoid Exploding Creepers Tools compressor Anti Id Conflict Key bindings overhaul Colourfull blocks Invisi Zones
June 19, 201510 yr Author Fixed, was using onItemUseFirst instead of onItemUse. If anyone has the time, could they explain why this caused that effect?
June 19, 201510 yr What was causing your problem is the fact that you were setting the blocks on client side, so the player was unable to interact with them because they were not existing
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.