Jakieś działające gówno

Ale nie strzela chujek
This commit is contained in:
2024-12-09 16:48:31 +01:00
parent e2e44ff1ba
commit c655409596
5 changed files with 116 additions and 2 deletions

25
headers/Enemy.h Normal file
View File

@@ -0,0 +1,25 @@
#ifndef ENEMY_H
#define ENEMY_H
#include "Actor.h"
#include "SFML/System/Clock.hpp"
class Enemy : public Actor {
public:
Enemy(int x, int y, std::string path);
void shoot() override;
void move(float deltaX, float deltaY) override;
void moveLeft() override;
void moveRight() override;
void moveUp() override;
void moveDown() override;
bool isAlive() const;
void takeDamage();
private:
sf::Clock shootClock;
bool alive = true;
};
#endif // ENEMY_H

View File

@@ -2,6 +2,7 @@
#define PLANSZA_H
#include "Meteor.h"
#include "Enemy.h"
#include "RandomNumberGenerator.h"
#include "SFML/System/Clock.hpp"
#include "SFML/Graphics/RenderWindow.hpp"
@@ -18,9 +19,12 @@ public:
Plansza(unsigned int windowHeight,unsigned int windowWidth, sf::RenderWindow *mainWindow);
Size getSize();
std::vector<Meteor> &getMeteors();
void spawn_meteor();
void update_meteors();
void update();
void spawn_enemy();
private:
Size size;
Background background;
@@ -29,6 +33,9 @@ private:
sf::Texture meteorTexture1;
sf::Texture meteorTexture2;
sf::Clock spawnClock;
sf::Clock shooterSpawnClock;
std::vector<Enemy> enemies;
sf::Clock enemySpawnClock;
std::vector<Meteor> meteors;
sf::RenderWindow *window;
};