Skip to content
This repository was archived by the owner on Jan 3, 2020. It is now read-only.

Commit d0cc0d3

Browse files
committed
cleanup
1 parent 10f402f commit d0cc0d3

File tree

1 file changed

+15
-24
lines changed

1 file changed

+15
-24
lines changed

src/main/java/org/devinprogress/autoharvest/AutoHarvest.java

Lines changed: 15 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
* This Mod is published under GPLv3
3333
* Use it *AT YOUR OWN RISK*
3434
* RecursiveG
35-
* 2014 Sept. 29th
35+
* 2014 Sept. 29th
3636
*
3737
*
3838
*
@@ -53,16 +53,17 @@
5353
* along with this program. If not, see <http://www.gnu.org/licenses/>.
5454
*/
5555

56-
@Mod(modid="autoharvest", name="Auto Harvest Mod", version="0.1-dev")
56+
@Mod(modid="autoharvest", name="Auto Harvest Mod", version="1.0")
5757
public class AutoHarvest {
5858
private boolean enabled=false;
5959
private boolean harvestTick=true;
6060
private KeyBinding toggleKey=new KeyBinding("Toggle Enabled/Disabled", Keyboard.KEY_H,"Auto Harvest Mod");
6161
private static int harvestRange=1;
62+
private Minecraft mc=null;
63+
6264
private static final Set<Integer> grassBlockIds =new HashSet<Integer>(Arrays.asList(new Integer[]{
6365
6,31,32,37,38,39,40,175
6466
}));
65-
private Minecraft mc=null;
6667
private static final Set<Item> plantableItems=new HashSet<Item>(){{
6768
add(Items.wheat_seeds);
6869
add(Items.carrot);
@@ -134,8 +135,8 @@ private void doClearGrass(EntityPlayer p){
134135
for(int deltaY=-1;deltaY<=1;++deltaY)
135136
for(int deltaX=-2;deltaX<=2;++deltaX)
136137
for(int deltaZ=-2;deltaZ<=2;++deltaZ)
137-
if(canClearGrass(w,X + deltaX, Y+deltaY, Z + deltaZ)){
138-
mc.playerController.onPlayerDamageBlock(X + deltaX, Y + deltaY, Z + deltaZ, 1);
138+
if(grassBlockIds.contains(Block.getIdFromBlock(w.getBlock(X+deltaX,Y+deltaY,Z+deltaZ)))){
139+
mc.playerController.onPlayerDamageBlock(X+deltaX,Y+deltaY,Z+deltaZ,1);
139140
return;
140141
}
141142
}
@@ -148,7 +149,7 @@ private void doHarvest(EntityPlayer p){
148149
for(int deltaX=-harvestRange;deltaX<=harvestRange;++deltaX)
149150
for(int deltaZ=-harvestRange;deltaZ<=harvestRange;++deltaZ){
150151
if(canHarvest(w,p,X+deltaX,Y,Z+deltaZ)) {
151-
mc.playerController.onPlayerDamageBlock(X + deltaX, Y, Z + deltaZ, 1);
152+
mc.playerController.onPlayerDamageBlock(X+deltaX,Y,Z+deltaZ,1);
152153
return;
153154
}
154155
}
@@ -161,35 +162,25 @@ private void doPlant(EntityPlayer p){
161162
int Z=(int)Math.floor(p.posZ);
162163
for(int deltaX=-harvestRange;deltaX<=harvestRange;++deltaX)
163164
for(int deltaZ=-harvestRange;deltaZ<=harvestRange;++deltaZ){
164-
if(canPlantOn(w, p,X + deltaX, Y, Z + deltaZ)) {
165+
if(canPlantOn(w,p,X+deltaX,Y,Z+deltaZ)) {
165166
ItemStack seed=mc.thePlayer.inventory.getCurrentItem();
166-
mc.playerController.onPlayerRightClick(p, w, seed, X + deltaX, Y, Z + deltaZ, 1,
167-
Vec3.createVectorHelper(X + deltaX + 0.5, Y + 1, Z + deltaZ + 0.5));
167+
mc.playerController.onPlayerRightClick(p,w,seed,X+deltaX,Y,Z+deltaZ,1,
168+
Vec3.createVectorHelper(X+deltaX+0.5,Y+1,Z+deltaZ+0.5));
168169
return;
169170
}
170171
}
171172
}
172173

173-
private boolean canClearGrass(World w,int X,int Y,int Z){
174-
return grassBlockIds.contains(Block.getIdFromBlock(w.getBlock(X, Y, Z)));
175-
}
176-
177174
private boolean canHarvest(World w,EntityPlayer p,int X,int Y,int Z){
178175
Class<?> c=w.getBlock(X, Y, Z).getClass();
179-
return harvestMap.containsKey(c)&&harvestMap.get(c)==p.inventory.getCurrentItem().getItem()&&CropGrown(w,X,Y,Z,c);
180-
}
181-
182-
private boolean CropGrown(World w,int X,int Y,int Z,Class<?> cropClass){
183-
int meta=w.getBlockMetadata(X,Y,Z);
184-
return cropMatureData.get(cropClass)==meta;
176+
return harvestMap.containsKey(c) && cropMatureData.get(c)==w.getBlockMetadata(X,Y,Z) &&
177+
harvestMap.get(c) == p.inventory.getCurrentItem().getItem();
185178
}
186179

187180
private boolean canPlantOn(World w,EntityPlayer p,int X,int Y,int Z){
188181
Item i=p.inventory.getCurrentItem().getItem();
189-
boolean haveSpace=w.getBlock(X,Y+1,Z)instanceof BlockAir;
190-
boolean isFarm=w.getBlock(X,Y,Z) instanceof BlockFarmland;
191-
boolean CropOnFarm=plantableItems.contains(i);
192-
boolean nether_wart=(w.getBlock(X,Y,Z) instanceof BlockSoulSand)&&(i==Items.nether_wart);
193-
return haveSpace&&(nether_wart||(isFarm&&CropOnFarm));
182+
return w.getBlock(X,Y+1,Z)instanceof BlockAir &&
183+
(w.getBlock(X,Y,Z) instanceof BlockFarmland && plantableItems.contains(i) ||
184+
w.getBlock(X,Y,Z) instanceof BlockSoulSand && i==Items.nether_wart);
194185
}
195186
}

0 commit comments

Comments
 (0)