Posted May 20May 20 I have a block that changes it's blockstate when you click on it with another copy of this block. I have a method for this and it works but I wonder if there are better ways of doing the exact same thing. public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, BlockHitResult pHit) { if (!pLevel.isClientSide){ // check if player is holding a pot block // it is required to change the state "POTS" - the amount of pots that block contains // the amount of pots must not exeed 4 if (pHand == InteractionHand.MAIN_HAND && pPlayer.getMainHandItem().is((ModBlocks.LITTLE_POT.get().asItem())) && pState.getValue(POTS)<4) { // update block with new "POTS" state value pLevel.setBlock(pPos, pState.cycle(POTS), 3); // success return InteractionResult.CONSUME; } // otherwise fail } return InteractionResult.FAIL; } Thank you. Edited May 20May 20 by flexindahard
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.