30 lines
889 B
C++
30 lines
889 B
C++
//
|
|
// Created by sebastian on 30.07.26.
|
|
//
|
|
|
|
#ifndef COLORRACE_GAMESCENE_H
|
|
#define COLORRACE_GAMESCENE_H
|
|
#include "layer/Scene.h"
|
|
#include "ludo/LudoGameMode.h"
|
|
|
|
#include "renderer/entities/PointLight.h"
|
|
|
|
|
|
class GameScene : public engine::Scene {
|
|
public:
|
|
GameScene(engine::InputContextStack& inputContext, engine::Keyboard& keyboard, engine::Mouse& mouse);
|
|
void onEnter() override;
|
|
void onExit() override;
|
|
std::vector<engine::AssetRequest> getRequiredAssets() const override;
|
|
engine::EventBus<ludo::LudoEvent>& getEventBus() { return m_eventBus; } //Todo: Maybe introduce virtual base Event class to move this into engine
|
|
private:
|
|
std::shared_ptr<engine::Camera> m_camera;
|
|
std::shared_ptr<engine::PointLight> m_pointLight;
|
|
std::shared_ptr<ludo::LudoGameMode> m_gameMode;
|
|
|
|
engine::EventBus<ludo::LudoEvent> m_eventBus;
|
|
};
|
|
|
|
|
|
#endif //COLORRACE_GAMESCENE_H
|