Use GameScene to control render

This commit is contained in:
2025-12-06 18:39:40 +08:00
parent 995c01bd8c
commit 32eb465f39
9 changed files with 148 additions and 44 deletions

View File

@@ -1,11 +1,31 @@
#include "SceneManager.h"
SceneManager::SceneManager() {
SceneManager::SceneManager(SDL_Renderer* renderer) {
m_scene = std::make_unique<GameScene>();
m_scene->onEnter(renderer, 1600, 900);
}
SceneManager::~SceneManager() {
while (!m_scenes.empty()) {
m_scenes.pop();
}
}
void SceneManager::PushScene(const std::string& sceneName, std::unique_ptr<Scene> scene) {
}
void SceneManager::handleClickCurrent(std::pair<float, float> clickon) {
auto [screenX, screenY] = clickon;
m_scene->handleClick(screenX, screenY);
}
void SceneManager::updateCurrent() {
m_scene->update();
}
void SceneManager::renderCurrent() {
m_scene->render();
}