#ifndef PLANSZA_H #define PLANSZA_H #include "Meteor.h" #include "Enemy.h" #include "AdvancedEnemy.h" #include "Bomber.h" #include "RandomNumberGenerator.h" #include "SFML/System/Clock.hpp" #include "SFML/Graphics/RenderWindow.hpp" #include "Size.h" #include #include "Player.h" #include "Background.h" #include "AudioManager.h" #include "Meteor.h" #include "Plansza.h" 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); Size getSize(); std::vector &getMeteors(); void spawn_meteor(); void update_meteors(); void update(); void spawn_enemy(); void setOutOfBounds(bool status); void spawn_advanced_enemy(); void spawn_wiazkowiec(); void spawn_bomber(); private: Size size; Background background; Player ship; AudioManager audioManager; sf::Texture meteorTexture1; sf::Texture meteorTexture2; sf::Texture enemyBulletTexture; sf::Texture BombaTexture; sf::Texture playerTexture; sf::Texture playerBulletTexture; sf::Texture playerRocketTexture; sf::Texture enemyTexture; sf::Texture advancedEnemyTexture; sf::Texture BomberEnemyTexture; sf::Clock spawnClock; sf::Clock shooterSpawnClock; std::vector enemies; std::vector AEnemies; std::vector BEnemies; sf::Clock enemySpawnClock; sf::Clock AenemySpawnClock; sf::Clock BomberSpawnClock; std::vector meteors; sf::RenderWindow *window; }; #endif //PLANSZA_H