001/* 002 * This file is part of Baritone. 003 * 004 * Baritone is free software: you can redistribute it and/or modify 005 * it under the terms of the GNU Lesser General Public License as published by 006 * the Free Software Foundation, either version 3 of the License, or 007 * (at your option) any later version. 008 * 009 * Baritone is distributed in the hope that it will be useful, 010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 012 * GNU Lesser General Public License for more details. 013 * 014 * You should have received a copy of the GNU Lesser General Public License 015 * along with Baritone. If not, see <https://www.gnu.org/licenses/>. 016 */ 017 018package baritone.api.process; 019 020import net.minecraft.util.math.BlockPos; 021 022public interface IFarmProcess extends IBaritoneProcess { 023 024 /** 025 * Begin to search for crops to farm with in specified aria 026 * from specified location. 027 * 028 * @param range The distance from center to farm from 029 * @param pos The center position to base the range from 030 */ 031 void farm(int range, BlockPos pos); 032 033 /** 034 * Begin to search for nearby crops to farm. 035 */ 036 default void farm() {farm(0, null);} 037 038 /** 039 * Begin to search for crops to farm with in specified aria 040 * from the position the command was executed. 041 * 042 * @param range The distance to search for crops to farm 043 */ 044 default void farm(int range) {farm(range, null);} 045}