From 89cea1c93ea7b851dce53e33eb328cd9546372d8 Mon Sep 17 00:00:00 2001 From: Sergio Valor Date: Fri, 26 Jul 2024 08:52:15 +0200 Subject: [PATCH] Afegides paletes a la classe Text --- data/font/smb2.gif | Bin 0 -> 1153 bytes data/font/smb2.png | Bin 833 -> 0 bytes data/font/smb2_pal1.gif | Bin 0 -> 84 bytes source/common/text.cpp | 12 ++++++++++++ source/common/text.h | 6 ++++++ source/director.cpp | 3 ++- source/game.cpp | 2 +- source/hiscore_table.cpp | 2 +- source/instructions.cpp | 2 +- source/title.cpp | 4 +++- 10 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 data/font/smb2.gif delete mode 100644 data/font/smb2.png create mode 100644 data/font/smb2_pal1.gif diff --git a/data/font/smb2.gif b/data/font/smb2.gif new file mode 100644 index 0000000000000000000000000000000000000000..96ae38a4e65d68380a4e4d1a26c437a79bfcbe95 GIT binary patch literal 1153 zcmV-{1b+KRNk%v~VR!&I0HOc@00030|Lgz%>;M1j|Nra%|Lgz%>;M1jA^8Le3IG5A zEC2ui0C)g6000C32)caU2R!xWiWf_4A@h{>jbv$_q@gnFseotK=LMWG9%pP~$=s6?tJ0Rcs? z0J03Q3$(Mgudui$xV@CQV8Fq}#>d09$QvOJBF+%d&C<=&7S0pc(%Ko+!5t?!HZ(#z zF61&p<>Tr;KQ%z?@$l(7?e0cP`cP6^T>Vq5>~j*3;D>z$t0WA#rC}0-Y3Rsla|TXC zixD$coMQ(64aJRa-h>o638M)^g%+Vi34kRZM1dZ)gqd>D%$GF>HIjK#Co5HwGR9dUl&D6IFlYa+L|HLr)1ks-DwRtLWLUCn~h4C{IzTW(Ahk ztgNs9ZIPwbSYerk7FqszWnh0`DQMta5Jo6rV9bQjmtA)i2AE!cRWO)c7E&nUhk$8N zm^ksULzxgOO2!yuoOLE6iq zbV_?n+2({x&j^+wHzjfiVug5dh>l_}7SY%Y@}lJ8hHEIs|4&a&rjrm}c7Gf&f~2;8qM{T9(3;0QlCa9EX9} ztrmu8B4M)5I#^+!T+0aK?f!uFlUg?{+8F4MqM_YO{C6>LJo249frsE`B#VV%R>8zu`B#_OvE_)n!L^Px#5>QN3MF0Q*JFvuJw#13N#IeG}|NraPb-hdg000JbQchC<|NsC0|9W}g{r~_1 z%Sl8*R9J<@m<@Y_APj_~mH+>jSB2y*2e>b**(wkMY5VZz*v!I8DYdbqf{C z`z;t=!MHh>ISzi})&uKwoc3imw9CRB59#A#ht6-bsOvsyICR3{0At0qsuy`OB6N-w z9b^s-u0Adh%!?q?iy&Z6f*R|@&527qtw>87Yhs-rBu<6#Fo64h_)i0u(i=s3-!g>&6ClFi^)PQOW8aH?ek8*eagrNB%Q=Y4sF526D7 zG_l!fViIoV+LxA4|peywDC;wIcw`D#vvmdpjqfg&^@5uWFb2=g&#+d*i$Eh=l|GE8KLxPJ)#naB=}@9grrFb_QlP4n^lwbw&nj0C|=cIsgCw literal 0 HcmV?d00001 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"));