Perfected Audio
This commit is contained in:
@ -36,6 +36,8 @@ tool_tileset(tileset_death texture_death ${DIR_GAME_ASSETS}/characters/death/she
|
||||
|
||||
tool_truetype(truetype_alice ${DIR_GAME_ASSETS}/font/Alice-Regular.ttf truetype_alice 2048 2048 120)
|
||||
|
||||
tool_audio(audio_test borrowed/sample.wav)
|
||||
|
||||
add_dependencies(${DAWN_TARGET_NAME}
|
||||
language_en
|
||||
language_jp
|
||||
@ -45,4 +47,6 @@ add_dependencies(${DAWN_TARGET_NAME}
|
||||
truetype_alice
|
||||
|
||||
texture_test
|
||||
|
||||
audio_test
|
||||
)
|
@ -7,7 +7,6 @@
|
||||
#include "scenes/PixelVNScene.hpp"
|
||||
#include "scenes/Scene_2.hpp"
|
||||
#include "prefabs/characters/DeathPrefab.hpp"
|
||||
|
||||
#include "scene/components/audio/AudioListener.hpp"
|
||||
#include "scene/components/audio/AudioSource.hpp"
|
||||
|
||||
@ -15,6 +14,12 @@ namespace Dawn {
|
||||
class Scene_1 : public PixelVNScene {
|
||||
protected:
|
||||
DeathPrefab *death;
|
||||
AudioSource *source;
|
||||
|
||||
void onFinished() {
|
||||
std::cout << "Finished" << std::endl;
|
||||
source->rewind();
|
||||
}
|
||||
|
||||
void vnStage() override {
|
||||
PixelVNScene::vnStage();
|
||||
@ -23,15 +28,15 @@ namespace Dawn {
|
||||
// this->death->vnCharacter.setOpacity(0);
|
||||
|
||||
auto sourceItem = this->createSceneItem();
|
||||
auto source = sourceItem->addComponent<AudioSource>();
|
||||
source = sourceItem->addComponent<AudioSource>();
|
||||
source->transform->setLocalPosition(glm::vec3(1, 0, 0));
|
||||
source->eventFinished.addListener(this, &Scene_1::onFinished);
|
||||
|
||||
auto audio = this->game->assetManager.get<AudioAsset>("audio_test");
|
||||
|
||||
auto data = new AudioData();
|
||||
data->init();
|
||||
|
||||
source->setAudioData(data);
|
||||
source->play();
|
||||
source->setLoop(true);
|
||||
source->setAudioData(audio);
|
||||
source->loop = true;
|
||||
source->state = AUDIO_SOURCE_STATE_PLAYING;
|
||||
}
|
||||
|
||||
void onSceneEnded() {
|
||||
@ -48,8 +53,8 @@ namespace Dawn {
|
||||
auto start = new VisualNovelPauseEvent(vnManager, 1.0f);
|
||||
|
||||
start
|
||||
->then(new VisualNovelTextboxEvent(vnManager, nullptr, "scene.1.1"))
|
||||
->then(new VisualNovelCallbackEvent<Scene_1>(vnManager, this, &Scene_1::onSceneEnded))
|
||||
// ->then(new VisualNovelTextboxEvent(vnManager, nullptr, "scene.1.1"))
|
||||
// ->then(new VisualNovelCallbackEvent<Scene_1>(vnManager, this, &Scene_1::onSceneEnded))
|
||||
;
|
||||
|
||||
return start;
|
||||
@ -64,6 +69,7 @@ namespace Dawn {
|
||||
auto man = &this->game->assetManager;
|
||||
std::vector<Asset*> assets = PixelVNScene::getRequiredAssets();
|
||||
vectorAppend(&assets, DeathPrefab::getRequiredAssets(man));
|
||||
assets.push_back(man->get<AudioAsset>("audio_test"));
|
||||
return assets;
|
||||
}
|
||||
};
|
||||
|
Reference in New Issue
Block a user