Zmiana sposobu tworzenia gracza.

Użyto singleton pattern.
Zmieniono konstruktor klasy Plansza
This commit is contained in:
2024-12-13 13:36:41 +01:00
parent 3f4a937257
commit 8b4b25747e
7 changed files with 139 additions and 142 deletions

View File

@@ -18,25 +18,30 @@
class Plansza {
public:
Plansza(unsigned int windowHeight, unsigned int windowWidth, sf::RenderWindow *mainWindow,
const sf::Texture& playerTexture, const sf::Texture& playerBulletTexture, const sf::Texture& playerRocketTexture);
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 update_score();
void spawn_enemy();
void setOutOfBounds(bool status);
void spawn_player();
void spawn_enemy();
void spawn_advanced_enemy();
void spawn_wiazkowiec();
void spawn_bomber();
void spawn_kamikadze();
~Plansza() {
delete ship; // usuwanie wskaźnika ship
}
private:
Size size;
Background background;
Player ship;
AudioManager audioManager;
Player *ship;
sf::RenderWindow *window;
sf::Font font;
sf::Texture meteorTexture1;
sf::Texture meteorTexture2;
sf::Texture enemyBulletTexture;
@@ -53,20 +58,19 @@ private:
sf::Clock spawnClock;
sf::Clock scoreClock;
sf::Clock shooterSpawnClock;
std::vector<Enemy> enemies;
std::vector<AdvancedEnemy> AEnemies;
std::vector<Bomber> BEnemies;
std::vector<Kamikadze> KEnemies;
std::vector<Wiazkowiec> WEnemies;
sf::Clock enemySpawnClock;
sf::Clock AenemySpawnClock;
sf::Clock BomberSpawnClock;
sf::Clock KamikadzeSpawnClock;
sf::Clock WiazkowiecSpawnClock;
std::vector<Enemy> enemies;
std::vector<AdvancedEnemy> AEnemies;
std::vector<Bomber> BEnemies;
std::vector<Kamikadze> KEnemies;
std::vector<Wiazkowiec> WEnemies;
std::vector<Meteor> meteors;
sf::RenderWindow *window;
sf::Font font;
unsigned int score = 0;
bool isPlayerSpawned = false;
};
#endif //PLANSZA_H