Archived
Drobne poprawki
This commit is contained in:
+2
-2
@@ -28,11 +28,11 @@ private:
|
|||||||
std::chrono::steady_clock::time_point lastShotTime = std::chrono::steady_clock::now();
|
std::chrono::steady_clock::time_point lastShotTime = std::chrono::steady_clock::now();
|
||||||
std::vector<Rocket> rockets;
|
std::vector<Rocket> rockets;
|
||||||
sf::Texture rocketTexture;
|
sf::Texture rocketTexture;
|
||||||
int health = 3; // Liczba punktów życia gracza
|
|
||||||
sf::Texture bulletTexture;
|
sf::Texture bulletTexture;
|
||||||
bool isImmortal = false; // flaga na immortal
|
|
||||||
sf::Clock immortalityClock; // Zegar kontrolujący czas nieśmiertelności
|
sf::Clock immortalityClock; // Zegar kontrolujący czas nieśmiertelności
|
||||||
|
int health = 3; // Liczba punktów życia gracza
|
||||||
float immortalityDuration = 1.5f; // Czas trwania nieśmiertelności w sec
|
float immortalityDuration = 1.5f; // Czas trwania nieśmiertelności w sec
|
||||||
|
bool isImmortal = false; // flaga na immortal
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+31
-35
@@ -33,40 +33,21 @@ Plansza::Plansza(unsigned int windowHeight, unsigned int windowWidth, sf::Render
|
|||||||
audioManager.loadSoundEffect("shoot_alt", "../assets/sounds/shoot_alt.ogg");
|
audioManager.loadSoundEffect("shoot_alt", "../assets/sounds/shoot_alt.ogg");
|
||||||
audioManager.loadSoundEffect("fail", "../assets/sounds/fail.mp3");
|
audioManager.loadSoundEffect("fail", "../assets/sounds/fail.mp3");
|
||||||
|
|
||||||
if (!meteorTexture1.loadFromFile("../assets/img/meteors/meteor-1.png")) {
|
try {
|
||||||
std::cerr << "Failed to load enemy texture!" << std::endl;
|
meteorTexture1.loadFromFile("../assets/img/meteors/meteor-1.png");
|
||||||
exit(-500);
|
meteorTexture2.loadFromFile("../assets/img/meteors/meteor-2.png");
|
||||||
}
|
// Ładowanie tekstur wrogów
|
||||||
if (!meteorTexture2.loadFromFile("../assets/img/meteors/meteor-2.png")) {
|
enemyTexture.loadFromFile("../assets/img/enemy/enemy.png");
|
||||||
std::cerr << "Failed to load enemy texture!" << std::endl;
|
advancedEnemyTexture.loadFromFile("../assets/img/enemy/advanced_enemy.png");
|
||||||
|
BomberEnemyTexture.loadFromFile("../assets/img/enemy/bomber.png");
|
||||||
|
KamikadzeTexture.loadFromFile("../assets/img/enemy/kamikadze.png");
|
||||||
|
BombaTexture.loadFromFile("../assets/img/bullets/bomba.png");
|
||||||
|
WiazkowiecTexture.loadFromFile("../assets/img/enemy/wiazkowiec.png");
|
||||||
|
} catch (std::exception &e) {
|
||||||
|
std::cerr << "Failed to load textures: " << e.what() << std::endl;
|
||||||
exit(-500);
|
exit(-500);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Ładowanie tekstur wrogów
|
|
||||||
if (!enemyTexture.loadFromFile("../assets/img/enemy/enemy.png")) {
|
|
||||||
std::cerr << "Failed to load enemy texture!" << std::endl;
|
|
||||||
exit(-500);
|
|
||||||
}
|
|
||||||
if (!advancedEnemyTexture.loadFromFile("../assets/img/enemy/advanced_enemy.png")) {
|
|
||||||
std::cerr << "Failed to load advanced enemy texture!" << std::endl;
|
|
||||||
exit(-500);
|
|
||||||
}
|
|
||||||
if (!BomberEnemyTexture.loadFromFile("../assets/img/enemy/bomber.png")) {
|
|
||||||
std::cerr << "Failed to load advanced enemy texture!" << std::endl;
|
|
||||||
exit(-500);
|
|
||||||
}
|
|
||||||
if (!KamikadzeTexture.loadFromFile("../assets/img/enemy/kamikadze.png")) {
|
|
||||||
std::cerr << "Failed to load advanced enemy texture!" << std::endl;
|
|
||||||
exit(-500);
|
|
||||||
}
|
|
||||||
if (!BombaTexture.loadFromFile("../assets/img/bullets/bomba.png")) {
|
|
||||||
std::cerr << "Failed to load BombaTexture!" << std::endl;
|
|
||||||
exit(-500);
|
|
||||||
}
|
|
||||||
if (!WiazkowiecTexture.loadFromFile("../assets/img/enemy/wiazkowiec.png")) {
|
|
||||||
std::cerr << "Failed to load Wiazkowiec texture!" << std::endl;
|
|
||||||
exit(-500);
|
|
||||||
}
|
|
||||||
spawnClock.restart();
|
spawnClock.restart();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -178,9 +159,26 @@ void Plansza::update() {
|
|||||||
|
|
||||||
for (auto meteorIt = getMeteors().begin(); meteorIt != getMeteors().end();) {
|
for (auto meteorIt = getMeteors().begin(); meteorIt != getMeteors().end();) {
|
||||||
bool meteorHit = false;
|
bool meteorHit = false;
|
||||||
for (auto rocketIt = ship.getBullets().begin(); rocketIt != ship.getBullets().end(); ) {
|
for (auto bulletIt = ship.getBullets().begin(); bulletIt != ship.getBullets().end();) {
|
||||||
|
if (meteorIt->getSprite().getGlobalBounds().intersects(bulletIt->getSprite().getGlobalBounds())) {
|
||||||
|
ship.getBullets().erase(bulletIt);
|
||||||
|
meteorIt = getMeteors().erase(meteorIt);
|
||||||
|
meteorHit = true;
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
++bulletIt;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!meteorHit) {
|
||||||
|
++meteorIt;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (auto meteorIt = getMeteors().begin(); meteorIt != getMeteors().end();) {
|
||||||
|
bool meteorHit = false;
|
||||||
|
for (auto rocketIt = ship.getRockets().begin(); rocketIt != ship.getRockets().end();) {
|
||||||
if (meteorIt->getSprite().getGlobalBounds().intersects(rocketIt->getSprite().getGlobalBounds())) {
|
if (meteorIt->getSprite().getGlobalBounds().intersects(rocketIt->getSprite().getGlobalBounds())) {
|
||||||
ship.getBullets().erase(rocketIt);
|
ship.getRockets().erase(rocketIt);
|
||||||
meteorIt = getMeteors().erase(meteorIt);
|
meteorIt = getMeteors().erase(meteorIt);
|
||||||
meteorHit = true;
|
meteorHit = true;
|
||||||
break;
|
break;
|
||||||
@@ -674,8 +672,6 @@ void Plansza::spawn_wiazkowiec() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Size Plansza::getSize() {
|
Size Plansza::getSize() {
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user