widelands-dev team mailing list archive
-
widelands-dev team
-
Mailing list archive
-
Message #01947
[Merge] lp:~widelands-dev/widelands/bug-1304638-firstfix into lp:widelands
Teppo Mäenpää has proposed merging lp:~widelands-dev/widelands/bug-1304638-firstfix into lp:widelands.
Requested reviews:
Widelands Developers (widelands-dev)
Related bugs:
Bug #1304638 in widelands: "Wrong sound played"
https://bugs.launchpad.net/widelands/+bug/1304638
For more details, see:
https://code.launchpad.net/~widelands-dev/widelands/bug-1304638-firstfix/+merge/215932
This fixes the bug 1304638. I think.
--
https://code.launchpad.net/~widelands-dev/widelands/bug-1304638-firstfix/+merge/215932
Your team Widelands Developers is requested to review the proposed merge of lp:~widelands-dev/widelands/bug-1304638-firstfix into lp:widelands.
=== renamed file 'sound/message_chat_00.ogg' => 'sound/lobby_chat_00.ogg'
=== renamed file 'sound/message_freshmen_00.ogg' => 'sound/lobby_freshmen_00.ogg'
=== modified file 'src/sound/sound_handler.cc'
--- src/sound/sound_handler.cc 2014-03-27 06:29:50 +0000
+++ src/sound/sound_handler.cc 2014-04-15 18:22:03 +0000
@@ -215,8 +215,8 @@
load_fx_if_needed("sound", "message", "sound/message");
load_fx_if_needed("sound/military", "under_attack", "sound/military/under_attack");
load_fx_if_needed("sound/military", "site_occupied", "sound/military/site_occupied");
- load_fx_if_needed("sound", "message_chat", "sound/message_chat");
- load_fx_if_needed("sound", "message_freshmen", "sound/message_freshmen");
+ load_fx_if_needed("sound", "lobby_chat", "sound/lobby_chat");
+ load_fx_if_needed("sound", "lobby_freshmen", "sound/lobby_freshmen");
}
/** Load a sound effect. One sound effect can consist of several audio files
=== modified file 'src/ui_basic/panel.cc'
--- src/ui_basic/panel.cc 2014-03-09 10:28:39 +0000
+++ src/ui_basic/panel.cc 2014-04-15 18:22:03 +0000
@@ -843,11 +843,11 @@
}
void Panel::play_new_chat_message()
{
- g_sound_handler.play_fx("sound/message_chat", 128, PRIO_ALWAYS_PLAY);
+ g_sound_handler.play_fx("sound/lobby_chat", 128, PRIO_ALWAYS_PLAY);
}
void Panel::play_new_chat_member()
{
- g_sound_handler.play_fx("sound/message_freshmen", 128, PRIO_ALWAYS_PLAY);
+ g_sound_handler.play_fx("sound/lobby_freshmen", 128, PRIO_ALWAYS_PLAY);
}
=== modified file 'src/wui/gamechatpanel.cc'
--- src/wui/gamechatpanel.cc 2014-04-07 01:51:56 +0000
+++ src/wui/gamechatpanel.cc 2014-04-15 18:22:03 +0000
@@ -32,7 +32,7 @@
m_chat (chat),
chatbox (this, 0, 0, w, h - 25, "", UI::Align_Left, 1),
editbox (this, 0, h - 20, w, 20),
- chat_message_counter(0)
+ chat_message_counter(-1) // uint, setting to maximum value
{
chatbox.set_scrollmode(UI::Multiline_Textarea::ScrollLog);
editbox.ok.connect(boost::bind(&GameChatPanel::keyEnter, this));
@@ -65,7 +65,7 @@
chatbox.set_text(str);
// If there are new messages, play a sound
- if (msgs.size() != chat_message_counter)
+ if (0 < msgs.size() && msgs.size() != chat_message_counter)
{
// computer generated ones are ignored
// Note: if many messages arrive simultaneously,
@@ -74,7 +74,7 @@
if (!msgs.back().sender.empty() && !m_chat.sound_off())
{
// The latest message is not a system message
- if (std::string::npos == msgs.back().sender.find("(IRC)"))
+ if (std::string::npos == msgs.back().sender.find("(IRC)") && chat_message_counter < msgs.size())
{
// The latest message was not relayed from IRC.
// The above built-in string constant should match
Follow ups