diff --git a/assets/img/ultimate/ultimate_10.png b/assets/img/ultimate/ultimate_10.png new file mode 100644 index 0000000..04ab312 Binary files /dev/null and b/assets/img/ultimate/ultimate_10.png differ diff --git a/assets/img/ultimate/ultimate_30.png b/assets/img/ultimate/ultimate_30.png new file mode 100644 index 0000000..ff69c1c Binary files /dev/null and b/assets/img/ultimate/ultimate_30.png differ diff --git a/assets/img/ultimate/ultimate_50.png b/assets/img/ultimate/ultimate_50.png new file mode 100644 index 0000000..d19935d Binary files /dev/null and b/assets/img/ultimate/ultimate_50.png differ diff --git a/assets/img/ultimate/ultimate_70.png b/assets/img/ultimate/ultimate_70.png new file mode 100644 index 0000000..9b8ed9f Binary files /dev/null and b/assets/img/ultimate/ultimate_70.png differ diff --git a/assets/img/ultimate/ultimate_90.png b/assets/img/ultimate/ultimate_90.png new file mode 100644 index 0000000..c76ca18 Binary files /dev/null and b/assets/img/ultimate/ultimate_90.png differ diff --git a/headers/Plansza.h b/headers/Plansza.h index 3210ba0..3f3d692 100644 --- a/headers/Plansza.h +++ b/headers/Plansza.h @@ -120,7 +120,7 @@ private: sf::Texture movingSpeedDebuffTexture; sf::Texture firerateDebuffTexture; sf::Texture bulletSpeedDebuffTexture; - sf::Texture ultimateIndicatorTextures[6]; + sf::Texture ultimateIndicatorTextures[11]; // Tablice std::vector enemies; diff --git a/sources/Plansza.cpp b/sources/Plansza.cpp index e6fff6f..d6688be 100644 --- a/sources/Plansza.cpp +++ b/sources/Plansza.cpp @@ -80,26 +80,32 @@ Plansza::Plansza(unsigned int windowHeight, unsigned int windowWidth, sf::Render } void Plansza::loadUltimateIndicators() { - const std::string texturePaths[6] = { + const std::string texturePaths[11] = { "../assets/img/ultimate/ultimate_0.png", + "../assets/img/ultimate/ultimate_10.png", "../assets/img/ultimate/ultimate_20.png", + "../assets/img/ultimate/ultimate_30.png", "../assets/img/ultimate/ultimate_40.png", + "../assets/img/ultimate/ultimate_50.png", "../assets/img/ultimate/ultimate_60.png", + "../assets/img/ultimate/ultimate_70.png", "../assets/img/ultimate/ultimate_80.png", + "../assets/img/ultimate/ultimate_90.png", "../assets/img/ultimate/ultimate_100.png" }; - for (int i = 0; i < 6; ++i) { + for (int i = 0; i < 11; ++i) { if (!ultimateIndicatorTextures[i].loadFromFile(texturePaths[i])) { std::cerr << "Failed to load ultimate indicator texture: " << texturePaths[i] << std::endl; exit(-1); } sf::Sprite sprite; sprite.setTexture(ultimateIndicatorTextures[i]); - sprite.setPosition(10, window->getSize().y - 60); // Lewy dolny róg - sprite.setScale(0.7f, 0.7f); // Skalowanie + sprite.setPosition(10, window->getSize().y - 60); + sprite.setScale(0.5f, 0.5f); ultimateIndicators.push_back(sprite); } + } // TODO: Refactor tej metody bo rozrosła się za bardzo już @@ -136,8 +142,8 @@ void Plansza::update() { ship->ultimate_shoot(); } - int indicatorIndex = ultimateCounter / 40; - indicatorIndex = std::min(indicatorIndex, 5); // Zapobiegaj przekroczeniu zakresu + int indicatorIndex = ultimateCounter / 20; + indicatorIndex = std::min(indicatorIndex, 10); // Zapobiegaj przekroczeniu zakresu window->draw(ultimateIndicators[indicatorIndex]); // TODO: Przenieść obiekt dźwięku wewnątrz klasy Bullet