2dkg/2dgk_6/2dgk_6/KGame.h

41 lines
707 B
C++

#pragma once
#include "KTexture.h"
#include <vector>
#include <SDL_render.h>
#include "KCircle.h"
#include "KInput.h"
namespace KapitanGame {
class KGame
{
public:
KGame();
~KGame();
KGame(const KGame& other) = delete;
KGame(KGame&& other) noexcept = delete;
KGame& operator=(const KGame& other) = delete;
KGame& operator=(KGame&& other) noexcept = delete;
int Run(int argc, char* args[]);
private:
SDL_Window* Window = nullptr;
SDL_Renderer* Renderer = nullptr;
KTexture CircleTexture;
std::vector<KCircle> Circles;
KInput Input;
bool HasSeparation;
bool HasCollision;
private:
bool LoadMedia();
SDL_Texture* LoadTexture(const std::string& path) const;
};
}