message: Vectorize drawSubImage calls for turns and menu button
diff: @@ -219,12 +219,16 @@ void MapViewState::drawResourceInfo()
  if (shouldShowResourcePanel) { mResourceBreakdownPanel.update(); }
  // Turns
  - renderer.drawSubImage(mUiIcons, renderer.width() - 80, position.y(), 128, 0, constants::RESOURCE_ICON_SIZE, constants::RESOURCE_ICON_SIZE);
  + position.x() = static_cast<int>(renderer.width() - 80);
  + const auto turnImageRect = NAS2D::Rectangle<int>{128, 0, constants::RESOURCE_ICON_SIZE, constants::RESOURCE_ICON_SIZE};
  + renderer.drawSubImage(mUiIcons, position, turnImageRect);
  renderer.drawText(*MAIN_FONT, std::to_string(mTurnCount), renderer.width() - 80 + textOffset.x, position.y() + textOffset.y, 255, 255, 255);
  + position = MENU_ICON.startPoint() + NAS2D::Vector<int>{constants::MARGIN_TIGHT, constants::MARGIN_TIGHT};
  bool isMouseInMenu = MENU_ICON.contains(MOUSE_COORDS);
  int menuGearHighlightOffsetX = isMouseInMenu ? 144 : 128;
  - renderer.drawSubImage(mUiIcons, MENU_ICON.x() + constants::MARGIN_TIGHT, MENU_ICON.y() + constants::MARGIN_TIGHT, menuGearHighlightOffsetX, 32, constants::RESOURCE_ICON_SIZE, constants::RESOURCE_ICON_SIZE);
  + const auto menuImageRect = NAS2D::Rectangle<int>{menuGearHighlightOffsetX, 32, constants::RESOURCE_ICON_SIZE, constants::RESOURCE_ICON_SIZE};
  + renderer.drawSubImage(mUiIcons, position, menuImageRect);
  }
  