select Block Target
fun selectBlockTarget(eyePosition: Vec3, range: Float, wallsRange: Float, candidates: Iterable<Pair<BlockPos, BlockState>>, valueGroup: RotationsValueGroup, provider: ClientModule, considerInventory: Boolean = true, rotate: Boolean = true): BlockPos?
Aims at the first block from candidates whose face is reachable within the given ranges and returns its position, or null if none is reachable. Skips setting the rotation target when rotate is false, e.g. when another module owns the rotation.