forked from jaildesigner-jailgames/jaildoctors_dilemma
arreglos d'estil en Screen
This commit is contained in:
@@ -214,7 +214,7 @@ void LoadingScreen::run()
|
|||||||
|
|
||||||
// Limpia la pantalla
|
// Limpia la pantalla
|
||||||
Screen::get()->start();
|
Screen::get()->start();
|
||||||
Screen::get()->clear();
|
Screen::get()->clearRenderer();
|
||||||
Screen::get()->render();
|
Screen::get()->render();
|
||||||
|
|
||||||
while (options.section.section == Section::LOADING_SCREEN)
|
while (options.section.section == Section::LOADING_SCREEN)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
#include <SDL2/SDL_events.h> // Para SDL_DISABLE, SDL_ENABLE
|
#include <SDL2/SDL_events.h> // Para SDL_DISABLE, SDL_ENABLE
|
||||||
#include <SDL2/SDL_mouse.h> // Para SDL_ShowCursor
|
#include <SDL2/SDL_mouse.h> // Para SDL_ShowCursor
|
||||||
#include <SDL2/SDL_pixels.h> // Para SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORM...
|
#include <SDL2/SDL_pixels.h> // Para SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORM...
|
||||||
#include <SDL2/SDL_timer.h> // Para SDL_GetTicks
|
#include <SDL2/SDL_timer.h> // Para SDL_GetTicks
|
||||||
#include <ctype.h> // Para toupper
|
#include <ctype.h> // Para toupper
|
||||||
#include <algorithm> // Para max, min, transform
|
#include <algorithm> // Para max, min, transform
|
||||||
#include <fstream> // Para basic_ostream, operator<<, endl, basic_...
|
#include <fstream> // Para basic_ostream, operator<<, endl, basic_...
|
||||||
@@ -129,16 +129,13 @@ Screen::~Screen()
|
|||||||
SDL_DestroyTexture(shaders_texture_);
|
SDL_DestroyTexture(shaders_texture_);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Limpia la pantalla
|
// Limpia el renderer
|
||||||
void Screen::clear(Color color)
|
void Screen::clearRenderer(Color color)
|
||||||
{
|
{
|
||||||
SDL_SetRenderDrawColor(renderer_, color.r, color.g, color.b, 0xFF);
|
SDL_SetRenderDrawColor(renderer_, color.r, color.g, color.b, 0xFF);
|
||||||
SDL_RenderClear(renderer_);
|
SDL_RenderClear(renderer_);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Limpia la pantalla
|
|
||||||
void Screen::clearSurface(Uint8 index) { game_surface_->clear(index); }
|
|
||||||
|
|
||||||
// Prepara para empezar a dibujar en la textura de juego
|
// Prepara para empezar a dibujar en la textura de juego
|
||||||
void Screen::start()
|
void Screen::start()
|
||||||
{
|
{
|
||||||
@@ -162,10 +159,10 @@ void Screen::render()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Establece el modo de video
|
// Establece el modo de video
|
||||||
void Screen::setVideoMode(int video_mode)
|
void Screen::setVideoMode(int mode)
|
||||||
{
|
{
|
||||||
// Actualiza las opciones
|
// Actualiza las opciones
|
||||||
options.video.mode = video_mode;
|
options.video.mode = mode;
|
||||||
|
|
||||||
// Mostrar u ocultar el cursor según el modo
|
// Mostrar u ocultar el cursor según el modo
|
||||||
SDL_ShowCursor(options.video.mode == 0 ? SDL_ENABLE : SDL_DISABLE);
|
SDL_ShowCursor(options.video.mode == 0 ? SDL_ENABLE : SDL_DISABLE);
|
||||||
@@ -232,18 +229,6 @@ void Screen::setBorderColor(Uint8 color)
|
|||||||
border_surface_->clear(border_color_);
|
border_surface_->clear(border_color_);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Cambia el tipo de mezcla
|
|
||||||
void Screen::setBlendMode(SDL_BlendMode blendMode) { SDL_SetRenderDrawBlendMode(renderer_, blendMode); }
|
|
||||||
|
|
||||||
// Establece el tamaño del borde
|
|
||||||
void Screen::setBorderWidth(int s) { options.video.border.width = s; }
|
|
||||||
|
|
||||||
// Establece el tamaño del borde
|
|
||||||
void Screen::setBorderHeight(int s) { options.video.border.height = s; }
|
|
||||||
|
|
||||||
// Establece si se ha de ver el borde en el modo ventana
|
|
||||||
void Screen::setBorderEnabled(bool value) { options.video.border.enabled = value; }
|
|
||||||
|
|
||||||
// Cambia entre borde visible y no visible
|
// Cambia entre borde visible y no visible
|
||||||
void Screen::toggleBorder()
|
void Screen::toggleBorder()
|
||||||
{
|
{
|
||||||
@@ -276,12 +261,6 @@ void Screen::update()
|
|||||||
Mouse::updateCursorVisibility();
|
Mouse::updateCursorVisibility();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Muestra la ventana
|
|
||||||
void Screen::show() { SDL_ShowWindow(window_); }
|
|
||||||
|
|
||||||
// Oculta la ventana
|
|
||||||
void Screen::hide() { SDL_HideWindow(window_); }
|
|
||||||
|
|
||||||
// Calcula el tamaño de la ventana
|
// Calcula el tamaño de la ventana
|
||||||
void Screen::adjustWindowSize()
|
void Screen::adjustWindowSize()
|
||||||
{
|
{
|
||||||
@@ -507,4 +486,33 @@ void Screen::renderInfo()
|
|||||||
// Resolution
|
// Resolution
|
||||||
text->writeColored(0, 0, info_resolution_, color);
|
text->writeColored(0, 0, info_resolution_, color);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Limpia la game_surface_
|
||||||
|
void Screen::clearSurface(Uint8 index) { game_surface_->clear(index); }
|
||||||
|
|
||||||
|
// Establece el tamaño del borde
|
||||||
|
void Screen::setBorderWidth(int width) { options.video.border.width = width; }
|
||||||
|
|
||||||
|
// Establece el tamaño del borde
|
||||||
|
void Screen::setBorderHeight(int height) { options.video.border.height = height; }
|
||||||
|
|
||||||
|
// Establece si se ha de ver el borde en el modo ventana
|
||||||
|
void Screen::setBorderEnabled(bool value) { options.video.border.enabled = value; }
|
||||||
|
|
||||||
|
// Muestra la ventana
|
||||||
|
void Screen::show() { SDL_ShowWindow(window_); }
|
||||||
|
|
||||||
|
// Oculta la ventana
|
||||||
|
void Screen::hide() { SDL_HideWindow(window_); }
|
||||||
|
|
||||||
|
// Establece la visibilidad de las notificaciones
|
||||||
|
void Screen::setNotificationsEnabled(bool value) { notifications_enabled_ = value; }
|
||||||
|
|
||||||
|
// Activa / desactiva la información de debug
|
||||||
|
void Screen::toggleDebugInfo() { show_debug_info_ = !show_debug_info_; }
|
||||||
|
|
||||||
|
// Getters
|
||||||
|
SDL_Renderer *Screen::getRenderer() { return renderer_; }
|
||||||
|
std::shared_ptr<Surface> Screen::getRendererSurface() { return (*renderer_surface_); }
|
||||||
|
std::shared_ptr<Surface> Screen::getBorderSurface() { return border_surface_; }
|
||||||
@@ -10,7 +10,7 @@
|
|||||||
#include <string> // Para string
|
#include <string> // Para string
|
||||||
#include <vector> // Para vector
|
#include <vector> // Para vector
|
||||||
#include "utils.h" // Para Color
|
#include "utils.h" // Para Color
|
||||||
class Surface;
|
struct Surface;
|
||||||
|
|
||||||
// Tipos de filtro
|
// Tipos de filtro
|
||||||
enum class ScreenFilter : Uint32
|
enum class ScreenFilter : Uint32
|
||||||
@@ -136,9 +136,11 @@ public:
|
|||||||
// [SINGLETON] Con este método obtenemos el objeto y podemos trabajar con él
|
// [SINGLETON] Con este método obtenemos el objeto y podemos trabajar con él
|
||||||
static Screen *get();
|
static Screen *get();
|
||||||
|
|
||||||
// Limpia la pantalla
|
// Limpia el renderer
|
||||||
void clear(Color color = {0x00, 0x00, 0x00});
|
void clearRenderer(Color color = {0x00, 0x00, 0x00});
|
||||||
void clearSurface(Uint8 index = 0);
|
|
||||||
|
// Limpia la game_surface_
|
||||||
|
void clearSurface(Uint8 index);
|
||||||
|
|
||||||
// Prepara para empezar a dibujar en la textura de juego
|
// Prepara para empezar a dibujar en la textura de juego
|
||||||
void start();
|
void start();
|
||||||
@@ -150,7 +152,7 @@ public:
|
|||||||
void update();
|
void update();
|
||||||
|
|
||||||
// Establece el modo de video
|
// Establece el modo de video
|
||||||
void setVideoMode(int videoMode);
|
void setVideoMode(int mode);
|
||||||
|
|
||||||
// Camibia entre pantalla completa y ventana
|
// Camibia entre pantalla completa y ventana
|
||||||
void toggleVideoMode();
|
void toggleVideoMode();
|
||||||
@@ -164,12 +166,11 @@ public:
|
|||||||
// Cambia el color del borde
|
// Cambia el color del borde
|
||||||
void setBorderColor(Uint8 color);
|
void setBorderColor(Uint8 color);
|
||||||
|
|
||||||
// Cambia el tipo de mezcla
|
// Establece el tamaño del borde
|
||||||
void setBlendMode(SDL_BlendMode blendMode);
|
void setBorderWidth(int width);
|
||||||
|
|
||||||
// Establece el tamaño del borde
|
// Establece el tamaño del borde
|
||||||
void setBorderWidth(int s);
|
void setBorderHeight(int height);
|
||||||
void setBorderHeight(int s);
|
|
||||||
|
|
||||||
// Establece si se ha de ver el borde en el modo ventana
|
// Establece si se ha de ver el borde en el modo ventana
|
||||||
void setBorderEnabled(bool value);
|
void setBorderEnabled(bool value);
|
||||||
@@ -192,11 +193,6 @@ public:
|
|||||||
// Establece el renderizador para las surfaces
|
// Establece el renderizador para las surfaces
|
||||||
void setRendererSurface(std::shared_ptr<Surface> surface = nullptr);
|
void setRendererSurface(std::shared_ptr<Surface> surface = nullptr);
|
||||||
|
|
||||||
// Getters
|
|
||||||
SDL_Renderer *getRenderer() { return renderer_; }
|
|
||||||
std::shared_ptr<Surface> getRendererSurface() { return (*renderer_surface_); }
|
|
||||||
std::shared_ptr<Surface> getBorderSurface() { return border_surface_; }
|
|
||||||
|
|
||||||
// Cambia la paleta
|
// Cambia la paleta
|
||||||
void nextPalette();
|
void nextPalette();
|
||||||
void previousPalette();
|
void previousPalette();
|
||||||
@@ -205,8 +201,13 @@ public:
|
|||||||
void setPalete();
|
void setPalete();
|
||||||
|
|
||||||
// Establece la visibilidad de las notificaciones
|
// Establece la visibilidad de las notificaciones
|
||||||
void setNotificationsEnabled(bool value) { notifications_enabled_ = value; }
|
void setNotificationsEnabled(bool value);
|
||||||
|
|
||||||
// Activa / desactiva la información de debug
|
// Activa o desactiva la información de debug
|
||||||
void toggleDebugInfo() { show_debug_info_ = !show_debug_info_; }
|
void toggleDebugInfo();
|
||||||
|
|
||||||
|
// Getters
|
||||||
|
SDL_Renderer *getRenderer();
|
||||||
|
std::shared_ptr<Surface> getRendererSurface();
|
||||||
|
std::shared_ptr<Surface> getBorderSurface();
|
||||||
};
|
};
|
||||||
Reference in New Issue
Block a user