public boolean interactWith( ItemStack var1, EntityHuman var2, World var3, int var4, int var5, int var6, int var7) { if (EEProxy.isClient(var3)) return false; boolean var8 = true; if (chargeLevel(var1) > 0) { cleanDroplist(var1); var2.C_(); var3.makeSound(var2, "flash", 0.8F, 1.5F); for (int var9 = -(chargeLevel(var1) * (var7 != 5 ? (byte) (var7 != 4 ? 1 : 0) : 2)); var9 <= chargeLevel(var1) * (var7 != 5 ? var7 != 4 ? 1 : 2 : 0); var9++) { for (int var10 = -(chargeLevel(var1) * (var7 != 1 ? (byte) (var7 != 0 ? 1 : 0) : 2)); var10 <= chargeLevel(var1) * (var7 != 1 ? var7 != 0 ? 1 : 2 : 0); var10++) { for (int var11 = -(chargeLevel(var1) * (var7 != 3 ? (byte) (var7 != 2 ? 1 : 0) : 2)); var11 <= chargeLevel(var1) * (var7 != 3 ? var7 != 2 ? 1 : 2 : 0); var11++) { int var12 = var4 + var9; int var13 = var5 + var10; int var14 = var6 + var11; int var15 = var3.getTypeId(var12, var13, var14); int var16 = var3.getData(var12, var13, var14); if (canBreak(var15, var16) && attemptBreak(var2, var12, var13, var14)) { if (getFuelRemaining(var1) < 1) { ConsumeReagent(var1, var2, var8); var8 = false; } if (getFuelRemaining(var1) > 0) { ArrayList var17 = Block.byId[var15].getBlockDropped(var3, var12, var13, var14, var16, 0); ItemStack var19; for (Iterator var18 = var17.iterator(); var18.hasNext(); addToDroplist(var1, var19)) var19 = (ItemStack) var18.next(); var3.setTypeId(var12, var13, var14, 0); if (var3.random.nextInt(8) == 0) var3.a("largesmoke", var12, var13, var14, 0.0D, 0.0D, 0.0D); if (var3.random.nextInt(8) == 0) var3.a("explode", var12, var13, var14, 0.0D, 0.0D, 0.0D); setShort(var1, "fuelRemaining", getFuelRemaining(var1) - 1); } } } } } ejectDropList(var3, var1, var4, var5, var6); } return false; }
public boolean interactWithSpecial( ItemStack var1, EntityHuman var2, World var3, int var4, int var5, int var6, int var7) { if (EEProxy.isClient(var3)) { return false; } if (chargeLevel(var1) >= 1) { cleanDroplist(var1); int var8 = var3.getTypeId(var4, var5, var6); if (var8 == Block.GRAVEL.id) { startSearch(var3, var2, var1, var8, var4, var5, var6, false); return true; } } if (chargeLevel(var1) <= 0) { return false; } boolean var19 = true; cleanDroplist(var1); var2.C_(); var3.makeSound(var2, "flash", 0.8F, 1.5F); for (int var9 = -chargeLevel(var1); var9 <= chargeLevel(var1); var9++) { for (int var10 = -chargeLevel(var1); var10 <= chargeLevel(var1); var10++) { int var11 = var4 + var9; int var13 = var6 + var10; if (var7 == 2) { var13 += chargeLevel(var1); } else if (var7 == 3) { var13 -= chargeLevel(var1); } else if (var7 == 4) { var11 += chargeLevel(var1); } else if (var7 == 5) { var11 -= chargeLevel(var1); } int var14 = var3.getTypeId(var11, var5, var13); int var15 = var3.getData(var11, var5, var13); if (!canBreak(var14, var15)) continue; ArrayList var16 = Block.byId[var14].getBlockDropped(var3, var11, var5, var13, var15, 0); Iterator var17 = var16.iterator(); if (!breakBlock(null, var2, var3, var11, var5, var13, var14, var15)) continue; while (var17.hasNext()) { ItemStack var18 = (ItemStack) var17.next(); addToDroplist(var1, var18); } if (var3.random.nextInt(8) == 0) { var3.a("largesmoke", var11, var5, var13, 0.0D, 0.0D, 0.0D); } if (var3.random.nextInt(8) != 0) continue; var3.a("explode", var11, var5, var13, 0.0D, 0.0D, 0.0D); } } ejectDropList(var3, var1, var4, var5, var6); return true; }