mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-22 23:30:14 +00:00
feat: add audio feedback for quest accept/complete and transaction errors
Wire up UISoundManager calls that were loaded but never invoked: - playQuestActivate() on quest accept - playQuestComplete() on server-confirmed quest completion - playError() on trainer buy failure, vendor buy failure, and sell failure
This commit is contained in:
parent
8c3060f261
commit
a0b978f95b
1 changed files with 24 additions and 0 deletions
|
|
@ -3925,6 +3925,11 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
|||
else if (errorCode != 0) msg += " (error " + std::to_string(errorCode) + ")";
|
||||
|
||||
addSystemChatMessage(msg);
|
||||
// Play error sound so the player notices the failure
|
||||
if (auto* renderer = core::Application::getInstance().getRenderer()) {
|
||||
if (auto* sfx = renderer->getUiSoundManager())
|
||||
sfx->playError();
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -4535,6 +4540,10 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
|||
};
|
||||
const char* msg = (result < 7) ? sellErrors[result] : "Unknown sell error";
|
||||
addSystemChatMessage(std::string("Sell failed: ") + msg);
|
||||
if (auto* renderer = core::Application::getInstance().getRenderer()) {
|
||||
if (auto* sfx = renderer->getUiSoundManager())
|
||||
sfx->playError();
|
||||
}
|
||||
LOG_WARNING("SMSG_SELL_ITEM error: ", (int)result, " (", msg, ")");
|
||||
}
|
||||
}
|
||||
|
|
@ -4688,6 +4697,10 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
|||
default: break;
|
||||
}
|
||||
addSystemChatMessage(msg);
|
||||
if (auto* renderer = core::Application::getInstance().getRenderer()) {
|
||||
if (auto* sfx = renderer->getUiSoundManager())
|
||||
sfx->playError();
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
@ -5015,6 +5028,11 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
|||
if (questCompleteCallback_) {
|
||||
questCompleteCallback_(questId, it->title);
|
||||
}
|
||||
// Play quest-complete sound
|
||||
if (auto* renderer = core::Application::getInstance().getRenderer()) {
|
||||
if (auto* sfx = renderer->getUiSoundManager())
|
||||
sfx->playQuestComplete();
|
||||
}
|
||||
questLog_.erase(it);
|
||||
LOG_INFO(" Removed quest ", questId, " from quest log");
|
||||
break;
|
||||
|
|
@ -20070,6 +20088,12 @@ void GameHandler::acceptQuest() {
|
|||
pendingQuestAcceptTimeouts_[questId] = 5.0f;
|
||||
pendingQuestAcceptNpcGuids_[questId] = npcGuid;
|
||||
|
||||
// Play quest-accept sound
|
||||
if (auto* renderer = core::Application::getInstance().getRenderer()) {
|
||||
if (auto* sfx = renderer->getUiSoundManager())
|
||||
sfx->playQuestActivate();
|
||||
}
|
||||
|
||||
questDetailsOpen = false;
|
||||
questDetailsOpenTime = std::chrono::steady_clock::time_point{};
|
||||
currentQuestDetails = QuestDetailsData{};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue