Afegit so de service_menu_back

Retocats els audios de service menu
Afegit so a ENTER NAME
Arreglos visuals a ENTER NAME
This commit is contained in:
2025-08-23 21:06:20 +02:00
parent 610083578e
commit 32e9da55ef
9 changed files with 22 additions and 16 deletions

View File

@@ -52,6 +52,7 @@ SOUND|${PREFIX}/data/sound/notify.wav
SOUND|${PREFIX}/data/sound/player_collision.wav SOUND|${PREFIX}/data/sound/player_collision.wav
SOUND|${PREFIX}/data/sound/power_ball_explosion.wav SOUND|${PREFIX}/data/sound/power_ball_explosion.wav
SOUND|${PREFIX}/data/sound/service_menu_adjust.wav SOUND|${PREFIX}/data/sound/service_menu_adjust.wav
SOUND|${PREFIX}/data/sound/service_menu_back.wav
SOUND|${PREFIX}/data/sound/service_menu_move.wav SOUND|${PREFIX}/data/sound/service_menu_move.wav
SOUND|${PREFIX}/data/sound/service_menu_select.wav SOUND|${PREFIX}/data/sound/service_menu_select.wav
SOUND|${PREFIX}/data/sound/stage_change.wav SOUND|${PREFIX}/data/sound/stage_change.wav

BIN
data/sound/click-2.wav Normal file

Binary file not shown.

BIN
data/sound/click-3.wav Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -37,10 +37,7 @@ auto Scoreboard::get() -> Scoreboard * {
// Constructor // Constructor
Scoreboard::Scoreboard() Scoreboard::Scoreboard()
: renderer_(Screen::get()->getRenderer()), : renderer_(Screen::get()->getRenderer()), game_power_meter_texture_(Resource::get()->getTexture("game_power_meter.png")), power_meter_sprite_(std::make_unique<Sprite>(game_power_meter_texture_)), text_scoreboard_(Resource::get()->getText("8bithud")) {
game_power_meter_texture_(Resource::get()->getTexture("game_power_meter.png")),
power_meter_sprite_(std::make_unique<Sprite>(game_power_meter_texture_)),
text_scoreboard_(Resource::get()->getText("8bithud")) {
// Inicializa variables // Inicializa variables
for (size_t i = 0; i < static_cast<size_t>(Id::SIZE); ++i) { for (size_t i = 0; i < static_cast<size_t>(Id::SIZE); ++i) {
name_.at(i).clear(); name_.at(i).clear();
@@ -284,17 +281,18 @@ void Scoreboard::renderNameInputField(size_t panel_index) {
// Selecciona el color // Selecciona el color
const Color COLOR = j < selector_pos_.at(panel_index) ? text_color2_ : text_color1_; const Color COLOR = j < selector_pos_.at(panel_index) ? text_color2_ : text_color1_;
if (j != selector_pos_.at(panel_index) || time_counter_ % 3 == 0) { // Dibuja la linea. Si coincide con el selector solo se dibuja 2 de cada 4 veces
// Dibuja la linea if (j != selector_pos_.at(panel_index) || time_counter_ % 4 >= 2) {
// Si está a la derecha del selector, se dibuja siempre
if (j >= selector_pos_.at(panel_index)) { if (j >= selector_pos_.at(panel_index)) {
SDL_SetRenderDrawColor(renderer_, COLOR.r, COLOR.g, COLOR.b, 255); SDL_SetRenderDrawColor(renderer_, COLOR.r, COLOR.g, COLOR.b, 255);
SDL_RenderLine(renderer_, rect.x, rect.y + rect.h, rect.x + rect.w, rect.y + rect.h); SDL_RenderLine(renderer_, rect.x, rect.y + rect.h, rect.x + rect.w, rect.y + rect.h);
} }
}
// Dibuja la letra
if (j < record_name_.at(panel_index).size()) { // Dibuja la letra
text_scoreboard_->writeColored(rect.x, rect.y, record_name_.at(panel_index).substr(j, 1), COLOR); if (j < record_name_.at(panel_index).size()) {
} text_scoreboard_->writeColored(rect.x, rect.y, record_name_.at(panel_index).substr(j, 1), COLOR);
} }
rect.x += 7; rect.x += 7;
} }

View File

@@ -1424,9 +1424,11 @@ void Game::handleNameInput(const std::shared_ptr<Player> &player) {
} else if (player->getEnterNamePositionOverflow()) { } else if (player->getEnterNamePositionOverflow()) {
player->setInput(Input::Action::START); player->setInput(Input::Action::START);
player->setPlayingState(Player::State::SHOWING_NAME); player->setPlayingState(Player::State::SHOWING_NAME);
playSound("service_menu_select.wav");
updateHiScoreName(); updateHiScoreName();
} else { } else {
player->setInput(Input::Action::RIGHT); player->setInput(Input::Action::RIGHT);
playSound("service_menu_select.wav");
} }
} else if (input_->checkAction(Input::Action::FIRE_CENTER, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad()) || } else if (input_->checkAction(Input::Action::FIRE_CENTER, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad()) ||
input_->checkAction(Input::Action::FIRE_RIGHT, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad())) { input_->checkAction(Input::Action::FIRE_RIGHT, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad())) {
@@ -1434,17 +1436,21 @@ void Game::handleNameInput(const std::shared_ptr<Player> &player) {
player->setPlayingState(Player::State::CONTINUE); player->setPlayingState(Player::State::CONTINUE);
} else { } else {
player->setInput(Input::Action::LEFT); player->setInput(Input::Action::LEFT);
playSound("service_menu_back.wav");
} }
} else if (input_->checkAction(Input::Action::UP, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad())) { } else if (input_->checkAction(Input::Action::UP, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad())) {
player->setInput(Input::Action::UP); player->setInput(Input::Action::UP);
} else if (input_->checkAction(Input::Action::DOWN, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad())) { playSound("service_menu_move.wav");
player->setInput(Input::Action::DOWN); } else if (input_->checkAction(Input::Action::DOWN, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad())) {
player->setInput(Input::Action::DOWN);
playSound("service_menu_move.wav");
} else if (input_->checkAction(Input::Action::START, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad())) { } else if (input_->checkAction(Input::Action::START, Input::DO_NOT_ALLOW_REPEAT, player->getUsesKeyboard(), player->getGamepad())) {
if (player->isShowingName()) { if (player->isShowingName()) {
player->setPlayingState(Player::State::CONTINUE); player->setPlayingState(Player::State::CONTINUE);
} else { } else {
player->setInput(Input::Action::START); player->setInput(Input::Action::START);
player->setPlayingState(Player::State::SHOWING_NAME); player->setPlayingState(Player::State::SHOWING_NAME);
playSound("service_menu_select.wav");
updateHiScoreName(); updateHiScoreName();
} }
} }

