minor audio fixes
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
------------ Tyra's v2.0 roadmap to publish on GitHub ------------
|
||||
|
||||
- [Demo] Game fadein
|
||||
- [Demo] Ambient sound
|
||||
- [Demo] Running soldier
|
||||
- [Demo] Heightmap for soldier
|
||||
- [Demo] Running animation for soldier
|
||||
|
||||
@@ -10,6 +10,9 @@
|
||||
|
||||
#include "states/game/game_state.hpp"
|
||||
#include "debug/debug.hpp"
|
||||
#include "file/file_utils.hpp"
|
||||
|
||||
using Tyra::FileUtils;
|
||||
|
||||
namespace Demo {
|
||||
|
||||
@@ -27,6 +30,10 @@ void GameState::onStart() {
|
||||
TYRA_LOG("Game. RAM: ", engine->info.getAvailableRAM(), "MB");
|
||||
|
||||
engine->audio.song.stop();
|
||||
engine->audio.song.load(FileUtils::fromCwd("game/ambiance.wav"));
|
||||
engine->audio.song.inLoop = true;
|
||||
engine->audio.song.setVolume(100);
|
||||
engine->audio.song.play();
|
||||
|
||||
auto* repository = &engine->renderer.core.texture.repository;
|
||||
player = new Player(engine);
|
||||
|
||||
@@ -57,7 +57,7 @@ Weapon::Weapon(Engine* engine) {
|
||||
adpcmChannelsCount = 8;
|
||||
adpcmCurrentChannel = 0;
|
||||
|
||||
const u8 shootVolume = 40;
|
||||
const u8 shootVolume = 25;
|
||||
for (u8 i = 0; i < adpcmChannelsCount; i++) {
|
||||
audio->adpcm.setVolume(shootVolume, i);
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ class AudioSong {
|
||||
bool inLoop;
|
||||
|
||||
/**
|
||||
* Load 24bit 22kHz Stereo WAV.
|
||||
* Load 16bit 22kHz Stereo WAV.
|
||||
* Can be used multiple times for song switching.
|
||||
* @param t_path Example: "host:song.wav" or "host:folder/song.wav"
|
||||
*/
|
||||
|
||||
@@ -51,7 +51,6 @@ void AudioSong::load(const char* t_path) {
|
||||
TYRA_ASSERT(wav != NULL, "Failed to open wav file!");
|
||||
rewindSongToStart();
|
||||
songLoaded = true;
|
||||
TYRA_LOG("Song loaded!");
|
||||
}
|
||||
|
||||
void AudioSong::load(const std::string& t_path) { load(t_path.c_str()); }
|
||||
@@ -138,14 +137,11 @@ void AudioSong::setVolume(const u8& t_vol) {
|
||||
void AudioSong::work() {
|
||||
if (!songPlaying || !songLoaded) return;
|
||||
if (songFinished) {
|
||||
TYRA_LOG("AudioSong: Song finished. ");
|
||||
if (inLoop) {
|
||||
TYRA_LOG("Running again.");
|
||||
for (u32 i = 0; i < getListenersCount(); i++)
|
||||
songListeners[i]->listener->onAudioFinish();
|
||||
rewindSongToStart();
|
||||
} else {
|
||||
TYRA_LOG("Stopping song.");
|
||||
stop();
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user