Implementat contador per a posar el nom al acabar la partida
This commit is contained in:
@@ -1,11 +1,12 @@
|
|||||||
## GAME
|
## GAME
|
||||||
game.item_size 20
|
game.item_size 20 # Tamaño de los items del juego
|
||||||
game.width 320
|
game.width 320 # Ancho de la resolucion nativa del juego
|
||||||
game.height 240
|
game.height 240 # Alto de la resolucion nativa del juego
|
||||||
game.play_area.rect.x 0
|
game.play_area.rect.x 0 # Rectangulo con la posición de la zona de juego
|
||||||
game.play_area.rect.y 0
|
game.play_area.rect.y 0 # Rectangulo con la posición de la zona de juego
|
||||||
game.play_area.rect.w 320
|
game.play_area.rect.w 320 # Rectangulo con la posición de la zona de juego
|
||||||
game.play_area.rect.h 200
|
game.play_area.rect.h 200 # Rectangulo con la posición de la zona de juego
|
||||||
|
game.enter_name_seconds 30 # Duración en segundos para introducir el nombre al finalizar la partida
|
||||||
|
|
||||||
## FADE
|
## FADE
|
||||||
fade.num_squares_width 160
|
fade.num_squares_width 160
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
## GAME
|
## GAME
|
||||||
game.item_size 20
|
game.item_size 20 # Tamaño de los items del juego
|
||||||
game.width 320
|
game.width 320 # Ancho de la resolucion nativa del juego
|
||||||
game.height 256
|
game.height 256 # Alto de la resolucion nativa del juego
|
||||||
game.play_area.rect.x 0
|
game.play_area.rect.x 0 # Rectangulo con la posición de la zona de juego
|
||||||
game.play_area.rect.y 0
|
game.play_area.rect.y 0 # Rectangulo con la posición de la zona de juego
|
||||||
game.play_area.rect.w 320
|
game.play_area.rect.w 320 # Rectangulo con la posición de la zona de juego
|
||||||
game.play_area.rect.h 216
|
game.play_area.rect.h 216 # Rectangulo con la posición de la zona de juego
|
||||||
|
game.enter_name_seconds 30 # Duración en segundos para introducir el nombre al finalizar la partida
|
||||||
|
|
||||||
## FADE
|
## FADE
|
||||||
fade.num_squares_width 160
|
fade.num_squares_width 160
|
||||||
|
|||||||
@@ -255,6 +255,11 @@ bool setParams(const std::string &var, const std::string &value)
|
|||||||
param.game.play_area.rect.h = std::stoi(value);
|
param.game.play_area.rect.h = std::stoi(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
else if (var == "game.enter_name_seconds")
|
||||||
|
{
|
||||||
|
param.game.enter_name_seconds = std::stoi(value);
|
||||||
|
}
|
||||||
|
|
||||||
// FADE
|
// FADE
|
||||||
else if (var == "fade.num_squares_width")
|
else if (var == "fade.num_squares_width")
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -55,7 +55,9 @@ void Player::init()
|
|||||||
coffees_ = 0;
|
coffees_ = 0;
|
||||||
input_ = true;
|
input_ = true;
|
||||||
continue_ticks_ = 0;
|
continue_ticks_ = 0;
|
||||||
continue_counter_ = 20;
|
continue_counter_ = 10;
|
||||||
|
enter_name_ticks_ = 0;
|
||||||
|
enter_name_counter_ = param.game.enter_name_seconds;
|
||||||
width_ = 30;
|
width_ = 30;
|
||||||
height_ = 30;
|
height_ = 30;
|
||||||
collider_.r = 9;
|
collider_.r = 9;
|
||||||
@@ -347,6 +349,7 @@ void Player::update()
|
|||||||
updatePowerUpCounter();
|
updatePowerUpCounter();
|
||||||
updateInvulnerable();
|
updateInvulnerable();
|
||||||
updateContinueCounter();
|
updateContinueCounter();
|
||||||
|
updateEnterNameCounter();
|
||||||
updateScoreboard();
|
updateScoreboard();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -711,6 +714,20 @@ void Player::updateContinueCounter()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Actualiza el contador de entrar nombre
|
||||||
|
void Player::updateEnterNameCounter()
|
||||||
|
{
|
||||||
|
if (status_playing_ == PlayerStatus::ENTERING_NAME)
|
||||||
|
{
|
||||||
|
constexpr Uint32 ticks_speed = 1000;
|
||||||
|
|
||||||
|
if (SDL_GetTicks() - enter_name_ticks_ > ticks_speed)
|
||||||
|
{
|
||||||
|
decEnterNameCounter();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Le asigna un panel en el marcador al jugador
|
// Le asigna un panel en el marcador al jugador
|
||||||
void Player::setScoreBoardPanel(int panel)
|
void Player::setScoreBoardPanel(int panel)
|
||||||
{
|
{
|
||||||
@@ -734,6 +751,18 @@ void Player::decContinueCounter()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Decrementa el contador de entrar nombre
|
||||||
|
void Player::decEnterNameCounter()
|
||||||
|
{
|
||||||
|
enter_name_ticks_ = SDL_GetTicks();
|
||||||
|
--enter_name_counter_;
|
||||||
|
if (enter_name_counter_ < 0)
|
||||||
|
{
|
||||||
|
enter_name_counter_ = param.game.enter_name_seconds;
|
||||||
|
setStatusPlaying(PlayerStatus::CONTINUE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Establece el nombre del jugador
|
// Establece el nombre del jugador
|
||||||
void Player::setName(const std::string &name)
|
void Player::setName(const std::string &name)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -80,6 +80,8 @@ private:
|
|||||||
std::string record_name_; // Nombre del jugador para la tabla de mejores puntuaciones
|
std::string record_name_; // Nombre del jugador para la tabla de mejores puntuaciones
|
||||||
int controller_index_; // Indice del array de mandos que utilizará para moverse
|
int controller_index_; // Indice del array de mandos que utilizará para moverse
|
||||||
bool demo_; // Para que el jugador sepa si está en el modo demostración
|
bool demo_; // Para que el jugador sepa si está en el modo demostración
|
||||||
|
int enter_name_counter_; // Contador para poner nombre
|
||||||
|
Uint32 enter_name_ticks_; // Variable para poder cambiar el contador de poner nombre en función del tiempo
|
||||||
|
|
||||||
// Actualiza el circulo de colisión a la posición del jugador
|
// Actualiza el circulo de colisión a la posición del jugador
|
||||||
void shiftColliders();
|
void shiftColliders();
|
||||||
@@ -90,6 +92,12 @@ private:
|
|||||||
// Actualiza el contador de continue
|
// Actualiza el contador de continue
|
||||||
void updateContinueCounter();
|
void updateContinueCounter();
|
||||||
|
|
||||||
|
// Actualiza el contador de entrar nombre
|
||||||
|
void updateEnterNameCounter();
|
||||||
|
|
||||||
|
// Decrementa el contador de entrar nombre
|
||||||
|
void decEnterNameCounter();
|
||||||
|
|
||||||
// Indica si el jugador se puede dibujar
|
// Indica si el jugador se puede dibujar
|
||||||
bool isRenderable() const;
|
bool isRenderable() const;
|
||||||
|
|
||||||
|
|||||||
@@ -157,6 +157,7 @@ struct ParamGame
|
|||||||
int item_size; // Tamaño de los items del juego
|
int item_size; // Tamaño de los items del juego
|
||||||
Zone play_area; // Rectangulo con la posición de la zona de juego
|
Zone play_area; // Rectangulo con la posición de la zona de juego
|
||||||
Zone game_area; // Rectangulo con las dimensiones del juego
|
Zone game_area; // Rectangulo con las dimensiones del juego
|
||||||
|
int enter_name_seconds; // Duración en segundos para introducir el nombre al finalizar la partida
|
||||||
};
|
};
|
||||||
|
|
||||||
// param.fade
|
// param.fade
|
||||||
|
|||||||
Reference in New Issue
Block a user