コード例 #1
0
  public void doBreakShovel(
      World var1, EntityHuman var2, ItemStack var3, int var4, int var5, int var6, int var7) {
    int typeId = var1.getTypeId(var5, var6, var7);
    int var8 = var1.getData(var5, var6, var7);
    ArrayList var9 = Block.byId[var4].getBlockDropped(var1, var5, var6, var7, var8, 0);
    Iterator var10 = var9.iterator();

    if (!breakBlock(null, var2, var1, var5, var6, var7, typeId, var8)) return;

    while (var10.hasNext()) {
      ItemStack var11 = (ItemStack) var10.next();
      addToDroplist(var3, var11);
    }

    BigWorldHook.setTypeIdHooked(var1, var5, var6, var7, 0);

    for (int var14 = -1; var14 <= 1; var14++) {
      for (int var13 = -1; var13 <= 1; var13++) {
        for (int var12 = -1; var12 <= 1; var12++) {
          if (var1.getTypeId(var5 + var14, var6 + var13, var7 + var12) != var4) continue;
          doBreakShovelAdd(var1, var2, var3, var4, var5 + var14, var6 + var13, var7 + var12);
        }
      }
    }

    if (var1.random.nextInt(8) == 0) {
      var1.a("largesmoke", var5, var6 + 1, var7, 0.0D, 0.0D, 0.0D);
    }

    if (var1.random.nextInt(8) == 0) {
      var1.a("explode", var5, var6 + 1, var7, 0.0D, 0.0D, 0.0D);
    }
    ejectDropList(var1, var3, var5, var6, var7);
  }
コード例 #2
0
  public void doBreakShovelAdd(
      World var1, EntityHuman var2, ItemStack var3, int var4, int var5, int var6, int var7) {
    if (getFuelRemaining(var3) < 1) {
      ConsumeReagent(var3, var2, false);
    }

    if (getFuelRemaining(var3) > 0) {
      int var8 = var1.getData(var5, var6, var7);
      ArrayList var9 = Block.byId[var4].getBlockDropped(var1, var5, var6, var7, var8, 0);
      Iterator var10 = var9.iterator();

      while (var10.hasNext()) {
        ItemStack var11 = (ItemStack) var10.next();
        addToDroplist(var3, var11);
      }

      BigWorldHook.setTypeIdHooked(var1, var5, var6, var7, 0);
      setShort(var3, "fuelRemaining", getFuelRemaining(var3) - 1);

      for (int var14 = -1; var14 <= 1; var14++) {
        for (int var13 = -1; var13 <= 1; var13++) {
          for (int var12 = -1; var12 <= 1; var12++) {
            if (var1.getTypeId(var5 + var14, var6 + var13, var7 + var12) != var4) continue;
            doBreakShovelAdd(var1, var2, var3, var4, var5 + var14, var6 + var13, var7 + var12);
          }
        }
      }

      if (var1.random.nextInt(8) == 0) {
        var1.a("largesmoke", var5, var6 + 1, var7, 0.0D, 0.0D, 0.0D);
      }

      if (var1.random.nextInt(8) == 0) {
        var1.a("explode", var5, var6 + 1, var7, 0.0D, 0.0D, 0.0D);
      }
    }
  }