Dodano znaczek ladowania ultimate
This commit is contained in:
BIN
assets/img/ultimate/ultimate_0.png
Normal file
BIN
assets/img/ultimate/ultimate_0.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.4 KiB |
BIN
assets/img/ultimate/ultimate_100.png
Normal file
BIN
assets/img/ultimate/ultimate_100.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 24 KiB |
BIN
assets/img/ultimate/ultimate_20.png
Normal file
BIN
assets/img/ultimate/ultimate_20.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.0 KiB |
BIN
assets/img/ultimate/ultimate_40.png
Normal file
BIN
assets/img/ultimate/ultimate_40.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.5 KiB |
BIN
assets/img/ultimate/ultimate_60.png
Normal file
BIN
assets/img/ultimate/ultimate_60.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.2 KiB |
BIN
assets/img/ultimate/ultimate_80.png
Normal file
BIN
assets/img/ultimate/ultimate_80.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.6 KiB |
@@ -120,6 +120,7 @@ private:
|
||||
sf::Texture movingSpeedDebuffTexture;
|
||||
sf::Texture firerateDebuffTexture;
|
||||
sf::Texture bulletSpeedDebuffTexture;
|
||||
sf::Texture ultimateIndicatorTextures[6];
|
||||
|
||||
// Tablice
|
||||
std::vector<Enemy> enemies;
|
||||
@@ -132,6 +133,9 @@ private:
|
||||
std::vector<sf::Sprite> heartStats;
|
||||
std::vector<PowerUp> powerUps;
|
||||
std::vector<Debuff> debuffs;
|
||||
std::vector<sf::Sprite> ultimateIndicators;
|
||||
|
||||
void loadUltimateIndicators();
|
||||
|
||||
// Zmienne prymitywne
|
||||
Boss* boss = nullptr; // Wskaźnik na bossa
|
||||
|
||||
@@ -47,6 +47,8 @@ Plansza::Plansza(unsigned int windowHeight, unsigned int windowWidth, sf::Render
|
||||
exit(-500);
|
||||
}
|
||||
|
||||
loadUltimateIndicators();
|
||||
|
||||
score = 0;
|
||||
|
||||
// Wczytywanie czcionki dla licznika punktów
|
||||
@@ -77,6 +79,29 @@ Plansza::Plansza(unsigned int windowHeight, unsigned int windowWidth, sf::Render
|
||||
// spawnClock.restart();
|
||||
}
|
||||
|
||||
void Plansza::loadUltimateIndicators() {
|
||||
const std::string texturePaths[6] = {
|
||||
"../assets/img/ultimate/ultimate_0.png",
|
||||
"../assets/img/ultimate/ultimate_20.png",
|
||||
"../assets/img/ultimate/ultimate_40.png",
|
||||
"../assets/img/ultimate/ultimate_60.png",
|
||||
"../assets/img/ultimate/ultimate_80.png",
|
||||
"../assets/img/ultimate/ultimate_100.png"
|
||||
};
|
||||
|
||||
for (int i = 0; i < 6; ++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
|
||||
ultimateIndicators.push_back(sprite);
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: Refactor tej metody bo rozrosła się za bardzo już
|
||||
void Plansza::update() {
|
||||
srand(time(0)); // generacja innego ziarna na podstawie zegara systemowego
|
||||
@@ -111,6 +136,10 @@ void Plansza::update() {
|
||||
ship->ultimate_shoot();
|
||||
}
|
||||
|
||||
int indicatorIndex = ultimateCounter / 40;
|
||||
indicatorIndex = std::min(indicatorIndex, 5); // Zapobiegaj przekroczeniu zakresu
|
||||
window->draw(ultimateIndicators[indicatorIndex]);
|
||||
|
||||
// TODO: Przenieść obiekt dźwięku wewnątrz klasy Bullet
|
||||
if (sf::Mouse::isButtonPressed(sf::Mouse::Left)) {
|
||||
ship->shoot();
|
||||
|
||||
Reference in New Issue
Block a user