View File

@@ -49,16 +49,17 @@ void ServiceMenu::toggle() {
return; return;
} }
playBackSound();
if (!enabled_) { // Si está cerrado, abrir if (!enabled_) { // Si está cerrado, abrir
reset(); reset();
Options::gamepad_manager.assignAndLinkGamepads(); Options::gamepad_manager.assignAndLinkGamepads();
renderer_->show(this); renderer_->show(this);
setEnabledInternal(true); setEnabledInternal(true);
playSelectSound();
} else { // Si está abierto, cerrar } else { // Si está abierto, cerrar
renderer_->hide(); renderer_->hide();
setEnabledInternal(false); setEnabledInternal(false);
playBackSound();
} }
} }
@@ -518,7 +519,7 @@ void ServiceMenu::adjustListValues() {
void ServiceMenu::playAdjustSound() { Audio::get()->playSound("service_menu_adjust.wav", Audio::Group::INTERFACE); } void ServiceMenu::playAdjustSound() { Audio::get()->playSound("service_menu_adjust.wav", Audio::Group::INTERFACE); }
void ServiceMenu::playMoveSound() { Audio::get()->playSound("service_menu_move.wav", Audio::Group::INTERFACE); } void ServiceMenu::playMoveSound() { Audio::get()->playSound("service_menu_move.wav", Audio::Group::INTERFACE); }
void ServiceMenu::playSelectSound() { Audio::get()->playSound("service_menu_select.wav", Audio::Group::INTERFACE); } void ServiceMenu::playSelectSound() { Audio::get()->playSound("service_menu_select.wav", Audio::Group::INTERFACE); }
void ServiceMenu::playBackSound() { Audio::get()->playSound("service_menu_select.wav", Audio::Group::INTERFACE); } void ServiceMenu::playBackSound() { Audio::get()->playSound("service_menu_back.wav", Audio::Group::INTERFACE); }
// Devuelve el nombre del grupo como string para el título // Devuelve el nombre del grupo como string para el título
auto ServiceMenu::settingsGroupToString(SettingsGroup group) -> std::string { auto ServiceMenu::settingsGroupToString(SettingsGroup group) -> std::string {