From 4eede86ce64dbee18c54928ed9a5ad22bbc34b3e Mon Sep 17 00:00:00 2001 From: Rohit Nirmal Date: Sun, 9 Jun 2013 23:27:47 -0500 Subject: [PATCH 1/2] Moved journal open/close sound effect playback to JournalWindowImpl, and have opening sound play only if the player has the journal. --- apps/openmw/mwgui/journalwindow.cpp | 10 +++++++--- apps/openmw/mwinput/inputmanagerimp.cpp | 3 +-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/apps/openmw/mwgui/journalwindow.cpp b/apps/openmw/mwgui/journalwindow.cpp index 5b84c99a5..e7cb9916f 100644 --- a/apps/openmw/mwgui/journalwindow.cpp +++ b/apps/openmw/mwgui/journalwindow.cpp @@ -183,7 +183,12 @@ namespace if (!MWBase::Environment::get().getWindowManager ()->getJournalAllowed ()) { MWBase::Environment::get().getWindowManager()->popGuiMode (); - } + } + else + { + // play opening sound only if the player has the journal + MWBase::Environment::get().getSoundManager()->playSound ("book open", 1.0, 1.0); + } mModel->load (); setBookMode (); @@ -213,6 +218,7 @@ namespace void close() { + MWBase::Environment::get().getSoundManager()->playSound ("book close", 1.0, 1.0); mModel->unload (); getPage (LeftBookPage)->showPage (Book (), 0); @@ -432,8 +438,6 @@ namespace void notifyClose(MyGUI::Widget* _sender) { - MWBase::Environment::get().getSoundManager()->playSound ("book close", 1.0, 1.0); - MWBase::Environment::get().getWindowManager ()->popGuiMode (); } diff --git a/apps/openmw/mwinput/inputmanagerimp.cpp b/apps/openmw/mwinput/inputmanagerimp.cpp index 00c520de9..e9a0e5089 100644 --- a/apps/openmw/mwinput/inputmanagerimp.cpp +++ b/apps/openmw/mwinput/inputmanagerimp.cpp @@ -658,12 +658,11 @@ namespace MWInput if(gameMode) { - MWBase::Environment::get().getSoundManager()->playSound ("book open", 1.0, 1.0); mWindows.pushGuiMode(MWGui::GM_Journal); } else if(mWindows.getMode() == MWGui::GM_Journal) { - MWBase::Environment::get().getSoundManager()->playSound ("book close", 1.0, 1.0); + mWindows.popGuiMode(); } // .. but don't touch any other mode. From b5caa25e5c5b80cd3526083aeec47902995c2617 Mon Sep 17 00:00:00 2001 From: Rohit Nirmal Date: Mon, 10 Jun 2013 19:42:38 -0500 Subject: [PATCH 2/2] Just move check if player owns journal to inputmanagerimp.cpp - prevents playing sound when going to main menu. --- apps/openmw/mwgui/journalwindow.cpp | 10 +++------- apps/openmw/mwinput/inputmanagerimp.cpp | 5 +++-- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/apps/openmw/mwgui/journalwindow.cpp b/apps/openmw/mwgui/journalwindow.cpp index e7cb9916f..89ee42934 100644 --- a/apps/openmw/mwgui/journalwindow.cpp +++ b/apps/openmw/mwgui/journalwindow.cpp @@ -184,11 +184,6 @@ namespace { MWBase::Environment::get().getWindowManager()->popGuiMode (); } - else - { - // play opening sound only if the player has the journal - MWBase::Environment::get().getSoundManager()->playSound ("book open", 1.0, 1.0); - } mModel->load (); setBookMode (); @@ -218,7 +213,7 @@ namespace void close() { - MWBase::Environment::get().getSoundManager()->playSound ("book close", 1.0, 1.0); + mModel->unload (); getPage (LeftBookPage)->showPage (Book (), 0); @@ -438,6 +433,7 @@ namespace void notifyClose(MyGUI::Widget* _sender) { + MWBase::Environment::get().getSoundManager()->playSound ("book close", 1.0, 1.0); MWBase::Environment::get().getWindowManager ()->popGuiMode (); } @@ -476,4 +472,4 @@ namespace MWGui::JournalWindow * MWGui::JournalWindow::create (JournalViewModel::Ptr Model) { return new JournalWindowImpl (Model); -} +} \ No newline at end of file diff --git a/apps/openmw/mwinput/inputmanagerimp.cpp b/apps/openmw/mwinput/inputmanagerimp.cpp index e9a0e5089..9f149ac33 100644 --- a/apps/openmw/mwinput/inputmanagerimp.cpp +++ b/apps/openmw/mwinput/inputmanagerimp.cpp @@ -656,13 +656,14 @@ namespace MWInput // Toggle between game mode and journal mode bool gameMode = !mWindows.isGuiMode(); - if(gameMode) + if(gameMode && MWBase::Environment::get().getWindowManager ()->getJournalAllowed()) { + MWBase::Environment::get().getSoundManager()->playSound ("book open", 1.0, 1.0); mWindows.pushGuiMode(MWGui::GM_Journal); } else if(mWindows.getMode() == MWGui::GM_Journal) { - + MWBase::Environment::get().getSoundManager()->playSound ("book close", 1.0, 1.0); mWindows.popGuiMode(); } // .. but don't touch any other mode.