// 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_10.hpp" namespace Dawn { class Scene_9 : public PixelVNScene { protected: void vnStage() override { PixelVNScene::vnStage(); } void onSceneEnded() { auto scene = new SubSceneRendererScene(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.9.1")) ->then(new VisualNovelCallbackEvent(vnManager, this, &Scene_9::onSceneEnded)) ; return start; } public: Scene_9(DawnGame *game) : PixelVNScene(game) { } std::vector getRequiredAssets() override { std::vector assets = PixelVNScene::getRequiredAssets(); return assets; } }; }