#include <vector>
#include <time.h>

#ifndef CPP_LEARNING_GAME_H
#define CPP_LEARNING_GAME_H

#include <SDL2/SDL.h>
#include <SDL2/SDL_image.h>

class Player {
public:
    int x = 40;
    int y = 40;
    int health = 3;

    void moveX(int dx);
    void moveY(int dy);
};

class Opponent: public Player {

public:
    int targetX = 0;
    int targetY = 0;
    void move(int multiplier);
};

class Game {
    Player player;
    std::vector<Opponent> opponents;
    int timeMultiplier = 1;

    void renderPlayer(SDL_Renderer *renderer, SDL_Texture *player, Player p);
    void renderOpponent(SDL_Renderer *renderer, SDL_Texture *opponent, Player p);
public:
    void createOpponent();
    void checkCollision();
    void renderHUD(SDL_Renderer *renderer, SDL_Texture *heart);
    void render(SDL_Renderer *renderer, SDL_Texture *bg);
    void run();
};


#endif