@Override
  public void render(Renderer renderer) {
    int subimageIndex = 0;
    if (angle > 337.5 || (angle >= 0 && angle <= 22.5)) subimageIndex = 0;
    else if (angle > 22.5 && angle <= 67.5) subimageIndex = 1;
    else if (angle > 67.5 && angle <= 112.5) subimageIndex = 2;
    else if (angle > 112.5 && angle <= 157.5) subimageIndex = 3;
    else if (angle > 157.5 && angle <= 202.5) subimageIndex = 4;
    else if (angle > 202.5 && angle <= 247.5) subimageIndex = 5;
    else if (angle > 247.5 && angle <= 292.5) subimageIndex = 6;
    else subimageIndex = 7;

    RGBImage img = rocketSheet.getSubImage(14 * subimageIndex, 0, 14, 14);
    renderer.DrawImage(
        img, -1, (int) (x - getXr()), (int) (y - getYr()), img.getWidth(), img.getHeight());
  }