All pastes #33483 Raw Edit

Something

public text v1 · immutable
#33483 ·published 2005-12-13 04:48 UTC
rendered paste body
        int coordAY = charY + radius;                                       // Y Coord of point A
        double distanceOA = radius;                                         // Distance from char to point A
        double angleA = Math.asin(coordAY / distanceOA);

        double angleC = 360.0 / ((this.getHeading() / 61794.0) * 100.0);    // Angle at char from point A to point B

        double distanceOB = radius;                                         // Distance from char to point B
        double angleB = 180 - angleA - angleC;                              // Angle at point B from origin to point A
        int coordBY = (int)(Math.sin(angleB) * distanceOB);
        int coordBX = (int)(charX - Math.sqrt((distanceOB * distanceOB) - ((charY - coordBY) * (charY - coordBY))));

        double distanceOTarget;                                             // Distance from origin to target
        double distanceBTarget;                                             // Distance from point B to target
        double angleCheck = 2 * Math.asin((Math.sin(90) / distanceOTarget) * (distanceBTarget / 2)); // Angle at char from point B to target