diff --git a/source/core/rendering/surface.cpp b/source/core/rendering/surface.cpp index d6f38d0..de32ec2 100644 --- a/source/core/rendering/surface.cpp +++ b/source/core/rendering/surface.cpp @@ -635,11 +635,8 @@ void Surface::copyToTexture(SDL_Renderer* renderer, SDL_Texture* texture, SDL_FR // Realiza un efecto de fundido en la paleta principal auto Surface::fadePalette() -> bool { // NOLINT(readability-convert-member-functions-to-static) - // Verificar que el tamaño mínimo de palette_ sea adecuado static constexpr int PALETTE_SIZE = 19; - if (sizeof(palette_) / sizeof(palette_[0]) < PALETTE_SIZE) { - throw std::runtime_error("Palette size is insufficient for fadePalette operation."); - } + static_assert(std::tuple_size_v >= PALETTE_SIZE, "Palette size is insufficient for fadePalette operation."); // Desplazar colores (pares e impares) for (int i = 18; i > 1; --i) { @@ -669,11 +666,8 @@ auto Surface::fadeSubPalette(Uint32 delay) -> bool { // NOLINT(readability-conv // Actualizar el último tick last_tick_ = current_tick; - // Verificar que el tamaño mínimo de sub_palette_ sea adecuado static constexpr int SUB_PALETTE_SIZE = 19; - if (sizeof(sub_palette_) / sizeof(sub_palette_[0]) < SUB_PALETTE_SIZE) { - throw std::runtime_error("Palette size is insufficient for fadePalette operation."); - } + static_assert(std::tuple_size_v >= SUB_PALETTE_SIZE, "Sub-palette size is insufficient for fadeSubPalette operation."); // Desplazar colores (pares e impares) for (int i = 18; i > 1; --i) {