/** Returns whether an in-progress EntityAIBase should continue executing */
  public boolean continueExecuting() {
    if (!closestEntity.isEntityAlive()) {
      return false;
    }

    if (theWatcher.getDistanceSqToEntity(closestEntity)
        > (double) (field_75333_c * field_75333_c)) {
      return false;
    } else {
      return lookTime > 0;
    }
  }
  /** Returns whether the EntityAIBase should begin execution. */
  public boolean shouldExecute() {
    leapTarget = leaper.getAttackTarget();

    if (leapTarget == null) {
      return false;
    }

    double d = leaper.getDistanceSqToEntity(leapTarget);

    if (d < 4D || d > 16D) {
      return false;
    }

    if (!leaper.onGround) {
      return false;
    }

    return leaper.getRNG().nextInt(5) == 0;
  }