#pragma once #include struct Color { Color() = default; Color(float r_in, float g_in, float b_in, float a_in = 255) : r(r_in) , g(g_in) , b(b_in) , a(a_in) { } Color(sf::Color color_in) { r = (float)color_in.r / 255.f; g = (float)color_in.g / 255.f; b = (float)color_in.b / 255.f; a = (float)color_in.a / 255.f; } float r{}; float g{}; float b{}; float a{}; sf::Color sfml() { return sf::Color{uint8_t(r * 255), uint8_t(g * 255), uint8_t(b * 255), uint8_t(a * 255)}; } float* imgui() { return &r; } }; namespace global { inline sf::Vector2f playerSize{500, 10}; inline sf::Vector2f playerHalfSize{playerSize / 2.f}; inline sf::Vector2f brickSize{50, 10}; inline sf::Vector2f brickHalfSize{brickSize / 2.f}; inline int totalSpecialBricks{3}; inline int rowSize{8}; inline int columnSize{5}; inline int totalBricks{rowSize * columnSize}; inline float ballRadius{5.0f}; inline float ballMaxSpeed{10}; inline float playerSpeed{10}; inline sf::Vector2f playerStartPos{700,700}; inline bool windowCollasped{false}; }