From 1b30bccb47a56fc4ac6be5a2c2eed2951937697c Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Tue, 2 Aug 2022 12:18:17 -0400 Subject: [PATCH] (56/654) --- data/tilesets/graphics.inc | 4 + graphics/credits/the_end_copyright_fr.bin | Bin 0 -> 1280 bytes graphics/credits/the_end_copyright_fr.png | Bin 0 -> 314 bytes include/config.h | 2 +- include/graphics.h | 50 ++++++++++ src/berry_blender.c | 101 ++++++++++++++++++++- src/berry_fix_program.c | 87 ++++++++++++++---- src/berry_tag_screen.c | 42 ++++++++- src/credits.c | 38 +++++++- src/graphics.c | 106 ++++++++++++++++++++++ 10 files changed, 408 insertions(+), 22 deletions(-) create mode 100644 graphics/credits/the_end_copyright_fr.bin create mode 100644 graphics/credits/the_end_copyright_fr.png diff --git a/data/tilesets/graphics.inc b/data/tilesets/graphics.inc index c85bd249e1..cda2af4547 100644 --- a/data/tilesets/graphics.inc +++ b/data/tilesets/graphics.inc @@ -366,6 +366,7 @@ gTilesetPalettes_InsideBuilding:: .incbin "data/tilesets/primary/building/palettes/14.gbapal" .incbin "data/tilesets/primary/building/palettes/15.gbapal" +.ifdef ENGLISH .align 2 gTilesetTiles_Shop:: .incbin "data/tilesets/secondary/shop/tiles.4bpp.lz" @@ -388,6 +389,7 @@ gTilesetPalettes_Shop:: .incbin "data/tilesets/secondary/shop/palettes/13.gbapal" .incbin "data/tilesets/secondary/shop/palettes/14.gbapal" .incbin "data/tilesets/secondary/shop/palettes/15.gbapal" +.endif .align 2 gTilesetTiles_PokemonCenter:: @@ -1408,6 +1410,7 @@ gTilesetPalettes_BattlePalace:: .incbin "data/tilesets/secondary/battle_palace/palettes/14.gbapal" .incbin "data/tilesets/secondary/battle_palace/palettes/15.gbapal" +.ifdef ENGLISH .align 2 gTilesetTiles_BattleDome:: .incbin "data/tilesets/secondary/battle_dome/tiles.4bpp.lz" @@ -1430,6 +1433,7 @@ gTilesetPalettes_BattleDome:: .incbin "data/tilesets/secondary/battle_dome/palettes/13.gbapal" .incbin "data/tilesets/secondary/battle_dome/palettes/14.gbapal" .incbin "data/tilesets/secondary/battle_dome/palettes/15.gbapal" +.endif .align 2 gTilesetTiles_BattleFactory:: diff --git a/graphics/credits/the_end_copyright_fr.bin b/graphics/credits/the_end_copyright_fr.bin new file mode 100644 index 0000000000000000000000000000000000000000..58d461ed45be23966143f849324a4306b17e43a8 GIT binary patch literal 1280 zcmeIwHx2?Z5J1rn7+7E%a%_l8YRIu6$NQg$S!oY2GR-34*ZNzQJ@8+ldjVsAqX4+{pJo*g8kP%~5KViy@xmd7d x#hQ)SvSY964;(ph78kDExbqNCUc6QP&usF)_?s1$-jNZt;RXY3)A~)&e*i{c44?o2 literal 0 HcmV?d00001 diff --git a/graphics/credits/the_end_copyright_fr.png b/graphics/credits/the_end_copyright_fr.png new file mode 100644 index 0000000000000000000000000000000000000000..e74c5d937de4f6daa533b1edcc0b7f59bf749a1c GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^6M$HQg&9ab{+KrzNErn9gt!9f|Ns9lS+eB+v+Dmr znm{goP^Fj90#tF-)5S5wqjT*QL%tRT5!XNsT{Yp;njG0_tZPn+Zea7`KKzFzX%3_4 znOa%a-Xd1%JnBO=pB(?3gp_K!DK#Lydq5%N4vG*_w)S fkMzyzul3(IvrA0fZ*l!rke5AO{an^LB{Ts5^loadGfxState++; break; case 2: @@ -2850,12 +2903,20 @@ static void CB2_CheckPlayAgainLink(void) case 1: sBerryBlender->gameEndState = 3; StringCopy(gStringVar4, gLinkPlayers[sBerryBlender->canceledPlayerId].name); + #if ENGLISH StringAppend(gStringVar4, sText_ApostropheSPokeblockCaseIsFull); + #elif FRENCH + StringAppendWithPlaceholder(gStringVar4, sText_ApostropheSPokeblockCaseIsFull, gStringVar4); + #endif break; case 2: sBerryBlender->gameEndState++; StringCopy(gStringVar4, gLinkPlayers[sBerryBlender->canceledPlayerId].name); + #if ENGLISH StringAppend(gStringVar4, sText_HasNoBerriesToPut); + #elif FRENCH + StringAppendWithPlaceholder(gStringVar4, sText_HasNoBerriesToPut, gStringVar4); + #endif break; case 3: if (Blender_PrintText(&sBerryBlender->textState, gStringVar4, GetPlayerTextSpeedDelay())) @@ -3514,13 +3575,24 @@ static bool8 PrintBlendingResults(void) StringCopy(sBerryBlender->stringVar, sBerryBlender->blendedBerries[place].name); ConvertInternationalString(sBerryBlender->stringVar, gLinkPlayers[place].language); + #if ENGLISH StringAppend(sBerryBlender->stringVar, sText_SpaceBerry); + #elif FRENCH + StringAppendWithPlaceholder(sBerryBlender->stringVar, sText_SpaceBerry, sBerryBlender->stringVar); + #endif Blender_AddTextPrinter(5, sBerryBlender->stringVar, 0x54, yPos, TEXT_SKIP_DRAW, 3); } Blender_AddTextPrinter(5, sText_MaximumSpeed, 0, 0x51, TEXT_SKIP_DRAW, 3); ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->maxRPM / 100, STR_CONV_MODE_RIGHT_ALIGN, 3); + #if ENGLISH StringAppend(sBerryBlender->stringVar, sText_Dot); + #elif FRENCH + { + u8 comma[] = _(","); + StringAppend(sBerryBlender->stringVar, comma); + } + #endif ConvertIntToDecimalStringN(text, sBerryBlender->maxRPM % 100, STR_CONV_MODE_LEADING_ZEROS, 2); StringAppend(sBerryBlender->stringVar, text); @@ -3592,6 +3664,10 @@ static bool8 PrintBlendingResults(void) return FALSE; } +#if FRENCH +static const u8 sUnused2[] = {0x03, 0x03, 0x03, 0x03, 0x02}; +#endif + static void PrintMadePokeblockString(struct Pokeblock *pokeblock, u8 *dst) { u8 text[12]; @@ -3599,7 +3675,11 @@ static void PrintMadePokeblockString(struct Pokeblock *pokeblock, u8 *dst) dst[0] = EOS; StringCopy(dst, gPokeblockNames[pokeblock->color]); +#if ENGLISH StringAppend(dst, sText_WasMade); +#elif FRENCH + StringAppendWithPlaceholder(dst, sText_WasMade, dst); +#endif StringAppend(dst, sText_NewLine); flavorLvl = GetHighestPokeblocksFlavorLevel(pokeblock); @@ -3759,10 +3839,24 @@ void ShowBerryBlenderRecordWindow(void) { s32 i; s32 xPos, yPos; +#if ENGLISH struct WindowTemplate winTemplate; u8 text[32]; winTemplate = sBlenderRecordWindowTemplate; +#elif FRENCH + struct WindowTemplate winTemplate = + { + .bg = 0, + .tilemapLeft = 6, + .tilemapTop = 4, + .width = 18, + .height = 11, + .paletteNum = 15, + .baseBlock = 8 + }; + u8 text[32]; +#endif gRecordsWindowId = AddWindow(&winTemplate); DrawStdWindowFrame(gRecordsWindowId, FALSE); FillWindowPixelBuffer(gRecordsWindowId, PIXEL_FILL(1)); @@ -3779,7 +3873,12 @@ void ShowBerryBlenderRecordWindow(void) record = gSaveBlock1Ptr->berryBlenderRecords[i]; txtPtr = ConvertIntToDecimalStringN(text, record / 100, STR_CONV_MODE_RIGHT_ALIGN, 3); + #if ENGLISH txtPtr = StringAppend(txtPtr, sText_Dot); + #elif FRENCH + *txtPtr++ = CHAR_COMMA; + *txtPtr = EOS; + #endif txtPtr = ConvertIntToDecimalStringN(txtPtr, record % 100, STR_CONV_MODE_LEADING_ZEROS, 2); txtPtr = StringAppend(txtPtr, sText_RPM); diff --git a/src/berry_fix_program.c b/src/berry_fix_program.c index e8c4bc7e68..12de4af67a 100644 --- a/src/berry_fix_program.c +++ b/src/berry_fix_program.c @@ -27,27 +27,78 @@ static int BerryFix_TrySetScene(int); static void BerryFix_SetScene(int); static void BerryFix_HideScene(void); +#if ENGLISH static const u8 sText_BerryProgramUpdate[] = _("Berry Program Update"); static const u8 sText_RubySapphire[] = _("Ruby/Sapphire"); static const u8 sText_Emerald[] = _("Emerald"); -static const u8 sText_BerryProgramWillBeUpdatedPressA[] = _("The Berry Program on your POKéMON\n" - "Ruby/Sapphire Game Pak will be updated.\n" - "{COLOR RED}{SHADOW LIGHT_RED}Press the A Button."); -static const u8 sText_EnsureGBAConnectionMatches[] = _("Please ensure the connection of your\n" - "Game Boy Advance system matches this.\n" - "{COLOR RED}{SHADOW LIGHT_RED}YES: Press the A Button.\n" - "NO: Turn off the power and try again."); -static const u8 sText_TurnOffPowerHoldingStartSelect[] = _("Please turn on the power of POKéMON\n" - "Ruby/Sapphire while holding START and\n" - "SELECT simultaneously. Then, ensure\n" - "the picture above appears."); -static const u8 sText_TransmittingPleaseWait[] = _("Transmitting. Please wait.\n" - "{COLOR RED}{SHADOW LIGHT_RED}Please do not turn off the power or\n" - "unplug the Game Boy Advance Game\nLink Cable."); -static const u8 sText_PleaseFollowInstructionsOnScreen[] = _("Please follow the instructions on your\n" - "POKéMON Ruby/Sapphire screen."); -static const u8 sText_TransmissionFailureTryAgain[] = _("Transmission failure.\n" - "{COLOR RED}{SHADOW LIGHT_RED}Please try again."); +static const u8 sText_BerryProgramWillBeUpdatedPressA[] = _( + "The Berry Program on your POKéMON\n" + "Ruby/Sapphire Game Pak will be updated.\n" + "{COLOR RED}{SHADOW LIGHT_RED}Press the A Button."); + +static const u8 sText_EnsureGBAConnectionMatches[] = _( + "Please ensure the connection of your\n" + "Game Boy Advance system matches this.\n" + "{COLOR RED}{SHADOW LIGHT_RED}YES: Press the A Button.\n" + "NO: Turn off the power and try again."); + +static const u8 sText_TurnOffPowerHoldingStartSelect[] = _( + "Please turn on the power of POKéMON\n" + "Ruby/Sapphire while holding START and\n" + "SELECT simultaneously. Then, ensure\n" + "the picture above appears."); + +static const u8 sText_TransmittingPleaseWait[] = _( + "Transmitting. Please wait.\n" + "{COLOR RED}{SHADOW LIGHT_RED}Please do not turn off the power or\n" + "unplug the Game Boy Advance Game\nLink Cable."); + +static const u8 sText_PleaseFollowInstructionsOnScreen[] = _( + "Please follow the instructions on your\n" + "POKéMON Ruby/Sapphire screen."); + +static const u8 sText_TransmissionFailureTryAgain[] = _( + "Transmission failure.\n" + "{COLOR RED}{SHADOW LIGHT_RED}Please try again."); + +#elif FRENCH + +static const u8 sText_BerryProgramUpdate[] = _("Mise à jour du Programme Baie"); +static const u8 sText_RubySapphire[] = _("Rubis/Saphir"); +static const u8 sText_Emerald[] = _("Emeraude"); +static const u8 sText_BerryProgramWillBeUpdatedPressA[] = _( + "Le Programme Baie sur votre\n" + "cartouche Rubis/Saphir va être\n" + "mis à jour.\n" + "{COLOR 4}{SHADOW 5}Appuyez sur le bouton A."); + +static const u8 sText_EnsureGBAConnectionMatches[] = _( + "Veuillez vérifier que vos Game Boy\n" + "Advance sont connectées correctement.\n" + "{COLOR 4}{SHADOW 5}Oui: Bouton A.\n" + "Non: Eteindre et recommencer."); + +static const u8 sText_TurnOffPowerHoldingStartSelect[] = _( + "Veuillez allumer la console POKéMON\n" + "Rubis/Saphir en maintenant enfoncés\n" + "simultanément START et SELECT.\n" + "Assurez-vous que ce logo apparaît."); + +static const u8 sText_TransmittingPleaseWait[] = _( + "Transmission en cours…\n" + "{COLOR 4}{SHADOW 5}N’éteignez pas votre Game Boy\n" + "Advance et ne retirez pas le câble\n" + "Game Boy Advance Game Link."); + +static const u8 sText_PleaseFollowInstructionsOnScreen[] = _( + "Veuillez suivre les instructions sur\n" + "l’écran de POKéMON Rubis/Saphir."); + +static const u8 sText_TransmissionFailureTryAgain[] = _( + "Echec de la transmission.\n" + "{COLOR 4}{SHADOW 5}Veuillez réessayer."); + +#endif static const struct BgTemplate sBerryFixBgTemplates[] = { { diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c index f683c73f45..fc4cedf361 100644 --- a/src/berry_tag_screen.c +++ b/src/berry_tag_screen.c @@ -109,7 +109,11 @@ static const struct WindowTemplate sWindowTemplates[] = .width = 8, .height = 2, .paletteNum = 15, + #if ENGLISH .baseBlock = 69, + #elif FRENCH + .baseBlock = 72, + #endif }, { // WIN_SIZE_FIRM .bg = 1, @@ -118,16 +122,29 @@ static const struct WindowTemplate sWindowTemplates[] = .width = 18, .height = 4, .paletteNum = 15, + #if ENGLISH .baseBlock = 85, + #elif FRENCH + .baseBlock = 88, + #endif }, { // WIN_DESC .bg = 1, + #if ENGLISH .tilemapLeft = 4, .tilemapTop = 14, .width = 25, .height = 4, .paletteNum = 15, .baseBlock = 157, + #elif FRENCH + .tilemapLeft = 3, + .tilemapTop = 14, + .width = 27, + .height = 4, + .paletteNum = 15, + .baseBlock = 160, + #endif }, { // WIN_BERRY_TAG .bg = 0, @@ -136,7 +153,11 @@ static const struct WindowTemplate sWindowTemplates[] = .width = 8, .height = 2, .paletteNum = 15, + #if ENGLISH .baseBlock = 257, + #elif FRENCH + .baseBlock = 268, + #endif }, DUMMY_WIN_TEMPLATE }; @@ -399,8 +420,14 @@ static void PrintAllBerryData(void) static void PrintBerryNumberAndName(void) { +#if ENGLISH const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); ConvertIntToDecimalStringN(gStringVar1, sBerryTag->berryId, STR_CONV_MODE_LEADING_ZEROS, 2); +#elif FRENCH + const struct Berry *berry; + ConvertIntToDecimalStringN(gStringVar1, sBerryTag->berryId, STR_CONV_MODE_LEADING_ZEROS, 2); + berry = GetBerryInfo(sBerryTag->berryId); +#endif StringCopy(gStringVar2, berry->name); StringExpandPlaceholders(gStringVar4, gText_NumberVar1Var2); PrintTextInBerryTagScreen(WIN_BERRY_NAME, gStringVar4, 0, 1, 0, 0); @@ -412,6 +439,7 @@ static void PrintBerrySize(void) AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gText_SizeSlash, 0, 1, TEXT_SKIP_DRAW, NULL); if (berry->size != 0) { + #if ENGLISH u32 inches, fraction; inches = 1000 * berry->size / 254; @@ -422,6 +450,10 @@ static void PrintBerrySize(void) ConvertIntToDecimalStringN(gStringVar1, inches, STR_CONV_MODE_LEFT_ALIGN, 2); ConvertIntToDecimalStringN(gStringVar2, fraction, STR_CONV_MODE_LEFT_ALIGN, 2); + #elif FRENCH + ConvertIntToDecimalStringN(gStringVar1, berry->size / 10, STR_CONV_MODE_LEFT_ALIGN, 2); + ConvertIntToDecimalStringN(gStringVar2, berry->size % 10, STR_CONV_MODE_LEFT_ALIGN, 2); + #endif StringExpandPlaceholders(gStringVar4, gText_Var1DotVar2); AddTextPrinterParameterized(WIN_SIZE_FIRM, FONT_NORMAL, gStringVar4, 0x28, 1, 0, NULL); } @@ -444,13 +476,21 @@ static void PrintBerryFirmness(void) static void PrintBerryDescription1(void) { const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); +#if ENGLISH AddTextPrinterParameterized(WIN_DESC, FONT_NORMAL, berry->description1, 0, 1, 0, NULL); +#elif FRENCH + AddTextPrinterParameterized(WIN_DESC, FONT_NORMAL, berry->description1, 5, 1, 0, NULL); +#endif } static void PrintBerryDescription2(void) { const struct Berry *berry = GetBerryInfo(sBerryTag->berryId); - AddTextPrinterParameterized(WIN_DESC, FONT_NORMAL, berry->description2, 0, 0x11, 0, NULL); +#if ENGLISH + AddTextPrinterParameterized(WIN_DESC, FONT_NORMAL, berry->description2, 0, 17, 0, NULL); +#elif FRENCH + AddTextPrinterParameterized(WIN_DESC, FONT_NORMAL, berry->description2, 5, 17, 0, NULL); +#endif } static void CreateBerrySprite(void) diff --git a/src/credits.c b/src/credits.c index 33362fb38b..a2002eb3dd 100644 --- a/src/credits.c +++ b/src/credits.c @@ -87,7 +87,9 @@ static EWRAM_DATA bool8 sUsedSpeedUp = 0; // Never read static EWRAM_DATA struct CreditsData *sCreditsData = {0}; static const u16 sCredits_Pal[] = INCBIN_U16("graphics/credits/credits.gbapal"); +#if ENGLISH static const u32 sCreditsCopyrightEnd_Gfx[] = INCBIN_U32("graphics/credits/the_end_copyright.4bpp.lz"); +#endif static void SpriteCB_CreditsMonBg(struct Sprite *); static void Task_WaitPaletteFade(u8); @@ -118,6 +120,7 @@ static void SpriteCB_Rival(struct Sprite *); static u8 CreateCreditsMonSprite(u16, s16, s16, u16); static void DeterminePokemonToShow(void); +#if ENGLISH static const u8 sTheEnd_LetterMap_T[] = { 0, 1, 0, @@ -162,6 +165,7 @@ static const u8 sTheEnd_LetterMap_D[] = 1, 0x88, 0x89, 1, 0x86, 0x87, }; +#endif #include "data/credits.h" @@ -784,7 +788,11 @@ static void Task_UpdatePage(u8 taskId) case 3: if (!gPaletteFade.active) { + #if ENGLISH gTasks[taskId].tDelay = 115; + #elif FRENCH + gTasks[taskId].tDelay = 121; + #endif gTasks[taskId].tState++; } return; @@ -918,7 +926,11 @@ static void Task_ShowMons(u8 taskId) if (sCreditsData->currShownMon < sCreditsData->numMonToShow - 1) { sCreditsData->currShownMon++; + #if ENGLISH gSprites[spriteId].data[3] = 50; + #elif FRENCH + gSprites[spriteId].data[3] = 52; + #endif } else { @@ -932,7 +944,11 @@ static void Task_ShowMons(u8 taskId) else sCreditsData->nextImgPos++; + #if ENGLISH gTasks[taskId].tDelay = 50; + #elif FRENCH + gTasks[taskId].tDelay = 52; + #endif gTasks[taskId].tState++; break; case 3: @@ -1077,8 +1093,11 @@ static void Task_CycleSceneryPalette(u8 taskId) case SCENE_FOREST_CATCH_RIVAL: if (gTasks[taskId].tTimer != TIMER_STOP) { - + #if ENGLISH if (gTasks[taskId].tTimer == 584) + #elif FRENCH + if (gTasks[taskId].tTimer == 620) + #endif { gTasks[gTasks[gTasks[taskId].tMainTaskId].tTaskId_BikeScene].tState = 10; gTasks[taskId].tTimer = TIMER_STOP; @@ -1290,6 +1309,7 @@ static void LoadTheEndScreen(u16 tileOffsetLoad, u16 tileOffsetWrite, u16 palOff u16 baseTile; u16 i; +#if ENGLISH LZ77UnCompVram(sCreditsCopyrightEnd_Gfx, (void *)(VRAM + tileOffsetLoad)); LoadPalette(gIntroCopyright_Pal, palOffset, sizeof(gIntroCopyright_Pal)); @@ -1297,8 +1317,18 @@ static void LoadTheEndScreen(u16 tileOffsetLoad, u16 tileOffsetWrite, u16 palOff for (i = 0; i < 32 * 32; i++) ((u16 *) (VRAM + tileOffsetWrite))[i] = baseTile + 1; +#elif FRENCH + LZ77UnCompVram(gCreditsCopyrightEnd_Gfx, (void *)(VRAM + tileOffsetLoad)); + LoadPalette(gIntroCopyright_Pal, palOffset, sizeof(gIntroCopyright_Pal)); + + baseTile = (palOffset / 16) << 12; + + for (i = 0; i < 32 * 32; i++) + ((u16 *) (VRAM + tileOffsetWrite))[i] = baseTile; +#endif } +#if ENGLISH static u16 GetLetterMapTile(u8 baseTiles) { u16 out = (baseTiles & 0x3F) + 80; @@ -1341,6 +1371,12 @@ static void DrawTheEnd(u16 offset, u16 palette) DrawLetterMapTiles(sTheEnd_LetterMap_N, 20, 7, offset, palette); DrawLetterMapTiles(sTheEnd_LetterMap_D, 24, 7, offset, palette); } +#elif FRENCH +static void DrawTheEnd(u16 offset, u16 palette) +{ + LZ77UnCompVram(gCreditsCopyrightEnd_Tilemap, ((u16 *) (VRAM + offset))); +} +#endif #define sState data[0] diff --git a/src/graphics.c b/src/graphics.c index 9f708f18b4..77195f6b6f 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1523,8 +1523,114 @@ const u16 gBerryCrush_Crusher_Pal[] = INCBIN_U16("graphics/berry_crush/crusher.g const u32 gBerryCrush_Crusher_Gfx[] = INCBIN_U32("graphics/berry_crush/crusher.4bpp.lz"); const u32 gBerryCrush_TextWindows_Tilemap[] = INCBIN_U32("graphics/berry_crush/text_windows.bin.lz"); +#if FRENCH +// Moved from other files in the french version. + +// credits +const u32 gCreditsCopyrightEnd_Gfx[] = INCBIN_U32("graphics/credits/the_end_copyright_fr.4bpp.lz"); +const u32 gCreditsCopyrightEnd_Tilemap[] = INCBIN_U32("graphics/credits/the_end_copyright_fr.bin.lz"); + +const u16 g321Start_Pal[] = INCBIN_U16("graphics/link/321start.gbapal"); +const u32 g321Start_Gfx[] = INCBIN_U32("graphics/link/321start.4bpp.lz"); + +// poke jump +const u16 gPokeJumpBonuses_Pal[] = INCBIN_U16("graphics/pokemon_jump/bonuses.gbapal"); +const u32 gPokeJumpBonuses_Gfx[] = INCBIN_U32("graphics/pokemon_jump/bonuses.4bpp.lz"); +const u32 gPokeJumpBonuses_Tilemap[] = INCBIN_U32("graphics/pokemon_jump/bonuses.bin.lz"); + +const u16 gBlenderCenter_Pal[] = INCBIN_U16("graphics/berry_blender/center.gbapal"); + +// tiles shop +const u16 gTilesetPalettes_Shop[][16] = +{ + INCBIN_U16("data/tilesets/secondary/shop/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/15.gbapal"), +}; +const u32 gTilesetTiles_Shop[] = INCBIN_U32("data/tilesets/secondary/shop/tiles.4bpp.lz"); + +// roulette +const u16 gRouletteShadow_Pal[] = INCBIN_U16("graphics/roulette/shadow.gbapal"); +const u16 gRouletteBall_Pal[] = INCBIN_U16("graphics/roulette/ball.gbapal"); +const u16 gRouletteBallCounter_Pal[] = INCBIN_U16("graphics/roulette/ball_counter.gbapal"); +const u16 gRouletteCursor_Pal[] = INCBIN_U16("graphics/roulette/cursor.gbapal"); +const u16 gRouletteCredit_Pal[] = INCBIN_U16("graphics/roulette/credit.gbapal"); +const u16 gRouletteShroomish_Pal[] = INCBIN_U16("graphics/roulette/shroomish.gbapal"); +const u16 gRouletteTaillow_Pal[] = INCBIN_U16("graphics/roulette/tailow.gbapal"); +const u16 gRouletteGridIcons_Pal[] = INCBIN_U16("graphics/roulette/grid_icons.gbapal"); +const u16 gRouletteWynaut_Pal[] = INCBIN_U16("graphics/roulette/wynaut.gbapal"); +const u16 gRouletteAzurill_Pal[] = INCBIN_U16("graphics/roulette/azurill.gbapal"); +const u16 gRouletteSkitty_Pal[] = INCBIN_U16("graphics/roulette/skitty.gbapal"); +const u16 gRouletteMakuhita_Pal[] = INCBIN_U16("graphics/roulette/makuhita.gbapal"); +const u16 gRouletteUnused1_Pal[] = INCBIN_U16("graphics/roulette/unused_1.gbapal"); +const u16 gRouletteUnused2_Pal[] = INCBIN_U16("graphics/roulette/unused_2.gbapal"); +const u16 gRouletteUnused3_Pal[] = INCBIN_U16("graphics/roulette/unused_3.gbapal"); +const u16 gRouletteUnused4_Pal[] = INCBIN_U16("graphics/roulette/unused_4.gbapal"); + +// frontier pass +const u32 gFrontierPassMapScreen_Gfx[] = INCBIN_U32("graphics/frontier_pass/map_screen.4bpp.lz"); + +// tiles battle dome +const u16 gTilesetPalettes_BattleDome[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/15.gbapal"), +}; +const u32 gTilesetTiles_BattleDome[] = INCBIN_U32("data/tilesets/secondary/battle_dome/tiles.4bpp.lz"); + +// pokenav match call gfx +const u16 gMatchCallUI_Pal[] = INCBIN_U16("graphics/pokenav/match_call/ui.gbapal"); +const u32 gMatchCallUI_Gfx[] = INCBIN_U32("graphics/pokenav/match_call/ui.4bpp.lz"); +const u32 gMatchCallUI_Tilemap[] = INCBIN_U32("graphics/pokenav/match_call/ui.bin.lz"); + +// pokenav conditions search results +const u16 gConditionSearchResultFramePal[] = INCBIN_U16("graphics/pokenav/condition/search_results.gbapal"); +const u32 gConditionSearchResultTiles[] = INCBIN_U32("graphics/pokenav/condition/search_results.4bpp.lz"); +const u32 gConditionSearchResultTilemap[] = INCBIN_U32("graphics/pokenav/condition/search_results.bin.lz"); + +// pokenav ribbons list +const u16 gMonRibbonListFramePal[] = INCBIN_U16("graphics/pokenav/ribbons/list_bg.gbapal"); +const u32 gMonRibbonListFrameTiles[] = INCBIN_U32("graphics/pokenav/ribbons/list_bg.4bpp.lz"); +const u32 gMonRibbonListFrameTilemap[] = INCBIN_U32("graphics/pokenav/ribbons/list_bg.bin.lz"); + +// pokedex +const u16 gCryMeter_Pal[] = INCBIN_U16("graphics/pokedex/cry_meter.gbapal"); +const u8 gCryMeter_Gfx[] = INCBIN_U8("graphics/pokedex/cry_meter.4bpp.lz"); +#endif + // random garbage at the end. +#if ENGLISH static const u8 sEmpty3[0x54BAC] = {0}; +#elif FRENCH +static const u8 sEmpty3[0x4EA98] = {0}; +#endif static const u8 sUnused1[] = {0x0D, 0x00, 0x58, 0x02}; static const u8 sEmpty4[0x1145] = {0}; static const u8 sUnused2[] = {0x02};