public void a(OEntity paramOEntity, float paramFloat1, float paramFloat2) {
    double d1 = paramOEntity.aK - aK;

    double d2 = paramOEntity.aM - aM;
    double d3;
    if ((paramOEntity instanceof OEntityLiving)) {
      OEntityLiving localOEntityLiving = (OEntityLiving) paramOEntity;
      d3 = aL + q() - (localOEntityLiving.aL + localOEntityLiving.q());
    } else d3 = (paramOEntity.aU.b + paramOEntity.aU.e) / 2.0D - (aL + q());

    double d4 = OMathHelper.a(d1 * d1 + d2 * d2);

    float f1 = (float) (Math.atan2(d2, d1) * 180.0D / 3.141592741012573D) - 90.0F;
    float f2 = (float) (Math.atan2(d3, d4) * 180.0D / 3.141592741012573D);
    aR = (-b(aR, f2, paramFloat2));
    aQ = b(aQ, f1, paramFloat1);
  }