forked from jaildesigner-jailgames/jaildoctors_dilemma
opcions per amagar la pantalla de carrega
This commit is contained in:
@@ -645,14 +645,20 @@ namespace Resource {
|
||||
|
||||
// Muestra el progreso de carga
|
||||
void Cache::renderProgress() {
|
||||
Screen::get()->start();
|
||||
Screen::get()->clearSurface(static_cast<Uint8>(PaletteColor::BLACK));
|
||||
|
||||
// Si show=false: pantalla negra y salir
|
||||
if (!Options::loading.show) {
|
||||
Screen::get()->render();
|
||||
return;
|
||||
}
|
||||
|
||||
constexpr float X_PADDING = 60.0F;
|
||||
constexpr float Y_PADDING = 10.0F;
|
||||
constexpr float BAR_HEIGHT = 5.0F;
|
||||
|
||||
const float BAR_POSITION = Options::game.height - BAR_HEIGHT - Y_PADDING;
|
||||
Screen::get()->start();
|
||||
Screen::get()->clearSurface(static_cast<Uint8>(PaletteColor::BLACK));
|
||||
|
||||
auto surface = Screen::get()->getRendererSurface();
|
||||
const auto LOADING_TEXT_COLOR = static_cast<Uint8>(PaletteColor::BRIGHT_WHITE);
|
||||
const auto BAR_COLOR = static_cast<Uint8>(PaletteColor::WHITE);
|
||||
@@ -686,13 +692,15 @@ namespace Resource {
|
||||
SDL_FRect rect_full = {.x = X_PADDING, .y = BAR_POSITION, .w = FULL_BAR_WIDTH, .h = BAR_HEIGHT};
|
||||
surface->fillRect(&rect_full, BAR_COLOR);
|
||||
|
||||
// Mostra el nom del recurs que està a punt de carregar-se, centrat sobre la barra
|
||||
if (!current_loading_name_.empty()) {
|
||||
// Mostra el nom del recurs (o missatge d'espera si ja ha acabat i wait_for_input=true)
|
||||
const bool WAITING_FOR_INPUT = isLoadDone() && Options::loading.wait_for_input;
|
||||
const std::string OVER_BAR_TEXT = WAITING_FOR_INPUT ? "PRESS ANY KEY TO CONTINUE" : current_loading_name_;
|
||||
if ((Options::loading.show_resource_name || WAITING_FOR_INPUT) && !OVER_BAR_TEXT.empty()) {
|
||||
const float TEXT_Y = BAR_POSITION - static_cast<float>(TEXT_HEIGHT) - 2.0F;
|
||||
loading_text_->writeColored(
|
||||
CENTER_X - (loading_text_->length(current_loading_name_) / 2),
|
||||
CENTER_X - (loading_text_->length(OVER_BAR_TEXT) / 2),
|
||||
static_cast<int>(TEXT_Y),
|
||||
current_loading_name_,
|
||||
OVER_BAR_TEXT,
|
||||
LOADING_TEXT_COLOR);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user