fix: correct Eye of the Storm bgTypeId and simplify BG invite popup

Eye of the Storm uses bgTypeId 7 (from BattlemasterList.dbc), not 6.
BG invite popup now uses the stored bgName from the queue slot instead
of re-deriving the name with a duplicate switch statement.
This commit is contained in:
Kelsi 2026-03-18 12:03:36 -07:00
parent 64fd7eddf8
commit 5d5083683f
3 changed files with 5 additions and 17 deletions

View file

@ -16119,7 +16119,7 @@ void GameHandler::handleBattlefieldStatus(network::Packet& packet) {
{1, "Alterac Valley"},
{2, "Warsong Gulch"},
{3, "Arathi Basin"},
{6, "Eye of the Storm"},
{7, "Eye of the Storm"},
{9, "Strand of the Ancients"},
{11, "Isle of Conquest"},
{30, "Nagrand Arena"},
@ -16177,6 +16177,7 @@ void GameHandler::handleBattlefieldStatus(network::Packet& packet) {
bgQueues_[queueSlot].bgTypeId = bgTypeId;
bgQueues_[queueSlot].arenaType = arenaType;
bgQueues_[queueSlot].statusId = statusId;
bgQueues_[queueSlot].bgName = bgName;
if (statusId == 1) {
bgQueues_[queueSlot].avgWaitTimeSec = avgWaitSec;
bgQueues_[queueSlot].timeInQueueSec = timeInQueueSec;

View file

@ -13730,22 +13730,8 @@ void GameScreen::renderBgInvitePopup(game::GameHandler& gameHandler) {
ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoCollapse;
if (ImGui::Begin("Battleground Ready!", nullptr, popupFlags)) {
// BG name
std::string bgName;
if (slot->arenaType > 0) {
bgName = std::to_string(slot->arenaType) + "v" + std::to_string(slot->arenaType) + " Arena";
} else {
switch (slot->bgTypeId) {
case 1: bgName = "Alterac Valley"; break;
case 2: bgName = "Warsong Gulch"; break;
case 3: bgName = "Arathi Basin"; break;
case 7: bgName = "Eye of the Storm"; break;
case 9: bgName = "Strand of the Ancients"; break;
case 11: bgName = "Isle of Conquest"; break;
default: bgName = "Battleground"; break;
}
}
// BG name from stored queue data
std::string bgName = slot->bgName.empty() ? "Battleground" : slot->bgName;
ImGui::TextColored(ImVec4(1.0f, 0.85f, 0.2f, 1.0f), "%s", bgName.c_str());
ImGui::TextWrapped("A spot has opened! You have %d seconds to enter.", static_cast<int>(remaining));
ImGui::Spacing();