diff options
-rw-r--r-- | Customizable-Pokédex-Color.md | 64 |
1 files changed, 50 insertions, 14 deletions
diff --git a/Customizable-Pokédex-Color.md b/Customizable-Pokédex-Color.md index 381679a..6290d37 100644 --- a/Customizable-Pokédex-Color.md +++ b/Customizable-Pokédex-Color.md @@ -45,6 +45,8 @@ Edit [constants\wram_constants.asm](../blob/master/constants/wram_constants.asm) + const DEXCOLOR_PINK + const DEXCOLOR_YELLOW + const DEXCOLOR_CYAN ++ const DEXCOLOR_GRAY ++ const DEXCOLOR_MEWTWO ; wMonType:: ; cf5f const_def @@ -261,7 +263,7 @@ This is where we add the text displayed by the dex in the options menu. We had t Pokedex_DrawColorScreenBG: call Pokedex_FillBackgroundColor2 hlcoord 0, 2 - lb bc, 8, 18 + lb bc, 14, 18 call Pokedex_PlaceBorder hlcoord 0, 1 ld de, .Title @@ -290,6 +292,12 @@ Pokedex_DrawColorScreenBG: hlcoord 3, 10 ld de, .Cyan call Pokedex_PlaceString + hlcoord 3, 11 + ld de, .Gray + call Pokedex_PlaceString + hlcoord 3, 12 + ld de, .Mewtwo + call Pokedex_PlaceString ret .Title: @@ -317,7 +325,13 @@ Pokedex_DrawColorScreenBG: db "YELLOW ", $4f, -1 .Cyan - db "CYAN ", $4f, -1 + db "CYAN ", $4f, -1 + +.Gray + db "GRAY ", $4f, -1 + +.Mewtwo + db "MEWTWO ", $4f, -1 Pokedex_UpdateColorOption: ld de, .ArrowCursorData @@ -332,15 +346,17 @@ Pokedex_UpdateColorOption: ret .ArrowCursorData: - db D_UP | D_DOWN, 8 - dwcoord 2, 3 ; Red - dwcoord 2, 4 ; Blue - dwcoord 2, 5 ; Purple - dwcoord 2, 6 ; Brown - dwcoord 2, 7 ; Green - dwcoord 2, 8 ; Pink - dwcoord 2, 9 ; Yellow - dwcoord 2, 10 ; Gray + db D_UP | D_DOWN, 10 + dwcoord 2, 3 ; Red + dwcoord 2, 4 ; Blue + dwcoord 2, 5 ; Purple + dwcoord 2, 6 ; Brown + dwcoord 2, 7 ; Green + dwcoord 2, 8 ; Pink + dwcoord 2, 9 ; Yellow + dwcoord 2, 10 ; Cyan + dwcoord 2, 11 ; Gray + dwcoord 2, 12 ; Mewtwo .do_menu_action ld a, [wDexArrowCursorPosIndex] @@ -363,6 +379,8 @@ Pokedex_UpdateColorOption: dw .MenuAction_Pink dw .MenuAction_Yellow dw .MenuAction_Cyan + dw .MenuAction_Gray + dw .MenuAction_Mewtwo .MenuAction_Red ld b, DEXCOLOR_RED @@ -394,6 +412,14 @@ Pokedex_UpdateColorOption: .MenuAction_Cyan ld b, DEXCOLOR_CYAN + jr .ChangeColor + +.MenuAction_Gray + ld b, DEXCOLOR_GRAY + jr .ChangeColor + +.MenuAction_Mewtwo + ld b, DEXCOLOR_MEWTWO .ChangeColor: ld a, [wCurPokedexColor] @@ -407,7 +433,7 @@ Pokedex_UpdateColorOption: call Pokedex_BlackOutBG ld a, DEXSTATE_COLOR_OPTION ld [wJumptableIndex], a - ret + ret ``` This should be placed immediately after `.UnownMode`. This is the bread and butter of the color options screen. So let's break it down into its parts: @@ -507,9 +533,19 @@ _CGB_Pokedex: + jr .setColor +.Cyan + cp DEXCOLOR_CYAN -+ jr nz, .Red ++ jr nz, .Gray + ld a, PREDEFPAL_RB_CYANMON + jr .setColor ++.Gray ++ cp DEXCOLOR_GRAY ++ jr nz, .Mewtwo ++ ld a, PREDEFPAL_CGB_BADGE ++ jr .setColor ++.Mewtwo ++ cp DEXCOLOR_MEWTWO ++ jr nz, .Red ++ ld a, PREDEFPAL_DIPLOMA ++ jr .setColor +.Red + ld a, PREDEFPAL_POKEDEX +.setColor @@ -527,7 +563,7 @@ We replaced the inital load of `PREDEFPAL_POKEDEX` with a chain comparison that ## 5. Closing - + The palettes I used were the unused palettes of the original Pokémon sprites in Red/Blue, but you can use any palette you like. This also has freed up some space on the options screen to allow for other Pokédex modes in addition to what's already there! |