Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--assets/opensb/interface/opensb/voicechat/voicechat.lua1
-rw-r--r--assets/opensb/interface/optionsmenu/optionsmenu.config.patch3
-rw-r--r--assets/opensb/interface/optionsmenu/shine.pngbin0 -> 4562 bytes
-rw-r--r--assets/opensb/sfx/interface/voice_off.oggbin0 -> 12926 bytes
-rw-r--r--assets/opensb/sfx/interface/voice_on.oggbin0 -> 13933 bytes
-rw-r--r--source/frontend/StarVoice.cpp15
6 files changed, 9 insertions, 10 deletions
diff --git a/assets/opensb/interface/opensb/voicechat/voicechat.lua b/assets/opensb/interface/opensb/voicechat/voicechat.lua
index 4e9f7e7..974b5b1 100644
--- a/assets/opensb/interface/opensb/voicechat/voicechat.lua
+++ b/assets/opensb/interface/opensb/voicechat/voicechat.lua
@@ -223,5 +223,6 @@ end
function voiceToggle()
set("enabled", not settings.enabled)
+ widget.playSound(fmt("/sfx/interface/voice_%s.ogg", settings.enabled and "on" or "off"), 0)
updateVoiceButton()
end \ No newline at end of file
diff --git a/assets/opensb/interface/optionsmenu/optionsmenu.config.patch b/assets/opensb/interface/optionsmenu/optionsmenu.config.patch
index 68b27f9..8866793 100644
--- a/assets/opensb/interface/optionsmenu/optionsmenu.config.patch
+++ b/assets/opensb/interface/optionsmenu/optionsmenu.config.patch
@@ -42,6 +42,7 @@
"base" : "/interface/optionsmenu/tricontrolsbutton.png",
"hover" : "/interface/optionsmenu/tricontrolsbuttonhover.png"
},
- "sfxValueLabel" : { "position" : [192, 142] } // this is 2px too low in vanilla lol
+ "sfxValueLabel" : { "position" : [192, 142] }, // this is 2px too low in vanilla lol
+ "musicSlider" : { "position" : [62, 126] }
}
} \ No newline at end of file
diff --git a/assets/opensb/interface/optionsmenu/shine.png b/assets/opensb/interface/optionsmenu/shine.png
new file mode 100644
index 0000000..0117c5f
--- /dev/null
+++ b/assets/opensb/interface/optionsmenu/shine.png
Binary files differ
diff --git a/assets/opensb/sfx/interface/voice_off.ogg b/assets/opensb/sfx/interface/voice_off.ogg
new file mode 100644
index 0000000..7a9d2fb
--- /dev/null
+++ b/assets/opensb/sfx/interface/voice_off.ogg
Binary files differ
diff --git a/assets/opensb/sfx/interface/voice_on.ogg b/assets/opensb/sfx/interface/voice_on.ogg
new file mode 100644
index 0000000..c00633c
--- /dev/null
+++ b/assets/opensb/sfx/interface/voice_on.ogg
Binary files differ
diff --git a/source/frontend/StarVoice.cpp b/source/frontend/StarVoice.cpp
index fdc10ea..82205bd 100644
--- a/source/frontend/StarVoice.cpp
+++ b/source/frontend/StarVoice.cpp
@@ -362,13 +362,14 @@ void Voice::mix(int16_t* buffer, size_t frameCount, unsigned channels) {
VoiceAudioStream* audio = speaker->audioStream.get();
MutexLocker audioLock(audio->mutex);
if (speaker->playing && !audio->samples.empty()) {
+ for (size_t i = 0; i != samples; ++i)
+ speakerBuffer[i] = audio->take();
+
+ if (speaker != m_clientSpeaker)
+ speaker->decibelLevel = getAudioLoudness(speakerBuffer.data(), samples);
+
if (!speaker->muted) {
mix = true;
- for (size_t i = 0; i != samples; ++i)
- speakerBuffer[i] = audio->take();
-
- if (speaker != m_clientSpeaker)
- speaker->decibelLevel = getAudioLoudness(speakerBuffer.data(), samples);
float volume = speaker->volume;
Array2F levels = speaker->channelVolumes;
@@ -396,10 +397,6 @@ void Voice::mix(int16_t* buffer, size_t frameCount, unsigned channels) {
}
//*/
}
- else {
- for (size_t i = 0; i != samples; ++i)
- audio->take();
- }
++it;
}
else {