Acabat BalloonManager

This commit is contained in:
2024-11-08 18:29:08 +01:00
parent 2fb7e88e4b
commit f9520185a2
6 changed files with 75 additions and 63 deletions

View File

@@ -200,18 +200,20 @@ void BalloonManager::setBalloonSpeed(float speed)
}
// Explosiona un globo. Lo destruye y crea otros dos si es el caso
void BalloonManager::popBalloon(std::shared_ptr<Balloon> balloon)
int BalloonManager::popBalloon(std::shared_ptr<Balloon> balloon)
{
++Stage::power;
Stage::addPower(1);
int score = 0;
if (balloon->getType() == BalloonType::POWERBALL)
{
destroyAllBalloons();
score = destroyAllBalloons();
power_ball_enabled_ = false;
balloon_deploy_counter_ = 20;
}
else
{
score = balloon->getScore();
if (balloon->getSize() != BalloonSize::SIZE1)
{
createChildBalloon(balloon, "LEFT");
@@ -222,6 +224,8 @@ void BalloonManager::popBalloon(std::shared_ptr<Balloon> balloon)
explosions_->add(balloon->getPosX(), balloon->getPosY(), static_cast<int>(balloon->getSize()));
balloon->pop();
}
return score;
}
// Explosiona un globo. Lo destruye = no crea otros globos
@@ -249,19 +253,8 @@ int BalloonManager::destroyBalloon(std::shared_ptr<Balloon> &balloon)
break;
}
// Otorga los puntos correspondientes al globo
/*
for (auto &player : players_)
{
player->addScore(score * player->getScoreMultiplier() * difficulty_score_multiplier_);
}
updateHiScore();
*/
// Aumenta el poder de la fase
const auto power = balloon->getPower();
Stage::power += power;
// balloons_popped_ += power;
Stage::addPower(balloon->getPower());
// Destruye el globo
explosions_->add(balloon->getPosX(), balloon->getPosY(), static_cast<int>(balloon->getSize()));