Found a better solution
ArrayList<String> list = new ArrayList<String>();
Minecraft minecraft = Minecraft.getInstance();
ClientPlayerEntity player= minecraft.player;
ClientWorld level = minecraft.level;
RayTraceResult block = player.pick(20.0D, 0.0F, false);
RayTraceResult fluid = player.pick(20.0D, 0.0F, true);
\\BLOCK
if(block.getType() == RayTraceResult.Type.BLOCK)
{
BlockPos blockpos = ((BlockRayTraceResult)block).getBlockPos();
BlockState blockstate = level.getBlockState(blockpos);
LOGGER.info("Looking at: "+blockstate.getBlock()+"\nPosition= "+ blockpos.getX() + ", " + blockpos.getY() + ", " + blockpos.getZ());
}
\\FLUID
if(fluid.getType() == RayTraceResult.Type.BLOCK)
{
BlockPos blockpos = ((BlockRayTraceResult)fluid).getBlockPos();
BlockState blockstate = level.getBlockState(blockpos);
LOGGER.info("Looking at: "+blockstate.getBlock()+"\nPosition= "+ blockpos.getX() + ", " + blockpos.getY() + ", " + blockpos.getZ());
}
What do the first two variables do?
player.pick(20.0D, 0.0F, false);