Treballant en el final del joc
This commit is contained in:
@@ -61,8 +61,7 @@ void Player::init()
|
||||
|
||||
// Establece la posición del sprite
|
||||
player_sprite_->clear();
|
||||
player_sprite_->setPosX(pos_x_);
|
||||
player_sprite_->setPosY(pos_y_);
|
||||
shiftSprite();
|
||||
|
||||
// Selecciona un frame para pintar
|
||||
player_sprite_->setCurrentAnimation("stand");
|
||||
@@ -78,13 +77,16 @@ void Player::setInput(InputType input)
|
||||
setInputPlaying(input);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::ENTERING_NAME:
|
||||
{
|
||||
setInputEnteringName(input);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::ENTERING_NAME_GAME_COMPLETED:
|
||||
{
|
||||
setInputEnteringName(input);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -101,32 +103,27 @@ void Player::setInputPlaying(InputType input)
|
||||
setWalkingStatus(PlayerStatus::WALKING_LEFT);
|
||||
break;
|
||||
}
|
||||
|
||||
case InputType::RIGHT:
|
||||
{
|
||||
vel_x_ = BASE_SPEED_;
|
||||
setWalkingStatus(PlayerStatus::WALKING_RIGHT);
|
||||
break;
|
||||
}
|
||||
|
||||
case InputType::FIRE_CENTER:
|
||||
{
|
||||
setFiringStatus(PlayerStatus::FIRING_UP);
|
||||
break;
|
||||
}
|
||||
|
||||
case InputType::FIRE_LEFT:
|
||||
{
|
||||
setFiringStatus(PlayerStatus::FIRING_LEFT);
|
||||
break;
|
||||
}
|
||||
|
||||
case InputType::FIRE_RIGHT:
|
||||
{
|
||||
setFiringStatus(PlayerStatus::FIRING_RIGHT);
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
{
|
||||
vel_x_ = 0;
|
||||
@@ -144,23 +141,18 @@ void Player::setInputEnteringName(InputType input)
|
||||
case InputType::LEFT:
|
||||
enter_name_->decPosition();
|
||||
break;
|
||||
|
||||
case InputType::RIGHT:
|
||||
enter_name_->incPosition();
|
||||
break;
|
||||
|
||||
case InputType::UP:
|
||||
enter_name_->incIndex();
|
||||
break;
|
||||
|
||||
case InputType::DOWN:
|
||||
enter_name_->decIndex();
|
||||
break;
|
||||
|
||||
case InputType::START:
|
||||
setRecordName(enter_name_->getName());
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -170,7 +162,9 @@ void Player::setInputEnteringName(InputType input)
|
||||
// Mueve el jugador a la posición y animación que le corresponde
|
||||
void Player::move()
|
||||
{
|
||||
if (isPlaying())
|
||||
switch (status_playing_)
|
||||
{
|
||||
case PlayerStatus::PLAYING:
|
||||
{
|
||||
// Mueve el jugador a derecha o izquierda
|
||||
pos_x_ += vel_x_;
|
||||
@@ -178,16 +172,12 @@ void Player::move()
|
||||
// Si el jugador abandona el area de juego por los laterales, restaura su posición
|
||||
const float min_x = param.game.play_area.rect.x - 5;
|
||||
const float max_x = play_area_.w + 5 - WIDTH_;
|
||||
if ((pos_x_ < min_x) || (pos_x_ > max_x))
|
||||
pos_x_ = std::clamp(pos_x_, min_x, max_x);
|
||||
pos_x_ = std::clamp(pos_x_, min_x, max_x);
|
||||
|
||||
// Actualiza la posición del sprite
|
||||
player_sprite_->setPosX(pos_x_);
|
||||
player_sprite_->setPosY(pos_y_);
|
||||
|
||||
power_sprite_->setPosX(getPosX() - power_up_desp_x_);
|
||||
shiftSprite();
|
||||
break;
|
||||
}
|
||||
else if (isDying())
|
||||
case PlayerStatus::DYING:
|
||||
{
|
||||
// Si el cadaver abandona el area de juego por los laterales lo hace rebotar
|
||||
if ((player_sprite_->getPosX() < param.game.play_area.rect.x) || (player_sprite_->getPosX() + WIDTH_ > play_area_.w))
|
||||
@@ -196,6 +186,33 @@ void Player::move()
|
||||
// Si el cadaver abandona el area de juego por abajo
|
||||
if (player_sprite_->getPosY() > param.game.play_area.rect.h)
|
||||
setStatusPlaying(PlayerStatus::DIED);
|
||||
break;
|
||||
}
|
||||
case PlayerStatus::GAME_COMPLETED:
|
||||
{
|
||||
switch (id_)
|
||||
{
|
||||
case 1:
|
||||
setInputPlaying(InputType::LEFT);
|
||||
break;
|
||||
case 2:
|
||||
setInputPlaying(InputType::RIGHT);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
pos_x_ += vel_x_;
|
||||
const float min_x = -WIDTH_;
|
||||
const float max_x = play_area_.w;
|
||||
pos_x_ = std::clamp(pos_x_, min_x, max_x);
|
||||
shiftSprite();
|
||||
|
||||
if (pos_x_ == min_x || pos_x_ == max_x)
|
||||
setStatusPlaying(PlayerStatus::GAME_OVER);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -211,16 +228,10 @@ void Player::render()
|
||||
}
|
||||
|
||||
// Establece el estado del jugador cuando camina
|
||||
void Player::setWalkingStatus(PlayerStatus status)
|
||||
{
|
||||
status_walking_ = status;
|
||||
}
|
||||
void Player::setWalkingStatus(PlayerStatus status) { status_walking_ = status; }
|
||||
|
||||
// Establece el estado del jugador cuando dispara
|
||||
void Player::setFiringStatus(PlayerStatus status)
|
||||
{
|
||||
status_firing_ = status;
|
||||
}
|
||||
void Player::setFiringStatus(PlayerStatus status) { status_firing_ = status; }
|
||||
|
||||
// Establece la animación correspondiente al estado
|
||||
void Player::setAnimation()
|
||||
@@ -233,7 +244,7 @@ void Player::setAnimation()
|
||||
const SDL_RendererFlip flip_fire = status_firing_ == PlayerStatus::FIRING_RIGHT ? SDL_FLIP_HORIZONTAL : SDL_FLIP_NONE;
|
||||
|
||||
// Establece la animación a partir de las cadenas
|
||||
if (isPlaying())
|
||||
if (isPlaying() || isEnteringNameGameCompleted() || isGameCompleted())
|
||||
{
|
||||
if (status_firing_ == PlayerStatus::FIRING_NONE)
|
||||
{ // No esta disparando
|
||||
@@ -259,41 +270,22 @@ void Player::setAnimation()
|
||||
}
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
int Player::getPosX() const
|
||||
{
|
||||
return static_cast<int>(pos_x_);
|
||||
}
|
||||
int Player::getPosX() const { return static_cast<int>(pos_x_); }
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
int Player::getPosY() const
|
||||
{
|
||||
return pos_y_;
|
||||
}
|
||||
int Player::getPosY() const { return pos_y_; }
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
int Player::getWidth() const
|
||||
{
|
||||
return WIDTH_;
|
||||
}
|
||||
int Player::getWidth() const { return WIDTH_; }
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
int Player::getHeight() const
|
||||
{
|
||||
return HEIGHT_;
|
||||
}
|
||||
int Player::getHeight() const { return HEIGHT_; }
|
||||
|
||||
// Indica si el jugador puede disparar
|
||||
bool Player::canFire() const
|
||||
{
|
||||
// Si el contador a llegado a cero, podemos disparar. En caso contrario decrementamos el contador
|
||||
return cooldown_ > 0 ? false : true;
|
||||
}
|
||||
bool Player::canFire() const { return cooldown_ > 0 ? false : true; }
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Player::setFireCooldown(int time)
|
||||
{
|
||||
cooldown_ = time;
|
||||
}
|
||||
void Player::setFireCooldown(int time) { cooldown_ = time; }
|
||||
|
||||
// Actualiza el valor de la variable
|
||||
void Player::updateCooldown()
|
||||
@@ -327,16 +319,10 @@ void Player::update()
|
||||
}
|
||||
|
||||
// Obtiene la puntuación del jugador
|
||||
int Player::getScore() const
|
||||
{
|
||||
return score_;
|
||||
}
|
||||
int Player::getScore() const { return score_; }
|
||||
|
||||
// Asigna un valor a la puntuación del jugador
|
||||
void Player::setScore(int score)
|
||||
{
|
||||
score_ = score;
|
||||
}
|
||||
void Player::setScore(int score) { score_ = score; }
|
||||
|
||||
// Incrementa la puntuación del jugador
|
||||
void Player::addScore(int score)
|
||||
@@ -348,66 +334,54 @@ void Player::addScore(int score)
|
||||
}
|
||||
|
||||
// Indica si el jugador está jugando
|
||||
bool Player::isPlaying() const
|
||||
{
|
||||
return status_playing_ == PlayerStatus::PLAYING;
|
||||
}
|
||||
bool Player::isPlaying() const { return status_playing_ == PlayerStatus::PLAYING; }
|
||||
|
||||
// Indica si el jugador está continuando
|
||||
bool Player::isContinue() const
|
||||
{
|
||||
return status_playing_ == PlayerStatus::CONTINUE;
|
||||
}
|
||||
bool Player::isContinue() const { return status_playing_ == PlayerStatus::CONTINUE; }
|
||||
|
||||
// Indica si el jugador está esperando
|
||||
bool Player::isWaiting() const
|
||||
{
|
||||
return status_playing_ == PlayerStatus::WAITING;
|
||||
}
|
||||
bool Player::isWaiting() const { return status_playing_ == PlayerStatus::WAITING; }
|
||||
|
||||
// Indica si el jugador está introduciendo su nombre
|
||||
bool Player::isEnteringName() const
|
||||
{
|
||||
return status_playing_ == PlayerStatus::ENTERING_NAME;
|
||||
}
|
||||
bool Player::isEnteringName() const { return status_playing_ == PlayerStatus::ENTERING_NAME; }
|
||||
|
||||
// Indica si el jugador está muriendose
|
||||
bool Player::isDying() const
|
||||
{
|
||||
return status_playing_ == PlayerStatus::DYING;
|
||||
}
|
||||
bool Player::isDying() const { return status_playing_ == PlayerStatus::DYING; }
|
||||
|
||||
// Indica si el jugador ha terminado de morir
|
||||
bool Player::hasDied() const
|
||||
{
|
||||
return status_playing_ == PlayerStatus::DIED;
|
||||
}
|
||||
bool Player::hasDied() const { return status_playing_ == PlayerStatus::DIED; }
|
||||
|
||||
// Indica si el jugador ya ha terminado de jugar
|
||||
bool Player::isGameOver() const
|
||||
{
|
||||
return status_playing_ == PlayerStatus::GAME_OVER;
|
||||
}
|
||||
bool Player::isGameOver() const { return status_playing_ == PlayerStatus::GAME_OVER; }
|
||||
|
||||
// Indica si el jugador está introduciendo su nombre una vez ha completado el juego
|
||||
bool Player::isEnteringNameGameCompleted() const { return status_playing_ == PlayerStatus::ENTERING_NAME_GAME_COMPLETED; }
|
||||
|
||||
// Indica si el jugador ha completado el juego
|
||||
bool Player::isGameCompleted() const { return status_playing_ == PlayerStatus::GAME_COMPLETED; }
|
||||
|
||||
// Actualiza el panel del marcador
|
||||
void Player::updateScoreboard()
|
||||
{
|
||||
switch (status_playing_)
|
||||
{
|
||||
|
||||
case PlayerStatus::CONTINUE:
|
||||
{
|
||||
Scoreboard::get()->setContinue(getScoreBoardPanel(), getContinueCounter());
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::ENTERING_NAME:
|
||||
{
|
||||
Scoreboard::get()->setRecordName(getScoreBoardPanel(), getRecordName());
|
||||
Scoreboard::get()->setSelectorPos(getScoreBoardPanel(), getRecordNamePos());
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::ENTERING_NAME_GAME_COMPLETED:
|
||||
{
|
||||
Scoreboard::get()->setRecordName(getScoreBoardPanel(), getRecordName());
|
||||
Scoreboard::get()->setSelectorPos(getScoreBoardPanel(), getRecordNamePos());
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -436,7 +410,6 @@ void Player::setStatusPlaying(PlayerStatus value)
|
||||
setScoreboardMode(ScoreboardMode::SCORE);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::CONTINUE:
|
||||
{
|
||||
// Inicializa el contador de continuar
|
||||
@@ -446,19 +419,16 @@ void Player::setStatusPlaying(PlayerStatus value)
|
||||
setScoreboardMode(ScoreboardMode::CONTINUE);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::WAITING:
|
||||
{
|
||||
setScoreboardMode(ScoreboardMode::WAITING);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::ENTERING_NAME:
|
||||
{
|
||||
setScoreboardMode(ScoreboardMode::ENTER_NAME);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::DYING:
|
||||
{
|
||||
// Activa la animación de morir
|
||||
@@ -467,42 +437,42 @@ void Player::setStatusPlaying(PlayerStatus value)
|
||||
rand() % 2 == 0 ? player_sprite_->setVelX(3.3f) : player_sprite_->setVelX(-3.3f);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::DIED:
|
||||
{
|
||||
const auto nextPlayerStatus = IsEligibleForHighScore() ? PlayerStatus::ENTERING_NAME : PlayerStatus::CONTINUE;
|
||||
demo_ ? setStatusPlaying(PlayerStatus::WAITING) : setStatusPlaying(nextPlayerStatus);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::GAME_OVER:
|
||||
{
|
||||
setScoreboardMode(ScoreboardMode::GAME_OVER);
|
||||
break;
|
||||
}
|
||||
|
||||
case PlayerStatus::ENTERING_NAME_GAME_COMPLETED:
|
||||
{
|
||||
setWalkingStatus(PlayerStatus::WALKING_STOP);
|
||||
setFiringStatus(PlayerStatus::FIRING_NONE);
|
||||
setScoreboardMode(ScoreboardMode::ENTER_NAME);
|
||||
break;
|
||||
}
|
||||
case PlayerStatus::GAME_COMPLETED:
|
||||
{
|
||||
setScoreboardMode(ScoreboardMode::GAME_OVER);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Obtiene el estado del jugador en el juego
|
||||
PlayerStatus Player::getStatusPlaying() const
|
||||
{
|
||||
return status_playing_;
|
||||
}
|
||||
PlayerStatus Player::getStatusPlaying() const { return status_playing_; }
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
float Player::getScoreMultiplier() const
|
||||
{
|
||||
return score_multiplier_;
|
||||
}
|
||||
float Player::getScoreMultiplier() const { return score_multiplier_; }
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Player::setScoreMultiplier(float value)
|
||||
{
|
||||
score_multiplier_ = value;
|
||||
}
|
||||
void Player::setScoreMultiplier(float value) { score_multiplier_ = value; }
|
||||
|
||||
// Aumenta el valor de la variable hasta un máximo
|
||||
void Player::incScoreMultiplier()
|
||||
@@ -519,10 +489,7 @@ void Player::decScoreMultiplier()
|
||||
}
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
bool Player::isInvulnerable() const
|
||||
{
|
||||
return invulnerable_;
|
||||
}
|
||||
bool Player::isInvulnerable() const { return invulnerable_; }
|
||||
|
||||
// Establece el valor del estado
|
||||
void Player::setInvulnerable(bool value)
|
||||
@@ -532,16 +499,10 @@ void Player::setInvulnerable(bool value)
|
||||
}
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
int Player::getInvulnerableCounter() const
|
||||
{
|
||||
return invulnerable_counter_;
|
||||
}
|
||||
int Player::getInvulnerableCounter() const { return invulnerable_counter_; }
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Player::setInvulnerableCounter(int value)
|
||||
{
|
||||
invulnerable_counter_ = value;
|
||||
}
|
||||
void Player::setInvulnerableCounter(int value) { invulnerable_counter_ = value; }
|
||||
|
||||
// Monitoriza el estado
|
||||
void Player::updateInvulnerable()
|
||||
@@ -562,10 +523,7 @@ void Player::updateInvulnerable()
|
||||
}
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
bool Player::isPowerUp() const
|
||||
{
|
||||
return power_up_;
|
||||
}
|
||||
bool Player::isPowerUp() const { return power_up_; }
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Player::setPowerUp()
|
||||
@@ -575,16 +533,10 @@ void Player::setPowerUp()
|
||||
}
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
int Player::getPowerUpCounter() const
|
||||
{
|
||||
return power_up_counter_;
|
||||
}
|
||||
int Player::getPowerUpCounter() const { return power_up_counter_; }
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Player::setPowerUpCounter(int value)
|
||||
{
|
||||
power_up_counter_ = value;
|
||||
}
|
||||
void Player::setPowerUpCounter(int value) { power_up_counter_ = value; }
|
||||
|
||||
// Actualiza el valor de la variable
|
||||
void Player::updatePowerUp()
|
||||
@@ -597,10 +549,7 @@ void Player::updatePowerUp()
|
||||
}
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
bool Player::hasExtraHit() const
|
||||
{
|
||||
return extra_hit_;
|
||||
}
|
||||
bool Player::hasExtraHit() const { return extra_hit_; }
|
||||
|
||||
// Concede un toque extra al jugador
|
||||
void Player::giveExtraHit()
|
||||
@@ -627,16 +576,10 @@ void Player::removeExtraHit()
|
||||
}
|
||||
|
||||
// Devuelve el número de cafes actuales
|
||||
int Player::getCoffees() const
|
||||
{
|
||||
return coffees_;
|
||||
}
|
||||
int Player::getCoffees() const { return coffees_; }
|
||||
|
||||
// Obtiene el circulo de colisión
|
||||
Circle &Player::getCollider()
|
||||
{
|
||||
return collider_;
|
||||
}
|
||||
Circle &Player::getCollider() { return collider_; }
|
||||
|
||||
// Actualiza el circulo de colisión a la posición del jugador
|
||||
void Player::shiftColliders()
|
||||
@@ -653,10 +596,7 @@ void Player::setPlayerTextures(const std::vector<std::shared_ptr<Texture>> &text
|
||||
}
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
int Player::getContinueCounter() const
|
||||
{
|
||||
return continue_counter_;
|
||||
}
|
||||
int Player::getContinueCounter() const { return continue_counter_; }
|
||||
|
||||
// Actualiza el contador de continue
|
||||
void Player::updateContinueCounter()
|
||||
@@ -674,7 +614,7 @@ void Player::updateContinueCounter()
|
||||
// Actualiza el contador de entrar nombre
|
||||
void Player::updateEnterNameCounter()
|
||||
{
|
||||
if (status_playing_ == PlayerStatus::ENTERING_NAME)
|
||||
if (status_playing_ == PlayerStatus::ENTERING_NAME || status_playing_ == PlayerStatus::ENTERING_NAME_GAME_COMPLETED)
|
||||
{
|
||||
constexpr int TICKS_SPEED = 1000;
|
||||
if (SDL_GetTicks() - enter_name_ticks_ > TICKS_SPEED)
|
||||
@@ -685,16 +625,10 @@ void Player::updateEnterNameCounter()
|
||||
}
|
||||
|
||||
// Le asigna un panel en el marcador al jugador
|
||||
void Player::setScoreBoardPanel(int panel)
|
||||
{
|
||||
scoreboard_panel_ = panel;
|
||||
}
|
||||
void Player::setScoreBoardPanel(int panel) { scoreboard_panel_ = panel; }
|
||||
|
||||
// Obtiene el valor de la variable
|
||||
int Player::getScoreBoardPanel() const
|
||||
{
|
||||
return scoreboard_panel_;
|
||||
}
|
||||
int Player::getScoreBoardPanel() const { return scoreboard_panel_; }
|
||||
|
||||
// Decrementa el contador de continuar
|
||||
void Player::decContinueCounter()
|
||||
@@ -720,66 +654,45 @@ void Player::decEnterNameCounter()
|
||||
}
|
||||
|
||||
// Establece el nombre del jugador
|
||||
void Player::setName(const std::string &name)
|
||||
{
|
||||
name_ = name;
|
||||
}
|
||||
void Player::setName(const std::string &name) { name_ = name; }
|
||||
|
||||
// Establece el nombre del jugador para la tabla de mejores puntuaciones
|
||||
void Player::setRecordName(const std::string &record_name)
|
||||
{
|
||||
record_name_ = record_name.substr(0, 8);
|
||||
}
|
||||
void Player::setRecordName(const std::string &record_name) { record_name_ = record_name.substr(0, 8); }
|
||||
|
||||
// Obtiene el nombre del jugador
|
||||
std::string Player::getName() const
|
||||
{
|
||||
return name_;
|
||||
}
|
||||
std::string Player::getName() const { return name_; }
|
||||
|
||||
// Obtiene el nombre del jugador para la tabla de mejores puntuaciones
|
||||
std::string Player::getRecordName() const
|
||||
{
|
||||
return record_name_;
|
||||
}
|
||||
std::string Player::getRecordName() const { return record_name_; }
|
||||
|
||||
// Obtiene la posici´´on que se está editando del nombre del jugador para la tabla de mejores puntuaciones
|
||||
int Player::getRecordNamePos() const
|
||||
{
|
||||
if (enter_name_)
|
||||
{
|
||||
return enter_name_->getPosition();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Establece el mando que usará para ser controlado
|
||||
void Player::setController(int index)
|
||||
{
|
||||
controller_index_ = index;
|
||||
}
|
||||
void Player::setController(int index) { controller_index_ = index; }
|
||||
|
||||
// Obtiene el mando que usa para ser controlado
|
||||
int Player::getController() const
|
||||
{
|
||||
return controller_index_;
|
||||
}
|
||||
int Player::getController() const { return controller_index_; }
|
||||
|
||||
// Obtiene el "id" del jugador
|
||||
int Player::getId() const
|
||||
{
|
||||
return id_;
|
||||
}
|
||||
int Player::getId() const { return id_; }
|
||||
|
||||
// Indica si el jugador se puede dibujar
|
||||
bool Player::isRenderable() const
|
||||
{
|
||||
return isPlaying() || isDying();
|
||||
}
|
||||
bool Player::isRenderable() const { return isPlaying() || isDying() || isEnteringNameGameCompleted() || isGameCompleted(); }
|
||||
|
||||
// Comprueba si la puntuación entra en la tabla de mejores puntuaciones
|
||||
bool Player::IsEligibleForHighScore()
|
||||
bool Player::IsEligibleForHighScore() { return score_ > options.game.hi_score_table.back().score; }
|
||||
|
||||
// Recoloca los sprites
|
||||
void Player::shiftSprite()
|
||||
{
|
||||
return score_ > options.game.hi_score_table.back().score;
|
||||
player_sprite_->setPosX(pos_x_);
|
||||
player_sprite_->setPosY(pos_y_);
|
||||
power_sprite_->setPosX(getPosX() - power_up_desp_x_);
|
||||
}
|
||||
Reference in New Issue
Block a user