46 lines
1.3 KiB
C++
46 lines
1.3 KiB
C++
// Copyright (c) 2022 Dominic Masters
|
|
//
|
|
// This software is released under the MIT License.
|
|
// https://opensource.org/licenses/MIT
|
|
|
|
#pragma once
|
|
#include "scenes/PixelVNScene.hpp"
|
|
#include "scenes/Scene_11.hpp"
|
|
|
|
namespace Dawn {
|
|
class Scene_10 : public PixelVNScene {
|
|
protected:
|
|
void vnStage() override {
|
|
PixelVNScene::vnStage();
|
|
}
|
|
|
|
void onSceneEnded() {
|
|
auto scene = new SubSceneRendererScene<Scene_11>(this->game);
|
|
auto assets = game->scene->getRequiredAssets();
|
|
game->assetManager.queueSwap(assets, this->getRequiredAssets());
|
|
game->assetManager.syncLoad();
|
|
scene->stage();
|
|
this->game->sceneCutover(scene);
|
|
}
|
|
|
|
IVisualNovelEvent * getVNEvent() override {
|
|
auto start = new VisualNovelPauseEvent(vnManager, 0.1f);
|
|
|
|
start
|
|
->then(new VisualNovelTextboxEvent(vnManager, nullptr, "scene.10.1"))
|
|
->then(new VisualNovelCallbackEvent<Scene_10>(vnManager, this, &Scene_10::onSceneEnded))
|
|
;
|
|
|
|
return start;
|
|
}
|
|
|
|
public:
|
|
Scene_10(DawnGame *game) : PixelVNScene(game) {
|
|
}
|
|
|
|
std::vector<Asset*> getRequiredAssets() override {
|
|
std::vector<Asset*> assets = PixelVNScene::getRequiredAssets();
|
|
return assets;
|
|
}
|
|
};
|
|
} |