fent improvements a balloon (canvi de pc)

This commit is contained in:
2025-07-24 12:58:16 +02:00
parent 55d5957ff0
commit 0f8a4b988f
11 changed files with 70 additions and 66 deletions

View File

@@ -11,7 +11,7 @@
#include "asset.h" // Para Asset
#include "audio.h" // Para Audio
#include "background.h" // Para Background
#include "balloon.h" // Para Balloon, BALLOON_SPEED
#include "balloon.h" // Para Balloon, Balloon::SPEED
#include "balloon_manager.h" // Para BalloonManager
#include "bullet.h" // Para Bullet, BulletType, BulletMoveStatus
#include "color.h" // Para Color, FLASH_COLOR
@@ -1539,21 +1539,21 @@ void Game::initDifficultyVars() {
// Variables relacionadas con la dificultad
switch (difficulty_) {
case Difficulty::Code::EASY: {
balloon_manager_->setDefaultBalloonSpeed(BALLOON_SPEED[0]);
balloon_manager_->setDefaultBalloonSpeed(Balloon::SPEED.at(0));
difficulty_score_multiplier_ = 0.5F;
scoreboard_->setColor(param.scoreboard.easy_color);
break;
}
case Difficulty::Code::NORMAL: {
balloon_manager_->setDefaultBalloonSpeed(BALLOON_SPEED[0]);
balloon_manager_->setDefaultBalloonSpeed(Balloon::SPEED.at(0));
difficulty_score_multiplier_ = 1.0F;
scoreboard_->setColor(param.scoreboard.normal_color);
break;
}
case Difficulty::Code::HARD: {
balloon_manager_->setDefaultBalloonSpeed(BALLOON_SPEED[4]);
balloon_manager_->setDefaultBalloonSpeed(Balloon::SPEED.at(4));
difficulty_score_multiplier_ = 1.5F;
scoreboard_->setColor(param.scoreboard.hard_color);
break;
@@ -1768,9 +1768,11 @@ void Game::checkAndUpdateBalloonSpeed() {
constexpr std::array<float, 4> THRESHOLDS = {0.2F, 0.4F, 0.6F, 0.8F};
for (size_t i = 0; i < std::size(THRESHOLDS); ++i) {
if (balloon_manager_->getBalloonSpeed() == BALLOON_SPEED[i] && PERCENT > THRESHOLDS[i]) {
balloon_manager_->setBalloonSpeed(BALLOON_SPEED[i + 1]);
break; // Salir del bucle una vez actualizada la velocidad y aplicada
// Si la velocidad actual del globo es la correspondiente al umbral "i" y el porcentaje de progreso ha superado ese umbral
if (balloon_manager_->getBalloonSpeed() == Balloon::SPEED.at(i) && PERCENT > THRESHOLDS.at(i)) {
// Sube la velocidad al siguiente nivel (i + 1)
balloon_manager_->setBalloonSpeed(Balloon::SPEED.at(i + 1));
return;
}
}
}