#pragma once

#include <SDL3/SDL.h>

// Textos
namespace Texts {
    constexpr const char* WINDOW_CAPTION = "© 2022 JailDoctor's Dilemma — JailDesigner";
    constexpr const char* COPYRIGHT = "@2022 JailDesigner";
    constexpr const char* VERSION = "1.14";  // Versión por defecto
}  // namespace Texts

// Tamaño de bloque
namespace Tile {
    constexpr int SIZE = 8;
    constexpr int HALF_SIZE = SIZE / 2;
}  // namespace Tile

namespace PlayArea {
    constexpr int TOP = (0 * Tile::SIZE);
    constexpr int BOTTOM = (16 * Tile::SIZE);
    constexpr int LEFT = (0 * Tile::SIZE);
    constexpr int RIGHT = (32 * Tile::SIZE);
    constexpr int WIDTH = RIGHT - LEFT;
    constexpr int HEIGHT = BOTTOM - TOP;
    constexpr int CENTER_X = LEFT + (WIDTH / 2);
    constexpr int CENTER_FIRST_QUARTER_X = (WIDTH / 4);
    constexpr int CENTER_THIRD_QUARTER_X = (WIDTH / 4) * 3;
    constexpr int CENTER_Y = TOP + (HEIGHT / 2);
    constexpr int FIRST_QUARTER_Y = HEIGHT / 4;
    constexpr int THIRD_QUARTER_Y = (HEIGHT / 4) * 3;
}  // namespace PlayArea

namespace GameCanvas {
    constexpr int WIDTH = 256;
    constexpr int HEIGHT = 192;
    constexpr int CENTER_X = WIDTH / 2;
    constexpr int FIRST_QUARTER_X = WIDTH / 4;
    constexpr int THIRD_QUARTER_X = (WIDTH / 4) * 3;
    constexpr int CENTER_Y = HEIGHT / 2;
    constexpr int FIRST_QUARTER_Y = HEIGHT / 4;
    constexpr int THIRD_QUARTER_Y = (HEIGHT / 4) * 3;
}  // namespace GameCanvas

namespace Collision {
    constexpr int NONE = -1;
}  // namespace Collision

namespace Flip {
    constexpr SDL_FlipMode LEFT = SDL_FLIP_HORIZONTAL;
    constexpr SDL_FlipMode RIGHT = SDL_FLIP_NONE;
}  // namespace Flip