Вы можете получить направление вашего спрайта по следующей формуле:
public static Vector2 AngleToVector(float angle)
{
return new Vector2((float)Math.Cos(angle), (float)Math.Sin(angle));
}
Вектор, который он возвращает, будет точно указывать на точку, которую вы пытаетесь вычислить. Нормализуйте его, затем умножьте его на количество пикселей, к которым вы хотите обратиться. Это должно сработать.
returnedVector = AngleToVector(currentAngle);
returnedVector.Normalize();
returnedVector *= x;
Выше приведен код C #, но вы сможете преобразовать его на свой язык.