diff --git a/data/font/smb2.gif b/data/font/smb2.gif new file mode 100644 index 0000000..96ae38a Binary files /dev/null and b/data/font/smb2.gif differ diff --git a/data/font/smb2.png b/data/font/smb2.png deleted file mode 100644 index 5f3d1ca..0000000 Binary files a/data/font/smb2.png and /dev/null differ diff --git a/data/font/smb2_pal1.gif b/data/font/smb2_pal1.gif new file mode 100644 index 0000000..496c4a2 Binary files /dev/null and b/data/font/smb2_pal1.gif differ diff --git a/source/common/text.cpp b/source/common/text.cpp index 4563b2a..e273d96 100644 --- a/source/common/text.cpp +++ b/source/common/text.cpp @@ -272,4 +272,16 @@ void Text::reLoadTexture() void Text::setFixedWidth(bool value) { fixedWidth = value; +} + +// Carga una paleta de colores para el texto +void Text::addPalette(std::string path) +{ + texture->addPalette(path); +} + +// Establece una paleta de colores para el texto +void Text::setPalette(int index) +{ + texture->setPalette(index); } \ No newline at end of file diff --git a/source/common/text.h b/source/common/text.h index 87bccb0..34887a4 100644 --- a/source/common/text.h +++ b/source/common/text.h @@ -77,6 +77,12 @@ public: // Establece si se usa un tamaƱo fijo de letra void setFixedWidth(bool value); + + // Carga una paleta de colores para el texto + void addPalette(std::string path); + + // Establece una paleta de colores para el texto + void setPalette(int index); }; #endif diff --git a/source/director.cpp b/source/director.cpp index 740a847..739776b 100644 --- a/source/director.cpp +++ b/source/director.cpp @@ -392,7 +392,8 @@ bool Director::setFileList() asset->add(prefix + "/data/font/nokia_big2.txt", t_font); asset->add(prefix + "/data/font/smb2_big.png", t_font); asset->add(prefix + "/data/font/smb2_big.txt", t_font); - asset->add(prefix + "/data/font/smb2.png", t_font); + asset->add(prefix + "/data/font/smb2.gif", t_font); + asset->add(prefix + "/data/font/smb2_pal1.gif", t_font); asset->add(prefix + "/data/font/smb2.txt", t_font); // Textos diff --git a/source/game.cpp b/source/game.cpp index ba63ae2..df4c40f 100644 --- a/source/game.cpp +++ b/source/game.cpp @@ -534,7 +534,7 @@ void Game::loadMedia() itemAnimations.push_back(item6Animation); // Texto - text = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer); + text = new Text(asset->get("smb2.gif"), asset->get("smb2.txt"), renderer); textBig = new Text(asset->get("smb2_big.png"), asset->get("smb2_big.txt"), renderer); textNokia2 = new Text(asset->get("nokia2.png"), asset->get("nokia2.txt"), renderer); textNokiaBig2 = new Text(asset->get("nokia_big2.png"), asset->get("nokia_big2.txt"), renderer); diff --git a/source/hiscore_table.cpp b/source/hiscore_table.cpp index 7c6efb9..d554976 100644 --- a/source/hiscore_table.cpp +++ b/source/hiscore_table.cpp @@ -18,7 +18,7 @@ HiScoreTable::HiScoreTable(SDL_Renderer *renderer, Screen *screen, Asset *asset, eventHandler = new SDL_Event(); fade = new Fade(renderer, param); background = new Background(renderer, screen, asset, param); - text = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer); + text = new Text(asset->get("smb2.gif"), asset->get("smb2.txt"), renderer); // Crea un backbuffer para el renderizador backbuffer = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_TARGET, param->gameWidth, param->gameHeight); diff --git a/source/instructions.cpp b/source/instructions.cpp index d2671b4..4ec962d 100644 --- a/source/instructions.cpp +++ b/source/instructions.cpp @@ -15,7 +15,7 @@ Instructions::Instructions(SDL_Renderer *renderer, Screen *screen, Asset *asset, // Crea objetos eventHandler = new SDL_Event(); - text = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer); + text = new Text(asset->get("smb2.gif"), asset->get("smb2.txt"), renderer); tiledbg = new Tiledbg(renderer, screen, asset, {0, 0, param->gameWidth, param->gameHeight}, TILED_MODE_STATIC); fade = new Fade(renderer, param); diff --git a/source/title.cpp b/source/title.cpp index 567913a..33551f1 100644 --- a/source/title.cpp +++ b/source/title.cpp @@ -18,7 +18,9 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Input *input, Asset *asset, eventHandler = new SDL_Event(); fade = new Fade(renderer, param); - text1 = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer); + text1 = new Text(asset->get("smb2.gif"), asset->get("smb2.txt"), renderer); + text1->addPalette(asset->get("smb2_pal1.gif")); + text1->setPalette(1); text2 = new Text(asset->get("8bithud.png"), asset->get("8bithud.txt"), renderer); miniLogoTexture = new Texture(renderer, asset->get("logo_jailgames_mini.png"));