Muntat a c++14 per a make_unique
Mes autos, const i constexpr perl codi Ara la classe Screen es un poc pitjor
This commit is contained in:
@@ -94,13 +94,13 @@ void OnScreenHelp::fillTexture()
|
||||
SDL_SetRenderTarget(Screen::get()->getRenderer(), texture);
|
||||
|
||||
// Crea el objeto para el texto
|
||||
std::unique_ptr<Text> text(new Text(Asset::get()->get("8bithud.png"), Asset::get()->get("8bithud.txt"), Screen::get()->getRenderer()));
|
||||
auto text = std::make_unique<Text>(Asset::get()->get("8bithud.png"), Asset::get()->get("8bithud.txt"), Screen::get()->getRenderer());
|
||||
|
||||
// Crea la textura con los gráficos
|
||||
std::unique_ptr<Texture> controllersTexture(new Texture(Screen::get()->getRenderer(), Asset::get()->get("controllers.png")));
|
||||
auto controllersTexture = std::make_unique<Texture>(Screen::get()->getRenderer(), Asset::get()->get("controllers.png"));
|
||||
|
||||
// Crea el sprite para dibujar los gráficos
|
||||
std::unique_ptr<Sprite> sprite(new Sprite({0, 0, 16, 16}, controllersTexture.get()));
|
||||
auto sprite = std::make_unique<Sprite>((SDL_Rect){0, 0, 16, 16}, controllersTexture.get());
|
||||
|
||||
// Borra la textura
|
||||
SDL_SetRenderDrawColor(Screen::get()->getRenderer(), 0, 0, 0, 0);
|
||||
@@ -140,11 +140,11 @@ void OnScreenHelp::fillTexture()
|
||||
// Define el ancho y alto de la textura
|
||||
void OnScreenHelp::setSize()
|
||||
{
|
||||
const int textSize = getLargestStringSize();
|
||||
const int width = PADDING.x + DESP.x + textSize + PADDING.x;
|
||||
const int height = PADDING.y + (7 * 18) + PADDING.y;
|
||||
const int x = 0;
|
||||
const int y = (param.game.height - height) / 2;
|
||||
const auto textSize = getLargestStringSize();
|
||||
const auto width = PADDING.x + DESP.x + textSize + PADDING.x;
|
||||
const auto height = PADDING.y + (7 * 18) + PADDING.y;
|
||||
const auto x = 0;
|
||||
const auto y = (param.game.height - height) / 2;
|
||||
|
||||
dest = (SDL_Rect){x, y, width, height};
|
||||
|
||||
@@ -167,14 +167,14 @@ void OnScreenHelp::toggleState()
|
||||
}
|
||||
|
||||
// Calcula la longitud en pixels del texto más largo
|
||||
int OnScreenHelp::getLargestStringSize() const
|
||||
auto OnScreenHelp::getLargestStringSize() -> int const
|
||||
{
|
||||
std::unique_ptr<Text> text(new Text(Asset::get()->get("8bithud.png"), Asset::get()->get("8bithud.txt"), Screen::get()->getRenderer()));
|
||||
int size = 0;
|
||||
auto text = std::make_unique<Text>(Asset::get()->get("8bithud.png"), Asset::get()->get("8bithud.txt"), Screen::get()->getRenderer());
|
||||
auto size = 0;
|
||||
|
||||
for (int i = 107; i <= 113; ++i)
|
||||
{
|
||||
const int textSize = text->lenght(lang::getText(i));
|
||||
const auto textSize = text->lenght(lang::getText(i));
|
||||
size = textSize > size ? textSize : size;
|
||||
}
|
||||
|
||||
@@ -196,14 +196,19 @@ void OnScreenHelp::updatePosition()
|
||||
switch (state)
|
||||
{
|
||||
case OnScreenHelpStatus::hidden:
|
||||
{
|
||||
index = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
case OnScreenHelpStatus::showing:
|
||||
{
|
||||
index = path.size() - 1;
|
||||
break;
|
||||
}
|
||||
|
||||
case OnScreenHelpStatus::exitting:
|
||||
{
|
||||
if (index > 0)
|
||||
{
|
||||
index--;
|
||||
@@ -213,8 +218,10 @@ void OnScreenHelp::updatePosition()
|
||||
state = OnScreenHelpStatus::hidden;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case OnScreenHelpStatus::entering:
|
||||
{
|
||||
if (index < (int)path.size() - 1)
|
||||
{
|
||||
index++;
|
||||
@@ -224,6 +231,7 @@ void OnScreenHelp::updatePosition()
|
||||
state = OnScreenHelpStatus::showing;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user