(List<BlockPos> already, CalculationContext context)
| 224 | } |
| 225 | |
| 226 | private void rescan(List<BlockPos> already, CalculationContext context) { |
| 227 | BlockOptionalMetaLookup filter = filterFilter(); |
| 228 | if (filter == null) { |
| 229 | return; |
| 230 | } |
| 231 | if (Baritone.settings().legitMine.value) { |
| 232 | return; |
| 233 | } |
| 234 | List<BlockPos> dropped = droppedItemsScan(); |
| 235 | List<BlockPos> locs = searchWorld(context, filter, Baritone.settings().mineMaxOreLocationsCount.value, already, blacklist, dropped); |
| 236 | locs.addAll(dropped); |
| 237 | if (locs.isEmpty() && !Baritone.settings().exploreForBlocks.value) { |
| 238 | logDirect("No locations for " + filter + " known, cancelling"); |
| 239 | if (Baritone.settings().notificationOnMineFail.value) { |
| 240 | logNotification("No locations for " + filter + " known, cancelling", true); |
| 241 | } |
| 242 | cancel(); |
| 243 | return; |
| 244 | } |
| 245 | knownOreLocations = locs; |
| 246 | } |
| 247 | |
| 248 | private boolean internalMiningGoal(BlockPos pos, CalculationContext context, List<BlockPos> locs) { |
| 249 | // Here, BlockStateInterface is used because the position may be in a cached chunk (the targeted block is one that is kept track of) |
no test coverage detected