Files
dae16-VerhulstBram-GameProject/Game/Game.h
Bram Verhulst 39c744ba79 Add Imgui, Add TextureManager
From 1.1k texture loads to 5
2024-03-18 12:22:56 +01:00

46 lines
1.1 KiB
C++

#pragma once
#include <vector>
#include "BaseGame.h"
#include "Camera.h"
#include "WorldLevel.h"
#include "WorldTile.h"
class Game : public BaseGame
{
public:
explicit Game(const Window& window);
Game(const Game& other) = delete;
Game& operator=(const Game& other) = delete;
Game(Game&& other) = delete;
Game& operator=(Game&& other) = delete;
// http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rh-override
~Game();
void Update(float elapsedSec) override;
void Draw() const override;
// Event handling
void ProcessKeyDownEvent(const SDL_KeyboardEvent& e) override;
void ProcessKeyUpEvent(const SDL_KeyboardEvent& e) override;
void ProcessMouseMotionEvent(const SDL_MouseMotionEvent& e) override;
void ProcessMouseDownEvent(const SDL_MouseButtonEvent& e) override;
void ProcessMouseUpEvent(const SDL_MouseButtonEvent& e) override;
void ProcessImGui() override;
private:
// FUNCTIONS
void Initialize();
void Cleanup();
Camera m_Camera;
WorldLevel m_WorldLevel;
Point2f m_MousePos{};
Point2f m_MouseOffset{};
bool m_IsRightMouseDown{};
};