perromercenary00 Posted October 3, 2022 Share Posted October 3, 2022 hi i have this block is a custome ladder block (BlockInit.OAK_STEEP_LADDER) and i need to know if player is right clicking the ladder whit another ladder of the same kind or the hand is empty the think is i have the reference to mi custome block as a block from mi blockInit class the thing i get from the hand is an item instance i cannot compare blocks to items how i get the itemblock from the block instance? and by the way i also need to know if the hand is empty to return the block as an item to user hand // ########## ########## ########## ########## // Onright click @Override public InteractionResult use(BlockState blkstate, Level warudo, BlockPos pos, Player pe, InteractionHand hand, BlockHitResult hit) { ItemStack itemstack = pe.getItemInHand(hand); if (!warudo.isClientSide) { System.out.println("\n\n use("+ itemstack.getDisplayName().getString() +")\n\n"); if( itemstack.getItem() == BlockInit.OAK_STEEP_LADDER.get??? ) { //do things } } return InteractionResult.sidedSuccess(warudo.isClientSide); // } thank for our attention Quote Link to comment Share on other sites More sharing options...
warjort Posted October 3, 2022 Share Posted October 3, 2022 Block.asItem() assuming your block has a registered BlockItem Quote Boilerplate: If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one. If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install Large files should be posted to a file sharing site like https://gist.github.com You should also read the support forum sticky post. Link to comment Share on other sites More sharing options...
perromercenary00 Posted October 3, 2022 Author Share Posted October 3, 2022 ja thanks thats what i need @Override public InteractionResult use(BlockState blkstate, Level warudo, BlockPos pos, Player pe, InteractionHand hand, BlockHitResult hit) { ItemStack itemstack = pe.getItemInHand(hand); if (!warudo.isClientSide) { System.out.println("\n\n use("+ itemstack.getDisplayName().getString() +")\n\n"); if( itemstack.getItem() == BlockInit.OAK_STEEP_LADDER.get().asItem() ) { System.out.println("\n use(Es una escalera )\n"); } if( itemstack.getItem() == Blocks.AIR.defaultBlockState().getBlock().asItem() ) { System.out.println("\n use(Es AIRE )\n"); } } an empty hand returns a block of air thats weird but it works Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.