mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-26 11:44:17 +01:00
Merge branch 'master' into pok_jump
This commit is contained in:
commit
1641579297
File diff suppressed because it is too large
Load Diff
@ -943,7 +943,7 @@ sub_81CA0C8: @ 81CA0C8
|
||||
lsls r2, r0, 3
|
||||
subs r2, r0
|
||||
lsls r2, 2
|
||||
ldr r1, =gUnknown_08620244
|
||||
ldr r1, =gUnknown_08620240+4
|
||||
adds r0, r2, r1
|
||||
subs r1, 0x4
|
||||
adds r2, r1
|
||||
|
@ -1,666 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.section .rodata
|
||||
|
||||
.align 2
|
||||
gUnknown_082F449C:: @ 82F449C
|
||||
.byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
|
||||
.byte 0x08, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x03, 0x08
|
||||
.byte 0x09, 0x00, 0x00, 0x01, 0x02, 0x05, 0x06, 0x03
|
||||
.byte 0x04, 0x05, 0x08, 0x09, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01
|
||||
.byte 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x02, 0x09
|
||||
.byte 0x00, 0x00, 0x01, 0x04, 0x05, 0x06, 0x07, 0x02
|
||||
.byte 0x03, 0x04, 0x09, 0x00, 0x00, 0x01, 0x06, 0x07
|
||||
.byte 0x02, 0x03, 0x04, 0x05, 0x06, 0x09, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02
|
||||
.byte 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x01, 0x00
|
||||
.byte 0x00, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x01
|
||||
.byte 0x02, 0x03, 0x00, 0x00, 0x05, 0x06, 0x07, 0x08
|
||||
.byte 0x01, 0x02, 0x03, 0x04, 0x05, 0x00, 0x00, 0x07
|
||||
.byte 0x08, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03
|
||||
.byte 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x00, 0x02
|
||||
.byte 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x00
|
||||
.byte 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09
|
||||
.byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x06, 0x07, 0x08
|
||||
.byte 0x09, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06
|
||||
.byte 0x08, 0x09, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05
|
||||
.byte 0x06, 0x07, 0x08
|
||||
|
||||
gUknnown_082F45AF::
|
||||
.byte 0x04, 0x05, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03
|
||||
.byte 0x04, 0x05, 0x05, 0x06, 0x03, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x05
|
||||
.byte 0x06, 0x06, 0x07, 0x02, 0x02, 0x03, 0x04, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x05
|
||||
.byte 0x05, 0x06, 0x07, 0x07, 0x08, 0x01, 0x01, 0x02
|
||||
.byte 0x03, 0x00, 0x00, 0x00, 0x04, 0x05, 0x06, 0x06
|
||||
.byte 0x07, 0x08, 0x08, 0x09, 0x00, 0x00, 0x01, 0x02
|
||||
.byte 0x02, 0x03, 0x04, 0x01, 0x00, 0x01, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x02, 0x01
|
||||
.byte 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x03, 0x00, 0x01, 0x00, 0x01, 0x02, 0x01, 0x02
|
||||
.byte 0x03, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, 0x04
|
||||
.byte 0x00, 0x01, 0x00, 0x01, 0x02, 0x01, 0x02, 0x03
|
||||
.byte 0x02, 0x03, 0x04, 0x03, 0x04, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x09, 0x09, 0x09, 0x09, 0x01, 0x01, 0x01
|
||||
.byte 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x00
|
||||
.byte 0x00, 0x01, 0x01, 0x00, 0x09, 0x09, 0x09, 0x09
|
||||
.byte 0x09, 0x02, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01
|
||||
.byte 0x09, 0x09, 0x09, 0x03, 0x03, 0x00, 0x00, 0x01
|
||||
.byte 0x01, 0x02, 0x02, 0x03, 0x09, 0x03, 0x03, 0x04
|
||||
.byte 0x04, 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03
|
||||
.byte 0x05, 0x00, 0x00, 0x00, 0x00, 0x04, 0x06, 0x00
|
||||
.byte 0x00, 0x00, 0x03, 0x05, 0x07, 0x00, 0x00, 0x02
|
||||
.byte 0x04, 0x06, 0x08, 0x00, 0x01, 0x03, 0x05, 0x06
|
||||
.byte 0x09
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7DF0_UnrefDupe:: @ 82F4698
|
||||
.incbin "graphics/link_games/dodrioberry_bg1.gbapal"
|
||||
|
||||
.align 2
|
||||
.incbin "graphics/link_games/dodrioberry_bg2.gbapal"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7E30_UnrefDupe:: @ 82F46B8
|
||||
.incbin "graphics/link_games/dodrioberry_pkmn.gbapal"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7E50_UnrefDupe:: @ 82F46D8
|
||||
.incbin "graphics/link_games/dodrioberry_shiny.gbapal"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7E70_UnrefDupe:: @ 82F46F8
|
||||
.incbin "graphics/link_games/dodrioberry_status.gbapal"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7E90_UnrefDupe:: @ 82F4718
|
||||
.incbin "graphics/link_games/dodrioberry_berrysprites.gbapal"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7EB0_UnrefDupe:: @ 82F4738
|
||||
.incbin "graphics/link_games/dodrioberry_berrysprites.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F8064_UnrefDupe:: @ 82F490C
|
||||
.incbin "graphics/link_games/dodrioberry_platform.gbapal"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F8084_UnrefDupe:: @ 82F492C
|
||||
.incbin "graphics/link_games/dodrioberry_bg1.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F8914_UnrefDupe:: @ 82F51BC
|
||||
.incbin "graphics/link_games/dodrioberry_bg2.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F96E0_UnrefDupe:: @ 82F5F88
|
||||
.incbin "graphics/link_games/dodrioberry_status.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F9774_UnrefDupe:: @ 82F601C
|
||||
.incbin "graphics/link_games/dodrioberry_platform.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F98BC_UnrefDupe:: @ 82F6164
|
||||
.incbin "graphics/link_games/dodrioberry_pkmn.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082FAAD8_UnrefDupe:: @ 82F7380
|
||||
.incbin "graphics/link_games/dodrioberry_bg1.bin.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082FAD44_UnrefDupe:: @ 82F75EC
|
||||
.incbin "graphics/link_games/dodrioberry_bg2right.bin.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082FAF94_UnrefDupe:: @ 82F783C
|
||||
.incbin "graphics/link_games/dodrioberry_bg2left.bin.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7A88:: @ 82F7A88
|
||||
.byte 0x28, 0x18, 0x0d, 0x20, 0x13, 0x0a, 0x16, 0x0d
|
||||
.byte 0x07, 0x00, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7A94:: @ 82F7A94
|
||||
.byte 0x08, 0x05, 0x08, 0x0b, 0x0f, 0x00, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7A9C:: @ 82F7A9C
|
||||
.byte 0x05, 0x0a, 0x14, 0x1e, 0x32, 0x46, 0x64, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7AA4:: @ 82F7AA4
|
||||
.byte 0x0f, 0x10, 0x11, 0x12, 0x13, 0x13, 0x12, 0x11
|
||||
.byte 0x10, 0x0f, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19
|
||||
.byte 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21
|
||||
.byte 0x22, 0x22, 0x21, 0x20, 0x1f, 0x1e, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7AC4:: @ 82F7AC4
|
||||
.4byte sub_8024DBC
|
||||
.4byte sub_8024E00
|
||||
.4byte sub_8024E38
|
||||
.4byte sub_8024F10
|
||||
.4byte sub_8024F38
|
||||
.4byte sub_8025198
|
||||
.4byte sub_8025324
|
||||
.4byte sub_8025470
|
||||
.4byte sub_8025644
|
||||
.4byte sub_80256AC
|
||||
.4byte sub_8025758
|
||||
.4byte sub_80250D4
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7AF4:: @ 82F7AF4
|
||||
.4byte sub_8024DBC
|
||||
.4byte sub_8024E00
|
||||
.4byte sub_8024E38
|
||||
.4byte sub_8024F10
|
||||
.4byte sub_8024FFC
|
||||
.4byte sub_8025230
|
||||
.4byte sub_8025324
|
||||
.4byte sub_8025470
|
||||
.4byte sub_8025644
|
||||
.4byte sub_80256AC
|
||||
.4byte sub_8025758
|
||||
.4byte sub_8025158
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B24:: @ 82F7B24
|
||||
.2byte 0x000a, 0x001e, 0x0032, 0x0032
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B2C:: @ 82F7B2C
|
||||
.byte 0x00, 0x05, 0x01, 0x14, 0x0b, 0x0f, 0x01, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B34:: @ 82F7B34
|
||||
.4byte gText_BerriesPicked
|
||||
.4byte gText_BestScore
|
||||
.4byte gText_BerriesInRowFivePlayers
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B40:: @ 82F7B40
|
||||
.byte 0x04, 0x07, 0x04, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B44:: @ 82F7B44
|
||||
.2byte 0x0019, 0x0029, 0x0039
|
||||
|
||||
gUnknown_082F7B4A:: @ 82F7B4A
|
||||
.2byte 0x0019, 0x0029, 0x0049
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B50:: @ 82F7B50
|
||||
.2byte 0x270f, 0x0000, 0x005a, 0x270f, 0x270f, 0x270f, 0x0046, 0x270f
|
||||
.2byte 0x270f, 0x0000, 0x270f, 0x0000, 0x270f, 0x270f, 0x003c, 0x0000
|
||||
.2byte 0x270f, 0x270f, 0x270f, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B78:: @ 82F7B78
|
||||
.string "ÀÁÂÇÈÉÊ$"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B80:: @ 82F7B80
|
||||
.string "ABCDEFG$"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B88:: @ 82F7B88
|
||||
.string "0123456$"
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7B90:: @ 82F7B90
|
||||
.4byte gUnknown_082F7B78
|
||||
.4byte gUnknown_082F7B78
|
||||
.4byte gUnknown_082F7B78
|
||||
.4byte gUnknown_082F7B80
|
||||
.4byte gUnknown_082F7B88
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7BA4:: @ 82F7BA4 struct BgTemplate
|
||||
.4byte 0x000001e0
|
||||
.4byte 0x000012c9
|
||||
.4byte 0x000012ea
|
||||
.4byte 0x000021ff
|
||||
.4byte 0x000000ff
|
||||
.4byte 0x00000000
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7BBC:: @ 82F7BBC
|
||||
window_template 0x00, 0x01, 0x01, 0x1c, 0x02, 0x0d, 0x0013
|
||||
window_template 0x00, 0x01, 0x05, 0x1c, 0x0e, 0x0d, 0x004b
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7BCC:: @ 82F7BCC
|
||||
window_template 0x00, 0x01, 0x05, 0x1c, 0x07, 0x0d, 0x004b
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7BD4:: @ 82F7BD4
|
||||
window_template 0x00, 0x01, 0x08, 0x13, 0x03, 0x0d, 0x0013
|
||||
window_template 0x00, 0x16, 0x07, 0x06, 0x04, 0x0d, 0x004c
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7BE4:: @ 82F7BE4
|
||||
window_template 0x00, 0x04, 0x06, 0x16, 0x05, 0x0d, 0x0013
|
||||
|
||||
.align 2
|
||||
gUnknown_082F7BEC:: @ 82F7BEC
|
||||
window_template 0x00, 0x05, 0x08, 0x13, 0x03, 0x0d, 0x0013
|
||||
|
||||
.align 2
|
||||
gUnknown_082F449C_UnrefDupe:: @ 82F7BF4
|
||||
.byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
|
||||
.byte 0x08, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x03, 0x08
|
||||
.byte 0x09, 0x00, 0x00, 0x01, 0x02, 0x05, 0x06, 0x03
|
||||
.byte 0x04, 0x05, 0x08, 0x09, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01
|
||||
.byte 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x02, 0x09
|
||||
.byte 0x00, 0x00, 0x01, 0x04, 0x05, 0x06, 0x07, 0x02
|
||||
.byte 0x03, 0x04, 0x09, 0x00, 0x00, 0x01, 0x06, 0x07
|
||||
.byte 0x02, 0x03, 0x04, 0x05, 0x06, 0x09, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02
|
||||
.byte 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x01, 0x00
|
||||
.byte 0x00, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x01
|
||||
.byte 0x02, 0x03, 0x00, 0x00, 0x05, 0x06, 0x07, 0x08
|
||||
.byte 0x01, 0x02, 0x03, 0x04, 0x05, 0x00, 0x00, 0x07
|
||||
.byte 0x08, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03
|
||||
.byte 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x00, 0x02
|
||||
.byte 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x00
|
||||
.byte 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09
|
||||
.byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x06, 0x07, 0x08
|
||||
.byte 0x09, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06
|
||||
.byte 0x08, 0x09, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05
|
||||
.byte 0x06, 0x07, 0x08, 0x04, 0x05, 0x06, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x03, 0x04, 0x05, 0x05, 0x06, 0x03
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x04, 0x05, 0x06, 0x06, 0x07, 0x02, 0x02
|
||||
.byte 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x03, 0x04, 0x05, 0x05, 0x06, 0x07, 0x07, 0x08
|
||||
.byte 0x01, 0x01, 0x02, 0x03, 0x00, 0x00, 0x00, 0x04
|
||||
.byte 0x05, 0x06, 0x06, 0x07, 0x08, 0x08, 0x09, 0x00
|
||||
.byte 0x00, 0x01, 0x02, 0x02, 0x03, 0x04, 0x01, 0x00
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01
|
||||
.byte 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00
|
||||
.byte 0x01, 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, 0x00, 0x01
|
||||
.byte 0x02, 0x01, 0x02, 0x03, 0x02, 0x03, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x04, 0x00, 0x01, 0x00, 0x01, 0x02
|
||||
.byte 0x01, 0x02, 0x03, 0x02, 0x03, 0x04, 0x03, 0x04
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x09, 0x09, 0x09, 0x09
|
||||
.byte 0x01, 0x01, 0x01, 0x09, 0x09, 0x09, 0x09, 0x09
|
||||
.byte 0x09, 0x09, 0x00, 0x00, 0x01, 0x01, 0x00, 0x09
|
||||
.byte 0x09, 0x09, 0x09, 0x09, 0x02, 0x02, 0x00, 0x00
|
||||
.byte 0x01, 0x01, 0x01, 0x09, 0x09, 0x09, 0x03, 0x03
|
||||
.byte 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x09
|
||||
.byte 0x03, 0x03, 0x04, 0x04, 0x00, 0x00, 0x01, 0x01
|
||||
.byte 0x02, 0x02, 0x03, 0x05, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x04, 0x06, 0x00, 0x00, 0x00, 0x03, 0x05, 0x07
|
||||
.byte 0x00, 0x00, 0x02, 0x04, 0x06, 0x08, 0x00, 0x01
|
||||
.byte 0x03, 0x05, 0x06, 0x09
|
||||
|
||||
.align 2
|
||||
gDodrioBerryBgPal1:: @ 82F7DF0
|
||||
.incbin "graphics/link_games/dodrioberry_bg1.gbapal"
|
||||
|
||||
.align 2
|
||||
.incbin "graphics/link_games/dodrioberry_bg2.gbapal"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryPkmnPal:: @ 82F7E30
|
||||
.incbin "graphics/link_games/dodrioberry_pkmn.gbapal"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryShinyPal:: @ 82F7E50
|
||||
.incbin "graphics/link_games/dodrioberry_shiny.gbapal"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryStatusPal:: @ 82F7E70
|
||||
.incbin "graphics/link_games/dodrioberry_status.gbapal"
|
||||
|
||||
.align 2
|
||||
gDodrioBerrySpritesPal:: @ 82F7E90
|
||||
.incbin "graphics/link_games/dodrioberry_berrysprites.gbapal"
|
||||
|
||||
.align 2
|
||||
gDodrioBerrySpritesGfx:: @ 82F7EB0
|
||||
.incbin "graphics/link_games/dodrioberry_berrysprites.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryPlatformPal:: @ 82F8064
|
||||
.incbin "graphics/link_games/dodrioberry_platform.gbapal"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryBgGfx1:: @ 82F8084
|
||||
.incbin "graphics/link_games/dodrioberry_bg1.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryBgGfx2:: @ 82F8914
|
||||
.incbin "graphics/link_games/dodrioberry_bg2.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryStatusGfx:: @ 82F96E0
|
||||
.incbin "graphics/link_games/dodrioberry_status.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryPlatformGfx:: @ 82F9774
|
||||
.incbin "graphics/link_games/dodrioberry_platform.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryPkmnGfx:: @ 82F98BC
|
||||
.incbin "graphics/link_games/dodrioberry_pkmn.4bpp.lz"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryBgTilemap1:: @ 82FAAD8
|
||||
.incbin "graphics/link_games/dodrioberry_bg1.bin.lz"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryBgTilemap2Right:: @ 82FAD44
|
||||
.incbin "graphics/link_games/dodrioberry_bg2right.bin.lz"
|
||||
|
||||
.align 2
|
||||
gDodrioBerryBgTilemap2Left:: @ 82FAF94
|
||||
.incbin "graphics/link_games/dodrioberry_bg2left.bin.lz"
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB1E0:: @ 82FB1E0
|
||||
.byte 0x00, 0x00, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB1E8:: @ 82FB1E8
|
||||
.byte 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB1F0:: @ 82FB1F0
|
||||
.byte 0x00, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB1F8:: @ 82FB1F8
|
||||
.byte 0x00, 0x40, 0x00, 0xc0, 0x00, 0x0c, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB200:: @ 82FB200
|
||||
.2byte 0x0000, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB208:: @ 82FB208
|
||||
.2byte 0x0040, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB210:: @ 82FB210
|
||||
.2byte 0x0080, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB218:: @ 82FB218
|
||||
.2byte 0x00c0, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB220:: @ 82FB220
|
||||
.2byte 0x0100, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB228:: @ 82FB228
|
||||
.4byte gUnknown_082FB200
|
||||
.4byte gUnknown_082FB208
|
||||
.4byte gUnknown_082FB210
|
||||
.4byte gUnknown_082FB218
|
||||
.4byte gUnknown_082FB220
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB23C:: @ 82FB23C
|
||||
.2byte 0x0000, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB244:: @ 82FB244
|
||||
.2byte 0x0004, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB24C:: @ 82FB24C
|
||||
.2byte 0x0008, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB254:: @ 82FB254
|
||||
.4byte gUnknown_082FB23C
|
||||
.4byte gUnknown_082FB244
|
||||
.4byte gUnknown_082FB24C
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB260:: @ 82FB260
|
||||
.2byte 0x0000, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB268:: @ 82FB268
|
||||
.2byte 0x0004, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB270:: @ 82FB270
|
||||
.2byte 0x0008, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB278:: @ 82FB278
|
||||
.2byte 0x000c, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB280:: @ 82FB280
|
||||
.2byte 0x0010, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB288:: @ 82FB288
|
||||
.2byte 0x0014, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB290:: @ 82FB290
|
||||
.2byte 0x0018, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB298:: @ 82FB298
|
||||
.2byte 0x001c, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB2A0:: @ 82FB2A0
|
||||
.2byte 0x0020, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB2A8:: @ 82FB2A8
|
||||
.4byte gUnknown_082FB260
|
||||
.4byte gUnknown_082FB268
|
||||
.4byte gUnknown_082FB270
|
||||
.4byte gUnknown_082FB278
|
||||
.4byte gUnknown_082FB280
|
||||
.4byte gUnknown_082FB288
|
||||
.4byte gUnknown_082FB290
|
||||
.4byte gUnknown_082FB298
|
||||
.4byte gUnknown_082FB2A0
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB2CC:: @ 82FB2CC
|
||||
.2byte 0x0000, 0x0014
|
||||
.2byte 0xfffe, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB2D4:: @ 82FB2D4
|
||||
.4byte gUnknown_082FB2CC
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB2D8:: @ 82FB2D8
|
||||
obj_pal gDodrioBerryPkmnPal, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB2E0:: @ 82FB2E0
|
||||
obj_pal gDodrioBerryShinyPal, 0x0001
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB2E8:: @ 82FB2E8
|
||||
obj_pal gDodrioBerryStatusPal, 0x0002
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB2F0:: @ 82FB2F0
|
||||
spr_template 0x0001, 0x0002, gUnknown_082FB1E8, gUnknown_082FB254, NULL, gDummySpriteAffineAnimTable, nullsub_15
|
||||
|
||||
.align 2
|
||||
.byte 0xD4, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44
|
||||
.byte 0x45, 0xFB, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB314:: @ 82FB314
|
||||
obj_pal gDodrioBerrySpritesPal, 0x0003
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB31C:: @ 82FB31C
|
||||
.2byte 0x0058, 0x0080, 0x00a8, 0x00d0
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB324:: @ 82FB324
|
||||
spr_template 0x0002, 0x0003, gUnknown_082FB1F0, gUnknown_082FB2A8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB33C:: @ 82FB33C
|
||||
spr_template 0x0002, 0x0003, gUnknown_082FB1E8, gUnknown_082FB2A8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB354:: @ 82FB354
|
||||
.byte 0x1E, 0x14
|
||||
|
||||
gUnknown_082FB356:: @ 82FB356
|
||||
.byte 0xE6, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB358:: @ 82FB358
|
||||
.2byte 0x0037, 0x001e, 0x004a, 0x0000
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB360:: @ 82FB360
|
||||
obj_pal gDodrioBerryPlatformPal, 0x0006
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB368:: @ 82FB368
|
||||
spr_template 0x0005, 0x0006, gUnknown_082FB1F8, gUnknown_082FB2D4, NULL, gDummySpriteAffineAnimTable, sub_8028CF4
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB380:: @ 82FB380
|
||||
.byte 0x01, 0x02, 0x03
|
||||
|
||||
gUnknown_082FB383:: @ 82FB383
|
||||
.byte 0x01, 0x04, 0x05
|
||||
.byte 0x01, 0x08, 0x09
|
||||
.byte 0x01, 0x06, 0x07
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB38C:: @ 82FB38C
|
||||
.byte 0x0c, 0x06, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB390:: @ 82FB390
|
||||
.byte 0x09, 0x0a, 0x00, 0x00, 0x0f, 0x06, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB398:: @ 82FB398
|
||||
.byte 0x0c, 0x06, 0x00, 0x00, 0x12, 0x0a, 0x00, 0x00
|
||||
.byte 0x06, 0x0a, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB3A4:: @ 82FB3A4
|
||||
.byte 0x09, 0x0a, 0x00, 0x00, 0x0f, 0x06, 0x00, 0x00
|
||||
.byte 0x15, 0x0a, 0x00, 0x00, 0x03, 0x06, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB3B4:: @ 82FB3B4
|
||||
.byte 0x0c, 0x06, 0x00, 0x00, 0x12, 0x0a, 0x00, 0x00
|
||||
.byte 0x17, 0x06, 0x00, 0x00, 0x01, 0x06, 0x00, 0x00
|
||||
.byte 0x06, 0x0a, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB3C8:: @ 82FB3C8
|
||||
.4byte gUnknown_082FB38C
|
||||
.4byte gUnknown_082FB390
|
||||
.4byte gUnknown_082FB398
|
||||
.4byte gUnknown_082FB3A4
|
||||
.4byte gUnknown_082FB3B4
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB3DC:: @ 82FB3DC
|
||||
.4byte gText_1Colon
|
||||
.4byte gText_2Colon
|
||||
.4byte gText_3Colon
|
||||
.4byte gText_4Colon
|
||||
.4byte gText_5Colon
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB3F0:: @ 82FB3F0
|
||||
.2byte 0x005c, 0x0084, 0x00ac, 0x00d4
|
||||
|
||||
gUnknown_082FB3F8:: @ 82FB3F8
|
||||
.2byte 0x0021, 0x0031, 0x0041, 0x0051, 0x0061
|
||||
|
||||
gUnknown_082FB402:: @ 82FB402
|
||||
.2byte 0x0011, 0x0021, 0x0031, 0x0041, 0x0051
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB40C:: @ 82FB40C
|
||||
.4byte 0x00000000, sub_8029338
|
||||
.4byte 0x00000001, sub_8029440
|
||||
.4byte 0x00000002, sub_802988C
|
||||
.4byte 0x00000003, sub_802A010
|
||||
.4byte 0x00000004, sub_802A380
|
||||
.4byte 0x00000005, sub_802A454
|
||||
.4byte 0x00000006, sub_802A534
|
||||
.4byte 0x00000007, sub_802A588
|
||||
.4byte 0x00000008, unused_0
|
||||
.4byte 0x00000009, nullsub_16
|
||||
|
||||
.align 2
|
||||
gUnknown_082FB45C:: @ 82FB45C
|
||||
.byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x00, 0x00, 0x00
|
1658
data/pokenav.s
1658
data/pokenav.s
File diff suppressed because it is too large
Load Diff
@ -1,207 +0,0 @@
|
||||
gGiftRibbonDescriptionPart1_2003RegionalTourney:: @ 8623A74
|
||||
.string "2003 REGIONAL TOURNEY$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_Champion:: @ 8623A8A
|
||||
.string "CHAMPION RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_2003NationalTourney:: @ 8623A9A
|
||||
.string "2003 NATIONAL TOURNEY$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_2003GlobalCup:: @ 8623AB0
|
||||
.string "2003 GLOBAL CUP$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_RunnerUp:: @ 8623AC0
|
||||
.string "Runner-up RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_Semifinalist:: @ 8623AD1
|
||||
.string "Semifinalist RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_2004RegionalTourney:: @ 8623AE5
|
||||
.string "2004 REGIONAL TOURNEY$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_2004NationalTourney:: @ 8623AFB
|
||||
.string "2004 NATIONAL TOURNEY$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_2004GlobalCup:: @ 8623B11
|
||||
.string "2004 GLOBAL CUP$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_2005RegionalTourney:: @ 8623B21
|
||||
.string "2005 REGIONAL TOURNEY$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_2005NationalTourney:: @ 8623B37
|
||||
.string "2005 NATIONAL TOURNEY$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_2005GlobalCup:: @ 8623B4D
|
||||
.string "2005 GLOBAL CUP$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonBattleCup:: @ 8623B5D
|
||||
.string "POKéMON BATTLE CUP$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_Participation:: @ 8623B70
|
||||
.string "Participation RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonLeague:: @ 8623B85
|
||||
.string "POKéMON LEAGUE$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_AdvanceCup:: @ 8623B94
|
||||
.string "ADVANCE CUP$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonTournament:: @ 8623BA0
|
||||
.string "POKéMON Tournament$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_Participation2:: @ 8623BB3
|
||||
.string "Participation RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonEvent:: @ 8623BC8
|
||||
.string "POKéMON Event$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonFestival:: @ 8623BD6
|
||||
.string "POKéMON Festival$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_DifficultyClearing:: @ 8623BE7
|
||||
.string "Difficulty-clearing$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_Commemorative:: @ 8623BFB
|
||||
.string "Commemorative RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_ClearingAllChallenges:: @ 8623C10
|
||||
.string "RIBBON awarded for$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_ClearingAllChallenges:: @ 8623C23
|
||||
.string "clearing all challenges.$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_100StraightWin:: @ 8623C3C
|
||||
.string "100-straight Win$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_DarknessTower:: @ 8623C4D
|
||||
.string "DARKNESS TOWER Clear$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_RedTower:: @ 8623C62
|
||||
.string "RED TOWER Clear$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_BlackironTower:: @ 8623C72
|
||||
.string "BLACKIRON TOWER Clear$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_FinalTower:: @ 8623C88
|
||||
.string "FINAL TOWER Clear$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_LegendMaking:: @ 8623C9A
|
||||
.string "Legend-making$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonCenterTokyo:: @ 8623CA8
|
||||
.string "POKéMON CENTER TOKYO$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonCenterOsaka:: @ 8623CBD
|
||||
.string "POKéMON CENTER OSAKA$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonCenterNagoya:: @ 8623CD2
|
||||
.string "POKéMON CENTER NAGOYA$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_PokemonCenterNY:: @ 8623CE8
|
||||
.string "POKéMON CENTER NY$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_SummerHolidays:: @ 8623CFA
|
||||
.string "Summer Holidays RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_EmptyString:: @ 8623D11
|
||||
.string "$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_WinterHolidays:: @ 8623D12
|
||||
.string "Winter Holidays RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_SpringHolidays:: @ 8623D29
|
||||
.string "Spring Holidays RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_Evergreen:: @ 8623D40
|
||||
.string "Evergreen RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_SpecialHoliday:: @ 8623D51
|
||||
.string "Special Holiday RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_HardWorker:: @ 8623D68
|
||||
.string "Hard Worker RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_LotsOfFriends:: @ 8623D7B
|
||||
.string "Lots of Friends RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_FullOfEnergy:: @ 8623D92
|
||||
.string "Full of Energy RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_LovedPokemon:: @ 8623DA8
|
||||
.string "A commemorative RIBBON$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_LovedPokemon:: @ 8623DBF
|
||||
.string "for a loved POKéMON.$"
|
||||
|
||||
gGiftRibbonDescriptionPart1_LoveForPokemon:: @ 8623DD4
|
||||
.string "RIBBON that shows$"
|
||||
|
||||
gGiftRibbonDescriptionPart2_LoveForPokemon:: @ 8623DE6
|
||||
.string "love for POKéMON.$"
|
||||
|
||||
.align 2
|
||||
gGiftRibbonDescriptionPointers:: @ 8623DF8
|
||||
.4byte gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Participation
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Participation
|
||||
.4byte gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Champion
|
||||
.4byte gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_RunnerUp
|
||||
.4byte gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Semifinalist
|
||||
.4byte gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Participation
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonTournament, gGiftRibbonDescriptionPart2_Participation2
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonEvent, gGiftRibbonDescriptionPart2_Participation2
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonFestival, gGiftRibbonDescriptionPart2_Participation2
|
||||
.4byte gGiftRibbonDescriptionPart1_DifficultyClearing, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_ClearingAllChallenges, gGiftRibbonDescriptionPart2_ClearingAllChallenges
|
||||
.4byte gGiftRibbonDescriptionPart1_100StraightWin, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_DarknessTower, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_RedTower, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_BlackironTower, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_FinalTower, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_LegendMaking, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonCenterTokyo, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonCenterOsaka, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonCenterNagoya, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_PokemonCenterNY, gGiftRibbonDescriptionPart2_Commemorative
|
||||
.4byte gGiftRibbonDescriptionPart1_SummerHolidays, gGiftRibbonDescriptionPart2_EmptyString
|
||||
.4byte gGiftRibbonDescriptionPart1_WinterHolidays, gGiftRibbonDescriptionPart2_EmptyString
|
||||
.4byte gGiftRibbonDescriptionPart1_SpringHolidays, gGiftRibbonDescriptionPart2_EmptyString
|
||||
.4byte gGiftRibbonDescriptionPart1_Evergreen, gGiftRibbonDescriptionPart2_EmptyString
|
||||
.4byte gGiftRibbonDescriptionPart1_SpecialHoliday, gGiftRibbonDescriptionPart2_EmptyString
|
||||
.4byte gGiftRibbonDescriptionPart1_HardWorker, gGiftRibbonDescriptionPart2_EmptyString
|
||||
.4byte gGiftRibbonDescriptionPart1_LotsOfFriends, gGiftRibbonDescriptionPart2_EmptyString
|
||||
.4byte gGiftRibbonDescriptionPart1_FullOfEnergy, gGiftRibbonDescriptionPart2_EmptyString
|
||||
.4byte gGiftRibbonDescriptionPart1_LovedPokemon, gGiftRibbonDescriptionPart2_LovedPokemon
|
||||
.4byte gGiftRibbonDescriptionPart1_LoveForPokemon, gGiftRibbonDescriptionPart2_LoveForPokemon
|
@ -1,84 +0,0 @@
|
||||
gRibbonDescriptionPart1_Champion:: @ 862383C
|
||||
.string "CHAMPION-beating, HALL$"
|
||||
|
||||
gRibbonDescriptionPart2_Champion:: @ 8623853
|
||||
.string "OF FAME Member RIBBON$"
|
||||
|
||||
gRibbonDescriptionPart1_CoolContest:: @ 8623869
|
||||
.string "COOL CONTEST$"
|
||||
|
||||
gRibbonDescriptionPart1_BeautyContest:: @ 8623876
|
||||
.string "BEAUTY CONTEST$"
|
||||
|
||||
gRibbonDescriptionPart1_CuteContest:: @ 8623885
|
||||
.string "CUTE CONTEST$"
|
||||
|
||||
gRibbonDescriptionPart1_SmartContest:: @ 8623892
|
||||
.string "SMART CONTEST$"
|
||||
|
||||
gRibbonDescriptionPart1_ToughContest:: @ 86238A0
|
||||
.string "TOUGH CONTEST$"
|
||||
|
||||
gRibbonDescriptionPart2_NormalRank:: @ 86238AE
|
||||
.string "Normal Rank winner!$"
|
||||
|
||||
gRibbonDescriptionPart2_SuperRank:: @ 86238C2
|
||||
.string "Super Rank winner!$"
|
||||
|
||||
gRibbonDescriptionPart2_HyperRank:: @ 86238D5
|
||||
.string "Hyper Rank winner!$"
|
||||
|
||||
gRibbonDescriptionPart2_MasterRank:: @ 86238E8
|
||||
.string "Master Rank winner!$"
|
||||
|
||||
gRibbonDescriptionPart1_Winning:: @ 86238FC
|
||||
.string "For clearing LV50$"
|
||||
|
||||
gRibbonDescriptionPart2_Winning:: @ 862390E
|
||||
.string "at the BATTLE TOWER.$"
|
||||
|
||||
gRibbonDescriptionPart1_Victory:: @ 8623923
|
||||
.string "For clearing Open Level$"
|
||||
|
||||
gRibbonDescriptionPart2_Victory:: @ 862393B
|
||||
.string "at the BATTLE TOWER.$"
|
||||
|
||||
gRibbonDescriptionPart1_Artist:: @ 8623950
|
||||
.string "RIBBON for being chosen$"
|
||||
|
||||
gRibbonDescriptionPart2_Artist:: @ 8623968
|
||||
.string "as a super sketch model.$"
|
||||
|
||||
gRibbonDescriptionPart1_Effort:: @ 8623981
|
||||
.string "RIBBON awarded for$"
|
||||
|
||||
gRibbonDescriptionPart2_Effort:: @ 8623994
|
||||
.string "being a hard worker.$"
|
||||
|
||||
.align 2
|
||||
gRibbonDescriptionPointers:: @ 86239AC
|
||||
.4byte gRibbonDescriptionPart1_Champion, gRibbonDescriptionPart2_Champion
|
||||
.4byte gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_NormalRank
|
||||
.4byte gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_SuperRank
|
||||
.4byte gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_HyperRank
|
||||
.4byte gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_MasterRank
|
||||
.4byte gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_NormalRank
|
||||
.4byte gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_SuperRank
|
||||
.4byte gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_HyperRank
|
||||
.4byte gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_MasterRank
|
||||
.4byte gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_NormalRank
|
||||
.4byte gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_SuperRank
|
||||
.4byte gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_HyperRank
|
||||
.4byte gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_MasterRank
|
||||
.4byte gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_NormalRank
|
||||
.4byte gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_SuperRank
|
||||
.4byte gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_HyperRank
|
||||
.4byte gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_MasterRank
|
||||
.4byte gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_NormalRank
|
||||
.4byte gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_SuperRank
|
||||
.4byte gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_HyperRank
|
||||
.4byte gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_MasterRank
|
||||
.4byte gRibbonDescriptionPart1_Winning, gRibbonDescriptionPart2_Winning
|
||||
.4byte gRibbonDescriptionPart1_Victory, gRibbonDescriptionPart2_Victory
|
||||
.4byte gRibbonDescriptionPart1_Artist, gRibbonDescriptionPart2_Artist
|
||||
.4byte gRibbonDescriptionPart1_Effort, gRibbonDescriptionPart2_Effort
|
@ -1,113 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.section .rodata
|
||||
|
||||
.align 4
|
||||
|
||||
gUnknown_085DFA60:: @ 85DFA60
|
||||
.incbin "graphics/interface/85DFA60.bin"
|
||||
|
||||
gUnknown_085DFA80:: @ 85DFA80
|
||||
.incbin "graphics/interface/85DFA80.4bpp"
|
||||
|
||||
gUnknown_085DFB60:: @ 85DFB60
|
||||
.incbin "graphics/interface/85DFB60.bin"
|
||||
|
||||
gUnknown_085DFC0C:: @ 85DFC0C
|
||||
.incbin "graphics/interface/85DFC0C.bin"
|
||||
|
||||
gUnknown_085DFCB0:: @ 85DFCB0
|
||||
.4byte 22, 47, 33, 24, 23
|
||||
|
||||
gUnknown_085DFCC4:: @ 85DFCC4
|
||||
.byte 0, 4, 3, 2, 1
|
||||
|
||||
gUnknown_085DFCC9:: @ 85DFCC9
|
||||
.byte 0, 8, 1
|
||||
|
||||
gUnknown_085DFCCC:: @ 85DFCCC
|
||||
.4byte 0x1F8
|
||||
.4byte 0x31E1
|
||||
.4byte 0x4021DF
|
||||
.4byte 0x1172
|
||||
|
||||
gUnknown_085DFCDC:: @ 85DFCDC
|
||||
window_template 0, 0xD, 1, 0xD, 4, 0xF, 1
|
||||
window_template 0, 0, 0xE, 0xB, 2, 0xF, 0x35
|
||||
window_template 0, 1, 0x11, 0x1C, 2, 0xF, 0x4B
|
||||
null_window_template
|
||||
|
||||
sUsePokeblockYesNoWinTemplate:: @ 85DFCFC
|
||||
window_template 0, 0x18, 0xB, 5, 4, 0xF, 0x83
|
||||
|
||||
sContestStatNames:: @ 85DFD04
|
||||
.4byte gText_Coolness
|
||||
.4byte gText_Toughness
|
||||
.4byte gText_Smartness
|
||||
.4byte gText_Cuteness
|
||||
.4byte gText_Beauty3
|
||||
|
||||
gSpriteSheet_ConditionUpDown:: @ 85DFD18
|
||||
obj_tiles gUsePokeblockUpDown_Gfx, 0x200, 0
|
||||
|
||||
gSpritePalette_ConditionUpDown:: @ 85DFD20
|
||||
obj_pal gUsePokeblockUpDown_Pal, 0
|
||||
|
||||
gUnknown_085DFD28:: @ 85DFD28
|
||||
.2byte 0x9c, 0x24
|
||||
.2byte 0x75, 0x3b
|
||||
.2byte 0x75, 0x76
|
||||
.2byte 0xc5, 0x76
|
||||
.2byte 0xc5, 0x3b
|
||||
|
||||
gUnknown_085DFD3C:: @ 85DFD3C
|
||||
.2byte 0x4000
|
||||
.2byte 0x8000
|
||||
.2byte 0x400
|
||||
.2byte 0
|
||||
|
||||
gUnknown_085DFD44:: @ 85DFD44
|
||||
obj_image_anim_frame 0, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_085DFD4C:: @ 85DFD4C
|
||||
obj_image_anim_frame 8, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_085DFD54:: @ 85DFD54
|
||||
.4byte gUnknown_085DFD44
|
||||
.4byte gUnknown_085DFD4C
|
||||
|
||||
gSpriteTemplate_085DFD5C:: @ 85DFD5C
|
||||
spr_template 0, 0, gUnknown_085DFD3C, gUnknown_085DFD54, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
|
||||
|
||||
gUnknown_085DFD74:: @ 85DFD74
|
||||
.2byte 0x4000
|
||||
.2byte 0xC000
|
||||
.2byte 0x400
|
||||
.2byte 0
|
||||
|
||||
gUnknown_085DFD7C:: @ 85DFD7C
|
||||
obj_image_anim_frame 0, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_085DFD84:: @ 85DFD84
|
||||
obj_image_anim_frame 32, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_085DFD8C:: @ 85DFD8C
|
||||
obj_image_anim_frame 64, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_085DFD94:: @ 85DFD94
|
||||
.4byte gUnknown_085DFD7C
|
||||
.4byte gUnknown_085DFD84
|
||||
.4byte gUnknown_085DFD8C
|
||||
|
||||
gUnknown_085DFDA0:: @ 85DFDA0
|
||||
spr_template 1, 1, gUnknown_085DFD74, gUnknown_085DFD94, NULL, gDummySpriteAffineAnimTable, sub_8168374
|
||||
|
||||
gUnknown_085DFDB8:: @ 85DFDB8
|
||||
.4byte gUsePokeblockCondition_Pal
|
||||
.4byte 1
|
@ -1 +1,3 @@
|
||||
0000000000000000000000000000000 0
0000000000000000000
00000000000000000000
00000000000000000000000000000
|
||||
000000000000000000000000000000000 0 0 0 00 000000000
|
||||
00000 0 0 0 0 00 000000000
|
||||
000000 0 0 0 00 0000000000000000000000
|
@ -1,3 +1 @@
|
||||
000000000000000000000000000000000 0 0 0 00 000000000
|
||||
00000 0 0 0 0 00 000000000
|
||||
000000 0 0 0 00 0000000000000000000000
|
||||
0000000000000000000000000000000 0
0000000000000000000
00000000000000000000
00000000000000000000000000000
|
@ -1,3 +1,3 @@
|
||||
000000000000000000000000000000000000000000 00 00 0
000000
|
||||
0000000000
|
||||
00000000 0 00
00000000000000000000000000
|
||||
000000000000000000000000000000000000
|
||||
000000000 00 0 000000
|
||||
00000000000000000000000 0 0000000000000000000000
|
@ -1,3 +1,3 @@
|
||||
000000000000000000000000000000000000
|
||||
000000000 00 0 000000
|
||||
00000000000000000000000 0 0000000000000000000000
|
||||
000000000000000000000000000000000000000000 00 00 0
000000
|
||||
0000000000
|
||||
00000000 0 00
00000000000000000000000000
|
@ -1 +1,3 @@
|
||||
0000000000000000000000000000000000000000000000000000000000000000000000000000000000 0 00000000000000000
|
||||
00000000000000000000000000 0
00000000
|
||||
0000000000
|
||||
000000000 000000000000 0 000000000000000000000000000000000
|
@ -1,3 +1 @@
|
||||
00000000000000000000000000 0
00000000
|
||||
0000000000
|
||||
000000000 000000000000 0 000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000000000000000000000 0 00000000000000000
|
@ -1,6 +1,8 @@
|
||||
#ifndef GUARD_BERRY_CRUSH_H
|
||||
#define GUARD_BERRY_CRUSH_H
|
||||
|
||||
#include "main.h"
|
||||
|
||||
void sub_8020C70(MainCallback callback);
|
||||
|
||||
#endif // GUARD_BERRY_CRUSH_H
|
||||
|
8
include/dodrio_berry_picking.h
Normal file
8
include/dodrio_berry_picking.h
Normal file
@ -0,0 +1,8 @@
|
||||
#ifndef GUARD_DODRIO_BERRY_PICKING_H
|
||||
#define GUARD_DODRIO_BERRY_PICKING_H
|
||||
|
||||
void sub_802493C(u16 a0, void (*callback)(void));
|
||||
void sub_8027A5C(void);
|
||||
void sub_8027AAC(void);
|
||||
|
||||
#endif // GUARD_DODRIO_BERRY_PICKING_H
|
@ -4939,6 +4939,9 @@ extern const u32 gLinkMiscMenu_Tilemap[];
|
||||
// Use Pokeblock
|
||||
extern const u8 gPokenavConditionCancel_Gfx[];
|
||||
extern const u16 gPokenavConditionCancel_Pal[];
|
||||
extern const u8 gUsePokeblockUpDown_Gfx[];
|
||||
extern const u16 gUsePokeblockUpDown_Pal[];
|
||||
extern const u16 gUsePokeblockCondition_Pal[];
|
||||
|
||||
// Berry Crush
|
||||
extern const u32 gUnknown_08DE34B8[];
|
||||
|
@ -25,7 +25,7 @@ void InitStandardTextBoxWindows(void);
|
||||
void sub_8197200(void);
|
||||
u16 RunTextPrintersAndIsPrinter0Active(void);
|
||||
void sub_81973A4(void);
|
||||
void DrawDialogueFrame(u8, u8);
|
||||
void DrawDialogueFrame(u8 windowId, bool8 copyToVram);
|
||||
void ClearStdWindowAndFrame(u8 windowId, bool8 copyToVram);
|
||||
u16 AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *str, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16), u8 fgColor, u8 bgColor, u8 shadowColor);
|
||||
void PrintPlayerNameOnWindow(u8, const u8*, u16, u16);
|
||||
|
@ -107,7 +107,7 @@ void sub_81C8234(void);
|
||||
|
||||
// pokenav_match_call_data.c
|
||||
bool32 sub_81D17E8(u32 idx);
|
||||
u8 sub_81D16DC(u32 idx);
|
||||
u8 MatchCallMapSecGetByIndex(u32 idx);
|
||||
bool32 sub_81D1BF8(u32 idx);
|
||||
bool32 MatchCallFlagGetByIndex(u32 idx);
|
||||
u32 MatchCall_GetRematchTableIdx(u32 idx);
|
||||
|
@ -2708,6 +2708,28 @@ extern const u8 gText_Symbols[];
|
||||
extern const u8 gText_Register2[];
|
||||
extern const u8 gText_Exit2[];
|
||||
|
||||
// Dodrio Berry Picking
|
||||
extern const u8 gText_BerryPickingRecords[];
|
||||
extern const u8 gText_BerriesPicked[];
|
||||
extern const u8 gText_BerriesInRowFivePlayers[];
|
||||
extern const u8 gText_BestScore[];
|
||||
extern const u8 gText_1Colon[];
|
||||
extern const u8 gText_2Colon[];
|
||||
extern const u8 gText_3Colon[];
|
||||
extern const u8 gText_4Colon[];
|
||||
extern const u8 gText_5Colon[];
|
||||
extern const u8 gText_SpacePoints[];
|
||||
extern const u8 gText_10P30P50P50P[];
|
||||
extern const u8 gText_AnnouncingPrizes[];
|
||||
extern const u8 gText_AnnouncingRankings[];
|
||||
extern const u8 gText_FirstPlacePrize[];
|
||||
extern const u8 gText_CantHoldAnyMore[];
|
||||
extern const u8 gText_FilledStorageSpace[];
|
||||
extern const u8 gText_BerryPickingResults[];
|
||||
extern const u8 gText_WantToPlayAgain[];
|
||||
extern const u8 gText_CommunicationStandby3[];
|
||||
extern const u8 gText_SomeoneDroppedOut[];
|
||||
|
||||
// Pokemon jump
|
||||
extern const u8 gText_WantToPlayAgain2[];
|
||||
extern const u8 gText_SomeoneDroppedOut2[];
|
||||
@ -2729,4 +2751,32 @@ extern const u8 gText_NumberOfBattles[];
|
||||
extern const u8 gText_Unknown[];
|
||||
extern const u8 gText_TrainerCloseBy[];
|
||||
|
||||
// pokenav_unk_2
|
||||
extern const u8 gUnknown_085EBCC5[];
|
||||
extern const u8 gUnknown_085EBCE8[];
|
||||
extern const u8 gUnknown_085EBD01[];
|
||||
extern const u8 gUnknown_085EBD1C[];
|
||||
extern const u8 gUnknown_085EBD34[];
|
||||
extern const u8 gUnknown_085EBD83[];
|
||||
extern const u8 gUnknown_085EBDA2[];
|
||||
extern const u8 gUnknown_085EBDBF[];
|
||||
extern const u8 gUnknown_085EBDDB[];
|
||||
extern const u8 gUnknown_085EBDEE[];
|
||||
extern const u8 gUnknown_085EBE06[];
|
||||
extern const u8 gUnknown_085EBE19[];
|
||||
extern const u8 gUnknown_085EBE2D[];
|
||||
extern const u8 gUnknown_085EBE41[];
|
||||
|
||||
// pokenav_unk_4
|
||||
extern const u8 gUnknown_085EC017[];
|
||||
extern const u8 gUnknown_085EC01C[];
|
||||
extern const u8 gUnknown_085EC022[];
|
||||
|
||||
// use_pokeblock
|
||||
extern const u8 gText_Coolness[];
|
||||
extern const u8 gText_Toughness[];
|
||||
extern const u8 gText_Smartness[];
|
||||
extern const u8 gText_Cuteness[];
|
||||
extern const u8 gText_Beauty3[];
|
||||
|
||||
#endif // GUARD_STRINGS_H
|
||||
|
@ -75,7 +75,6 @@ SECTIONS {
|
||||
asm/berry_crush.o(.text*);
|
||||
src/berry_powder.o(.text*);
|
||||
src/dodrio_berry_picking.o(.text*);
|
||||
asm/dodrio_berry_picking.o(.text*);
|
||||
src/pokemon_jump.o(.text*);
|
||||
src/rtc.o(.text*);
|
||||
src/main_menu.o(.text*);
|
||||
@ -447,7 +446,6 @@ SECTIONS {
|
||||
data/berry_crush.o(.rodata);
|
||||
data/berry_powder.o(.rodata);
|
||||
src/dodrio_berry_picking.o(.rodata);
|
||||
data/dodrio_berry_picking.o(.rodata);
|
||||
src/pokemon_jump.o(.rodata);
|
||||
src/rtc.o(.rodata);
|
||||
src/main_menu.o(.rodata);
|
||||
@ -599,7 +597,6 @@ SECTIONS {
|
||||
src/roamer.o(.rodata);
|
||||
src/battle_tower.o(.rodata);
|
||||
src/use_pokeblock.o(.rodata);
|
||||
data/use_pokeblock.o(.rodata);
|
||||
src/battle_controller_wally.o(.rodata);
|
||||
src/player_pc.o(.rodata);
|
||||
src/intro.o(.rodata);
|
||||
@ -657,10 +654,13 @@ SECTIONS {
|
||||
src/pokenav_main_menu.o(.rodata);
|
||||
src/pokenav_match_call_ui.o(.rodata);
|
||||
src/pokenav_unk_1.o(.rodata);
|
||||
data/pokenav.o(.rodata);
|
||||
src/pokenav_unk_2.o(.rodata);
|
||||
src/pokenav_unk_3.o(.rodata);
|
||||
src/pokenav_unk_4.o(.rodata);
|
||||
src/pokenav_unk_5.o(.rodata);
|
||||
src/pokenav_unk_7.o(.rodata);
|
||||
src/pokenav_unk_8.o(.rodata);
|
||||
src/pokenav_unk_9.o(.rodata);
|
||||
src/pokenav_unk_10.o(.rodata);
|
||||
src/pokenav_match_call_data.o(.rodata);
|
||||
src/menu_specialized.o(.rodata);
|
||||
|
@ -5315,21 +5315,19 @@ static void sub_8102D8C(s16 a, s16 b, s16* c, s16* d, s8 e)
|
||||
|
||||
static void sub_8102DE4(struct Sprite* sprite)
|
||||
{
|
||||
int b;
|
||||
s16 a;
|
||||
int c;
|
||||
s16 y, yDelta;
|
||||
u8 index;
|
||||
|
||||
sprite->data[0]++;
|
||||
b = sprite->data[0] * 5 - ((sprite->data[0] * 5 / 256) << 8);
|
||||
yDelta = sprite->data[0] * 5 - ((sprite->data[0] * 5 / 256) << 8);
|
||||
sprite->data[4] += sprite->data[6];
|
||||
sprite->data[5] += sprite->data[7];
|
||||
sprite->pos1.x = sprite->data[4] >> 4;
|
||||
sprite->pos1.y = sprite->data[5] >> 4;
|
||||
sprite->pos2.y = Sin(b, 15);
|
||||
a = (u16)sprite->pos1.y;
|
||||
c = (u16)sprite->pos1.x;
|
||||
sprite->pos2.y = Sin(yDelta, 15);
|
||||
|
||||
if ((u32)((c + 16) << 16) > (0x110) << 16 || a < -16 || a > 0x80)
|
||||
y = sprite->pos1.y;
|
||||
if (sprite->pos1.x < -16 || sprite->pos1.x > 256 || y < -16 || y > 128)
|
||||
{
|
||||
DestroySpriteAndMatrix(sprite);
|
||||
}
|
||||
@ -5350,12 +5348,8 @@ static void sub_8102DE4(struct Sprite* sprite)
|
||||
|
||||
void sub_8102EB0(struct Sprite* sprite)
|
||||
{
|
||||
int a;
|
||||
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT)
|
||||
{
|
||||
a = gBattleAnimArgs[1];
|
||||
*(u16 *)&gBattleAnimArgs[1] = -a;
|
||||
}
|
||||
gBattleAnimArgs[1] *= -1;
|
||||
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1];
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2];
|
||||
@ -5541,8 +5535,8 @@ static void sub_8103300(struct Sprite* sprite)
|
||||
|
||||
static void sub_8103320(struct Sprite* sprite)
|
||||
{
|
||||
s16 temp;
|
||||
s16 temp2;
|
||||
s16 x1, x2;
|
||||
|
||||
sprite->data[1] += 4;
|
||||
if (sprite->data[1] > 254)
|
||||
{
|
||||
@ -5564,20 +5558,21 @@ static void sub_8103320(struct Sprite* sprite)
|
||||
if (sprite->data[1] > 0x9F)
|
||||
sprite->subpriority = sprite->data[2];
|
||||
|
||||
temp = gSineTable[sprite->data[1]];
|
||||
sprite->pos2.x = (temp2 = temp >> 3) + (temp2 >> 1);
|
||||
x1 = gSineTable[sprite->data[1]];
|
||||
x2 = x1 >> 3;
|
||||
sprite->pos2.x = (x1 >> 3) + (x2 >> 1);
|
||||
}
|
||||
|
||||
void sub_8103390(struct Sprite* sprite)
|
||||
{
|
||||
u8 bank;
|
||||
u8 battler;
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
bank = gBattleAnimAttacker;
|
||||
battler = gBattleAnimAttacker;
|
||||
else
|
||||
bank = gBattleAnimTarget;
|
||||
battler = gBattleAnimTarget;
|
||||
|
||||
sub_810310C(bank, sprite);
|
||||
if (GetBattlerSide(bank) == B_SIDE_PLAYER)
|
||||
sub_810310C(battler, sprite);
|
||||
if (GetBattlerSide(battler) == B_SIDE_PLAYER)
|
||||
{
|
||||
StartSpriteAnim(sprite, 0);
|
||||
sprite->data[0] = 2;
|
||||
|
@ -2504,13 +2504,10 @@ void sub_815BE04(struct Sprite *sprite)
|
||||
|
||||
static void sub_815BF44(struct Sprite *sprite)
|
||||
{
|
||||
int var0;
|
||||
s8 var1;
|
||||
|
||||
var0 = (u16)sprite->data[2] + (u16)sprite->data[3];
|
||||
var1 = var0 >> 8;
|
||||
sprite->pos2.y -= var1;
|
||||
sprite->data[3] = var0 & 0xFF;
|
||||
s16 delta = sprite->data[3] + sprite->data[2];
|
||||
sprite->pos2.y -= delta >> 8;
|
||||
sprite->data[3] += sprite->data[2];
|
||||
sprite->data[3] &= 0xFF;
|
||||
if (sprite->data[4] == 0 && sprite->pos2.y < -8)
|
||||
{
|
||||
gSprites[sprite->data[6]].invisible = 0;
|
||||
@ -2543,19 +2540,12 @@ static void sub_815BFF4(struct Sprite *sprite)
|
||||
|
||||
static void sub_815C050(struct Sprite *sprite)
|
||||
{
|
||||
u16 d2;
|
||||
register u16 d3 asm("r1");
|
||||
int var0;
|
||||
s8 var1;
|
||||
|
||||
if (!sprite->invisible)
|
||||
{
|
||||
d2 = sprite->data[2];
|
||||
d3 = sprite->data[3];
|
||||
var0 = d2 + d3;
|
||||
var1 = var0 >> 8;
|
||||
sprite->pos2.y -= var1;
|
||||
sprite->data[3] = var0 & 0xFF;
|
||||
s16 delta = sprite->data[3] + sprite->data[2];
|
||||
sprite->pos2.y -= delta >> 8;
|
||||
sprite->data[3] += sprite->data[2];
|
||||
sprite->data[3] &= 0xFF;
|
||||
if (--sprite->data[1] == -1)
|
||||
{
|
||||
sprite->invisible = 1;
|
||||
@ -4322,7 +4312,7 @@ static void AnimSmellingSaltExclamationStep(struct Sprite *sprite)
|
||||
|
||||
// Claps a hand several times.
|
||||
// arg 0: which hand
|
||||
// arg 1:
|
||||
// arg 1:
|
||||
void AnimHelpingHandClap(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -684,7 +684,7 @@ static void sub_8130760(u8 contestResult)
|
||||
|
||||
gUnknown_030061A0.var_16 = 2;
|
||||
gUnknown_030061A0.var_0 = contestResult;
|
||||
gUnknown_030061A0.var_10 = 0x6010000;
|
||||
gUnknown_030061A0.var_10 = OBJ_VRAM0;
|
||||
|
||||
sub_8124F2C(&gUnknown_030061A0);
|
||||
sub_81261A4(&gUnknown_030061A0);
|
||||
|
113
src/data/region_map/city_map_entries.h
Normal file
113
src/data/region_map/city_map_entries.h
Normal file
@ -0,0 +1,113 @@
|
||||
const struct CityMapEntry gPokenavCityMaps[] =
|
||||
{
|
||||
{
|
||||
.mapSecId = 0,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Littleroot_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 1,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Oldale_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 2,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Dewford_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 3,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Lavarige_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 4,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Fallarbor_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 5,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Verdanturf_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 6,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Pacifidlog_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 7,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Petalburg_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 8,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Slateport_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 8,
|
||||
.index = 1,
|
||||
.tilemap = gPokenavCityMap_Slateport_1,
|
||||
},
|
||||
{
|
||||
.mapSecId = 9,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Mauville_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 9,
|
||||
.index = 1,
|
||||
.tilemap = gPokenavCityMap_Mauville_1,
|
||||
},
|
||||
{
|
||||
.mapSecId = 10,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Rustboro_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 10,
|
||||
.index = 1,
|
||||
.tilemap = gPokenavCityMap_Rustboro_1,
|
||||
},
|
||||
{
|
||||
.mapSecId = 11,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Fortree_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 12,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Lilycove_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 12,
|
||||
.index = 1,
|
||||
.tilemap = gPokenavCityMap_Lilycove_1,
|
||||
},
|
||||
{
|
||||
.mapSecId = 13,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Mossdeep_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 13,
|
||||
.index = 1,
|
||||
.tilemap = gPokenavCityMap_Mossdeep_1,
|
||||
},
|
||||
{
|
||||
.mapSecId = 14,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_Sootopolis_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 15,
|
||||
.index = 0,
|
||||
.tilemap = gPokenavCityMap_EverGrande_0,
|
||||
},
|
||||
{
|
||||
.mapSecId = 15,
|
||||
.index = 1,
|
||||
.tilemap = gPokenavCityMap_EverGrande_1,
|
||||
},
|
||||
};
|
22
src/data/region_map/city_map_tilemaps.h
Normal file
22
src/data/region_map/city_map_tilemaps.h
Normal file
@ -0,0 +1,22 @@
|
||||
const u32 gPokenavCityMap_Lavarige_0[] = INCBIN_U32("graphics/pokenav/city_maps/lavaridge_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Fallarbor_0[] = INCBIN_U32("graphics/pokenav/city_maps/fallarbor_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Fortree_0[] = INCBIN_U32("graphics/pokenav/city_maps/fortree_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Slateport_0[] = INCBIN_U32("graphics/pokenav/city_maps/slateport_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Slateport_1[] = INCBIN_U32("graphics/pokenav/city_maps/slateport_1.bin.lz");
|
||||
const u32 gPokenavCityMap_Rustboro_0[] = INCBIN_U32("graphics/pokenav/city_maps/rustboro_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Rustboro_1[] = INCBIN_U32("graphics/pokenav/city_maps/rustboro_1.bin.lz");
|
||||
const u32 gPokenavCityMap_Pacifidlog_0[] = INCBIN_U32("graphics/pokenav/city_maps/pacifidlog_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Mauville_1[] = INCBIN_U32("graphics/pokenav/city_maps/mauville_1.bin.lz");
|
||||
const u32 gPokenavCityMap_Mauville_0[] = INCBIN_U32("graphics/pokenav/city_maps/mauville_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Oldale_0[] = INCBIN_U32("graphics/pokenav/city_maps/oldale_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Lilycove_1[] = INCBIN_U32("graphics/pokenav/city_maps/lilycove_1.bin.lz");
|
||||
const u32 gPokenavCityMap_Lilycove_0[] = INCBIN_U32("graphics/pokenav/city_maps/lilycove_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Littleroot_0[] = INCBIN_U32("graphics/pokenav/city_maps/littleroot_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Dewford_0[] = INCBIN_U32("graphics/pokenav/city_maps/dewford_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Sootopolis_0[] = INCBIN_U32("graphics/pokenav/city_maps/sootopolis_0.bin.lz");
|
||||
const u32 gPokenavCityMap_EverGrande_0[] = INCBIN_U32("graphics/pokenav/city_maps/ever_grande_0.bin.lz");
|
||||
const u32 gPokenavCityMap_EverGrande_1[] = INCBIN_U32("graphics/pokenav/city_maps/ever_grande_1.bin.lz");
|
||||
const u32 gPokenavCityMap_Verdanturf_0[] = INCBIN_U32("graphics/pokenav/city_maps/verdanturf_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Mossdeep_1[] = INCBIN_U32("graphics/pokenav/city_maps/mossdeep_1.bin.lz");
|
||||
const u32 gPokenavCityMap_Mossdeep_0[] = INCBIN_U32("graphics/pokenav/city_maps/mossdeep_0.bin.lz");
|
||||
const u32 gPokenavCityMap_Petalburg_0[] = INCBIN_U32("graphics/pokenav/city_maps/petalburg_0.bin.lz");
|
115
src/data/text/gift_ribbon_descriptions.h
Normal file
115
src/data/text/gift_ribbon_descriptions.h
Normal file
@ -0,0 +1,115 @@
|
||||
const u8 gGiftRibbonDescriptionPart1_2003RegionalTourney[] = _("2003 REGIONAL TOURNEY");
|
||||
const u8 gGiftRibbonDescriptionPart2_Champion[] = _("CHAMPION RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_2003NationalTourney[] = _("2003 NATIONAL TOURNEY");
|
||||
const u8 gGiftRibbonDescriptionPart1_2003GlobalCup[] = _("2003 GLOBAL CUP");
|
||||
const u8 gGiftRibbonDescriptionPart2_RunnerUp[] = _("Runner-up RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart2_Semifinalist[] = _("Semifinalist RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_2004RegionalTourney[] = _("2004 REGIONAL TOURNEY");
|
||||
const u8 gGiftRibbonDescriptionPart1_2004NationalTourney[] = _("2004 NATIONAL TOURNEY");
|
||||
const u8 gGiftRibbonDescriptionPart1_2004GlobalCup[] = _("2004 GLOBAL CUP");
|
||||
const u8 gGiftRibbonDescriptionPart1_2005RegionalTourney[] = _("2005 REGIONAL TOURNEY");
|
||||
const u8 gGiftRibbonDescriptionPart1_2005NationalTourney[] = _("2005 NATIONAL TOURNEY");
|
||||
const u8 gGiftRibbonDescriptionPart1_2005GlobalCup[] = _("2005 GLOBAL CUP");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonBattleCup[] = _("POKéMON BATTLE CUP");
|
||||
const u8 gGiftRibbonDescriptionPart2_Participation[] = _("Participation RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonLeague[] = _("POKéMON LEAGUE");
|
||||
const u8 gGiftRibbonDescriptionPart1_AdvanceCup[] = _("ADVANCE CUP");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonTournament[] = _("POKéMON Tournament");
|
||||
const u8 gGiftRibbonDescriptionPart2_Participation2[] = _("Participation RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonEvent[] = _("POKéMON Event");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonFestival[] = _("POKéMON Festival");
|
||||
const u8 gGiftRibbonDescriptionPart1_DifficultyClearing[] = _("Difficulty-clearing");
|
||||
const u8 gGiftRibbonDescriptionPart2_Commemorative[] = _("Commemorative RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_ClearingAllChallenges[] = _("RIBBON awarded for");
|
||||
const u8 gGiftRibbonDescriptionPart2_ClearingAllChallenges[] = _("clearing all challenges.");
|
||||
const u8 gGiftRibbonDescriptionPart1_100StraightWin[] = _("100-straight Win");
|
||||
const u8 gGiftRibbonDescriptionPart1_DarknessTower[] = _("DARKNESS TOWER Clear");
|
||||
const u8 gGiftRibbonDescriptionPart1_RedTower[] = _("RED TOWER Clear");
|
||||
const u8 gGiftRibbonDescriptionPart1_BlackironTower[] = _("BLACKIRON TOWER Clear");
|
||||
const u8 gGiftRibbonDescriptionPart1_FinalTower[] = _("FINAL TOWER Clear");
|
||||
const u8 gGiftRibbonDescriptionPart1_LegendMaking[] = _("Legend-making");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonCenterTokyo[] = _("POKéMON CENTER TOKYO");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonCenterOsaka[] = _("POKéMON CENTER OSAKA");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonCenterNagoya[] = _("POKéMON CENTER NAGOYA");
|
||||
const u8 gGiftRibbonDescriptionPart1_PokemonCenterNY[] = _("POKéMON CENTER NY");
|
||||
const u8 gGiftRibbonDescriptionPart1_SummerHolidays[] = _("Summer Holidays RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart2_EmptyString[] = _("");
|
||||
const u8 gGiftRibbonDescriptionPart1_WinterHolidays[] = _("Winter Holidays RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_SpringHolidays[] = _("Spring Holidays RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_Evergreen[] = _("Evergreen RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_SpecialHoliday[] = _("Special Holiday RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_HardWorker[] = _("Hard Worker RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_LotsOfFriends[] = _("Lots of Friends RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_FullOfEnergy[] = _("Full of Energy RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart1_LovedPokemon[] = _("A commemorative RIBBON");
|
||||
const u8 gGiftRibbonDescriptionPart2_LovedPokemon[] = _("for a loved POKéMON.");
|
||||
const u8 gGiftRibbonDescriptionPart1_LoveForPokemon[] = _("RIBBON that shows");
|
||||
const u8 gGiftRibbonDescriptionPart2_LoveForPokemon[] = _("love for POKéMON.");
|
||||
|
||||
const u8 *const gGiftRibbonDescriptionPointers[][2] =
|
||||
{
|
||||
{gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Participation},
|
||||
{gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Participation},
|
||||
{gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Champion},
|
||||
{gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_RunnerUp},
|
||||
{gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Semifinalist},
|
||||
{gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Participation},
|
||||
{gGiftRibbonDescriptionPart1_PokemonTournament, gGiftRibbonDescriptionPart2_Participation2},
|
||||
{gGiftRibbonDescriptionPart1_PokemonEvent, gGiftRibbonDescriptionPart2_Participation2},
|
||||
{gGiftRibbonDescriptionPart1_PokemonFestival, gGiftRibbonDescriptionPart2_Participation2},
|
||||
{gGiftRibbonDescriptionPart1_DifficultyClearing, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_ClearingAllChallenges, gGiftRibbonDescriptionPart2_ClearingAllChallenges},
|
||||
{gGiftRibbonDescriptionPart1_100StraightWin, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_DarknessTower, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_RedTower, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_BlackironTower, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_FinalTower, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_LegendMaking, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_PokemonCenterTokyo, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_PokemonCenterOsaka, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_PokemonCenterNagoya, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_PokemonCenterNY, gGiftRibbonDescriptionPart2_Commemorative},
|
||||
{gGiftRibbonDescriptionPart1_SummerHolidays, gGiftRibbonDescriptionPart2_EmptyString},
|
||||
{gGiftRibbonDescriptionPart1_WinterHolidays, gGiftRibbonDescriptionPart2_EmptyString},
|
||||
{gGiftRibbonDescriptionPart1_SpringHolidays, gGiftRibbonDescriptionPart2_EmptyString},
|
||||
{gGiftRibbonDescriptionPart1_Evergreen, gGiftRibbonDescriptionPart2_EmptyString},
|
||||
{gGiftRibbonDescriptionPart1_SpecialHoliday, gGiftRibbonDescriptionPart2_EmptyString},
|
||||
{gGiftRibbonDescriptionPart1_HardWorker, gGiftRibbonDescriptionPart2_EmptyString},
|
||||
{gGiftRibbonDescriptionPart1_LotsOfFriends, gGiftRibbonDescriptionPart2_EmptyString},
|
||||
{gGiftRibbonDescriptionPart1_FullOfEnergy, gGiftRibbonDescriptionPart2_EmptyString},
|
||||
{gGiftRibbonDescriptionPart1_LovedPokemon, gGiftRibbonDescriptionPart2_LovedPokemon},
|
||||
{gGiftRibbonDescriptionPart1_LoveForPokemon, gGiftRibbonDescriptionPart2_LoveForPokemon}
|
||||
};
|
476
src/data/text/match_call_messages.h
Normal file
476
src/data/text/match_call_messages.h
Normal file
@ -0,0 +1,476 @@
|
||||
#define MCFLAVOR(name) {gMatchCallFlavorText_##name##_Strategy, \
|
||||
gMatchCallFlavorText_##name##_Pokemon, \
|
||||
gMatchCallFlavorText_##name##_Intro1, \
|
||||
gMatchCallFlavorText_##name##_Intro2}
|
||||
|
||||
const u8 gMatchCallFlavorText_AromaLady_Rose_Strategy[] = _("Becalm fighting emotions.");
|
||||
const u8 gMatchCallFlavorText_AromaLady_Rose_Pokemon[] = _("Fragrant GRASS POKéMON.");
|
||||
const u8 gMatchCallFlavorText_AromaLady_Rose_Intro1[] = _("Soothing aromas make the");
|
||||
const u8 gMatchCallFlavorText_AromaLady_Rose_Intro2[] = _("body and mind healthy.");
|
||||
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Andres_Strategy[] = _("I'm not very good at this.");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Andres_Pokemon[] = _("Ruin-exploration partners.");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Andres_Intro1[] = _("I am searching for undersea");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Andres_Intro2[] = _("ruins and relics.");
|
||||
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Dusty_Strategy[] = _("Overwhelm with power!");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Dusty_Pokemon[] = _("Craggy ROCK POKéMON.");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Dusty_Intro1[] = _("In search of ancient lore,");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Dusty_Intro2[] = _("I travel the world.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Tuber_Lola_Strategy[] = _("I'm going to try hard!");
|
||||
const u8 gMatchCallFlavorText_Tuber_Lola_Pokemon[] = _("Good swimmer POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Tuber_Lola_Intro1[] = _("I wish I could swim without");
|
||||
const u8 gMatchCallFlavorText_Tuber_Lola_Intro2[] = _("using an inner tube.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Tuber_Ricky_Strategy[] = _("I don't know. I'll try hard.");
|
||||
const u8 gMatchCallFlavorText_Tuber_Ricky_Pokemon[] = _("WATER POKéMON are buddies.");
|
||||
const u8 gMatchCallFlavorText_Tuber_Ricky_Intro1[] = _("It's not like I can't swim.");
|
||||
const u8 gMatchCallFlavorText_Tuber_Ricky_Intro2[] = _("I just like my inner tube.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SisAndBro_LilaAndRoy_Strategy[] = _("We split our duties.");
|
||||
const u8 gMatchCallFlavorText_SisAndBro_LilaAndRoy_Pokemon[] = _("We like friendly POKéMON.");
|
||||
const u8 gMatchCallFlavorText_SisAndBro_LilaAndRoy_Intro1[] = _("We enjoy POKéMON together");
|
||||
const u8 gMatchCallFlavorText_SisAndBro_LilaAndRoy_Intro2[] = _("as sister and brother.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Cristin_Strategy[] = _("I finish with power moves!");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Cristin_Pokemon[] = _("A mix of different types.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Cristin_Intro1[] = _("I aim to become the ultimate");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Cristin_Intro2[] = _("TRAINER!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Brooke_Strategy[] = _("Exploit the foe's weakness.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Brooke_Pokemon[] = _("Balance is crucial.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Brooke_Intro1[] = _("My goal is to become the");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Brooke_Intro2[] = _("POKéMON CHAMPION.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Wilton_Strategy[] = _("Upset the opponent.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Wilton_Pokemon[] = _("Type doesn't matter.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Wilton_Intro1[] = _("I'm a top student at the");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Wilton_Intro2[] = _("TRAINER'S SCHOOL.");
|
||||
|
||||
const u8 gMatchCallFlavorText_HexManiac_Valerie_Strategy[] = _("Slow, steady suffering.");
|
||||
const u8 gMatchCallFlavorText_HexManiac_Valerie_Pokemon[] = _("Scary to meet at night.");
|
||||
const u8 gMatchCallFlavorText_HexManiac_Valerie_Intro1[] = _("I see things that others");
|
||||
const u8 gMatchCallFlavorText_HexManiac_Valerie_Intro2[] = _("can't see...");
|
||||
|
||||
const u8 gMatchCallFlavorText_Lady_Cindy_Strategy[] = _("Anything to win.");
|
||||
const u8 gMatchCallFlavorText_Lady_Cindy_Pokemon[] = _("Gorgeous type!");
|
||||
const u8 gMatchCallFlavorText_Lady_Cindy_Intro1[] = _("I have a pool specially for");
|
||||
const u8 gMatchCallFlavorText_Lady_Cindy_Intro2[] = _("my POKéMON at home.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Beauty_Thalia_Strategy[] = _("You'll fall under my spell!");
|
||||
const u8 gMatchCallFlavorText_Beauty_Thalia_Pokemon[] = _("Mature WATER type.");
|
||||
const u8 gMatchCallFlavorText_Beauty_Thalia_Intro1[] = _("I dream of cruising around");
|
||||
const u8 gMatchCallFlavorText_Beauty_Thalia_Intro2[] = _("the world on a luxury liner.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Beauty_Jessica_Strategy[] = _("I'll lead you astray.");
|
||||
const u8 gMatchCallFlavorText_Beauty_Jessica_Pokemon[] = _("Cute, of course.");
|
||||
const u8 gMatchCallFlavorText_Beauty_Jessica_Intro1[] = _("I love the SAFARI ZONE.");
|
||||
const u8 gMatchCallFlavorText_Beauty_Jessica_Intro2[] = _("I seem to end up there.");
|
||||
|
||||
const u8 gMatchCallFlavorText_RichBoy_Winston_Strategy[] = _("Strategy? Who needs it?");
|
||||
const u8 gMatchCallFlavorText_RichBoy_Winston_Pokemon[] = _("I spent big money on it!");
|
||||
const u8 gMatchCallFlavorText_RichBoy_Winston_Intro1[] = _("I, being rich, sleep in a");
|
||||
const u8 gMatchCallFlavorText_RichBoy_Winston_Intro2[] = _("custom POKéMON bed.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PokeManiac_Steve_Strategy[] = _("Wrestle down with power.");
|
||||
const u8 gMatchCallFlavorText_PokeManiac_Steve_Pokemon[] = _("Took all night to catch.");
|
||||
const u8 gMatchCallFlavorText_PokeManiac_Steve_Intro1[] = _("Big, burly, and buff");
|
||||
const u8 gMatchCallFlavorText_PokeManiac_Steve_Intro2[] = _("POKéMON are the best...");
|
||||
|
||||
const u8 gMatchCallFlavorText_Swimmer_Tony_Strategy[] = _("Ram at full speed!");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Tony_Pokemon[] = _("Funky WATER type!");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Tony_Intro1[] = _("If I can't be out swimming,");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Tony_Intro2[] = _("I'll be pumping weights.");
|
||||
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Nob_Strategy[] = _("Grand slam pummeling!");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Nob_Pokemon[] = _("FIGHTING type.");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Nob_Intro1[] = _("Not to brag, but I can bust");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Nob_Intro2[] = _("ten roof tiles!");
|
||||
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Koji_Strategy[] = _("Witness karate power!");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Koji_Pokemon[] = _("My partners in training!");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Koji_Intro1[] = _("Let us discuss matters of");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Koji_Intro2[] = _("the world with bare fists!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Guitarist_Fernando_Strategy[] = _("Rock to stunning sounds!");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Fernando_Pokemon[] = _("Electric-and-sound combo!");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Fernando_Intro1[] = _("My compositions will shock");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Fernando_Intro2[] = _("you and stun you!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Guitarist_Dalton_Strategy[] = _("I'll electrify you!");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Dalton_Pokemon[] = _("They're ELECTRIC!");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Dalton_Intro1[] = _("I want to make people cry");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Dalton_Intro2[] = _("with songs from my heart.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Kindler_Bernie_Strategy[] = _("Burn it all down!");
|
||||
const u8 gMatchCallFlavorText_Kindler_Bernie_Pokemon[] = _("Burn-inducing POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Kindler_Bernie_Intro1[] = _("When you light a campfire,");
|
||||
const u8 gMatchCallFlavorText_Kindler_Bernie_Intro2[] = _("be sure there's some water.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Camper_Ethan_Strategy[] = _("Hang in and be tenacious!");
|
||||
const u8 gMatchCallFlavorText_Camper_Ethan_Pokemon[] = _("I'll raise any POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Camper_Ethan_Intro1[] = _("POKéMON raised in the wild");
|
||||
const u8 gMatchCallFlavorText_Camper_Ethan_Intro2[] = _("grow strong!");
|
||||
|
||||
const u8 gMatchCallFlavorText_OldCouple_JohnAndJay_Strategy[] = _("Our love lets us prevail.");
|
||||
const u8 gMatchCallFlavorText_OldCouple_JohnAndJay_Pokemon[] = _("We've had them for years.");
|
||||
const u8 gMatchCallFlavorText_OldCouple_JohnAndJay_Intro1[] = _("Married 50 years, we've");
|
||||
const u8 gMatchCallFlavorText_OldCouple_JohnAndJay_Intro2[] = _("devotedly raised POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_BugManiac_Jeffrey_Strategy[] = _("Attack in waves!");
|
||||
const u8 gMatchCallFlavorText_BugManiac_Jeffrey_Pokemon[] = _("BUG POKéMON are cool.");
|
||||
const u8 gMatchCallFlavorText_BugManiac_Jeffrey_Intro1[] = _("I go into the forest every");
|
||||
const u8 gMatchCallFlavorText_BugManiac_Jeffrey_Intro2[] = _("day to catch BUG POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Psychic_Cameron_Strategy[] = _("Daze and confuse!");
|
||||
const u8 gMatchCallFlavorText_Psychic_Cameron_Pokemon[] = _("Ones with weird powers.");
|
||||
const u8 gMatchCallFlavorText_Psychic_Cameron_Intro1[] = _("I can see through exactly");
|
||||
const u8 gMatchCallFlavorText_Psychic_Cameron_Intro2[] = _("what you're thinking!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Psychic_Jacki_Strategy[] = _("Battle at full power.");
|
||||
const u8 gMatchCallFlavorText_Psychic_Jacki_Pokemon[] = _("POKéMON of many mysteries.");
|
||||
const u8 gMatchCallFlavorText_Psychic_Jacki_Intro1[] = _("When we spoke, I was really");
|
||||
const u8 gMatchCallFlavorText_Psychic_Jacki_Intro2[] = _("using telepathy.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Gentleman_Walter_Strategy[] = _("Calm and collected.");
|
||||
const u8 gMatchCallFlavorText_Gentleman_Walter_Pokemon[] = _("POKéMON of distinction.");
|
||||
const u8 gMatchCallFlavorText_Gentleman_Walter_Intro1[] = _("We enjoy a spot of tea");
|
||||
const u8 gMatchCallFlavorText_Gentleman_Walter_Intro2[] = _("every day. It's imported.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Karen_Strategy[] = _("I use my head to battle.");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Karen_Pokemon[] = _("I love any kind of POKéMON!");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Karen_Intro1[] = _("My daddy gives me spending");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Karen_Intro2[] = _("money if I ace a test.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Jerry_Strategy[] = _("My knowledge rules!");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Jerry_Pokemon[] = _("Any smart POKéMON!");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Jerry_Intro1[] = _("I want to be a POKéMON");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Jerry_Intro2[] = _("researcher in the future.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SrAndJr_AnnaAndMeg_Strategy[] = _("We talk it over first.");
|
||||
const u8 gMatchCallFlavorText_SrAndJr_AnnaAndMeg_Pokemon[] = _("POKéMON that we both like.");
|
||||
const u8 gMatchCallFlavorText_SrAndJr_AnnaAndMeg_Intro1[] = _("We're senior and junior");
|
||||
const u8 gMatchCallFlavorText_SrAndJr_AnnaAndMeg_Intro2[] = _("students into POKéMON!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Pokefan_Isabel_Strategy[] = _("Go for it, my dears!");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Isabel_Pokemon[] = _("I have no likes or dislikes.");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Isabel_Intro1[] = _("While out shopping for");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Isabel_Intro2[] = _("supper, I battle too.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Pokefan_Miguel_Strategy[] = _("I battle with love!");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Miguel_Pokemon[] = _("A POKéMON raised with love!");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Miguel_Intro1[] = _("It's important to build");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Miguel_Intro2[] = _("trust with your POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Expert_Timothy_Strategy[] = _("I see through your moves!");
|
||||
const u8 gMatchCallFlavorText_Expert_Timothy_Pokemon[] = _("The essence of FIGHTING.");
|
||||
const u8 gMatchCallFlavorText_Expert_Timothy_Intro1[] = _("I'm not ready to give way");
|
||||
const u8 gMatchCallFlavorText_Expert_Timothy_Intro2[] = _("to the young yet!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Expert_Shelby_Strategy[] = _("Attack while defending.");
|
||||
const u8 gMatchCallFlavorText_Expert_Shelby_Pokemon[] = _("The FIGHTING type.");
|
||||
const u8 gMatchCallFlavorText_Expert_Shelby_Intro1[] = _("Being old, I have my own");
|
||||
const u8 gMatchCallFlavorText_Expert_Shelby_Intro2[] = _("style of battling.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Youngster_Calvin_Strategy[] = _("I do what I can.");
|
||||
const u8 gMatchCallFlavorText_Youngster_Calvin_Pokemon[] = _("I use different types.");
|
||||
const u8 gMatchCallFlavorText_Youngster_Calvin_Intro1[] = _("I'm going to keep working");
|
||||
const u8 gMatchCallFlavorText_Youngster_Calvin_Intro2[] = _("until I beat a GYM LEADER.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Fisherman_Elliot_Strategy[] = _("I battle patiently.");
|
||||
const u8 gMatchCallFlavorText_Fisherman_Elliot_Pokemon[] = _("WATER POKéMON to battle!");
|
||||
const u8 gMatchCallFlavorText_Fisherman_Elliot_Intro1[] = _("I'm the world's only guy to");
|
||||
const u8 gMatchCallFlavorText_Fisherman_Elliot_Intro2[] = _("catch a huge POKéMON!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Isaiah_Strategy[] = _("Exploit the environment!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Isaiah_Pokemon[] = _("All hail the WATER type!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Isaiah_Intro1[] = _("I won't be beaten by some");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Isaiah_Intro2[] = _("beach bum SWIMMER!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Maria_Strategy[] = _("Speed above all!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Maria_Pokemon[] = _("I use a speedy POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Maria_Intro1[] = _("A marathon is a challenge");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Maria_Intro2[] = _("against your own self.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Abigail_Strategy[] = _("Defense is crucial.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Abigail_Pokemon[] = _("My POKéMON is solid.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Abigail_Intro1[] = _("I started this for dieting,");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Abigail_Intro2[] = _("but I got right into it.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Dylan_Strategy[] = _("Strike before stricken!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Dylan_Pokemon[] = _("A fast-running POKéMON!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Dylan_Intro1[] = _("If you ran and ran, you'd");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Dylan_Intro2[] = _("become one with the wind.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Katelyn_Strategy[] = _("All-out offensive!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Katelyn_Pokemon[] = _("WATER POKéMON rule!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Katelyn_Intro1[] = _("I must swim over 6 miles");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Katelyn_Intro2[] = _("every day.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Benjamin_Strategy[] = _("Push and push again!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Benjamin_Pokemon[] = _("The strength of STEEL.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Benjamin_Intro1[] = _("If you're sweating, get");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Benjamin_Intro2[] = _("fluids into you regularly.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Pablo_Strategy[] = _("Draw the power of WATER.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Pablo_Pokemon[] = _("Toughened WATER POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Pablo_Intro1[] = _("Training POKéMON is good,");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Pablo_Intro2[] = _("but don't neglect yourself.");
|
||||
|
||||
const u8 gMatchCallFlavorText_DragonTamer_Nicolas_Strategy[] = _("It's about POKéMON power!");
|
||||
const u8 gMatchCallFlavorText_DragonTamer_Nicolas_Pokemon[] = _("See the power of DRAGONS!");
|
||||
const u8 gMatchCallFlavorText_DragonTamer_Nicolas_Intro1[] = _("I'll become legendary as the");
|
||||
const u8 gMatchCallFlavorText_DragonTamer_Nicolas_Intro2[] = _("strongest one day!");
|
||||
|
||||
const u8 gMatchCallFlavorText_BirdKeeper_Robert_Strategy[] = _("I'll show you my technique!");
|
||||
const u8 gMatchCallFlavorText_BirdKeeper_Robert_Pokemon[] = _("Elegantly wheeling BIRDS.");
|
||||
const u8 gMatchCallFlavorText_BirdKeeper_Robert_Intro1[] = _("My BIRD POKéMON, deliver my");
|
||||
const u8 gMatchCallFlavorText_BirdKeeper_Robert_Intro2[] = _("love to that girl!");
|
||||
|
||||
const u8 gMatchCallFlavorText_NinjaBoy_Lao_Strategy[] = _("You'll suffer from poison!");
|
||||
const u8 gMatchCallFlavorText_NinjaBoy_Lao_Pokemon[] = _("Poisonous POKéMON.");
|
||||
const u8 gMatchCallFlavorText_NinjaBoy_Lao_Intro1[] = _("I undertake training so");
|
||||
const u8 gMatchCallFlavorText_NinjaBoy_Lao_Intro2[] = _("that I may become a ninja.");
|
||||
|
||||
const u8 gMatchCallFlavorText_BattleGirl_Cyndy_Strategy[] = _("The first strike wins!");
|
||||
const u8 gMatchCallFlavorText_BattleGirl_Cyndy_Pokemon[] = _("Speedy FIGHTING type.");
|
||||
const u8 gMatchCallFlavorText_BattleGirl_Cyndy_Intro1[] = _("If my POKéMON lose,");
|
||||
const u8 gMatchCallFlavorText_BattleGirl_Cyndy_Intro2[] = _("I'll carry on the fight!");
|
||||
|
||||
const u8 gMatchCallFlavorText_ParasolLady_Madeline_Strategy[] = _("Go, go, my POKéMON!");
|
||||
const u8 gMatchCallFlavorText_ParasolLady_Madeline_Pokemon[] = _("I'll raise anything.");
|
||||
const u8 gMatchCallFlavorText_ParasolLady_Madeline_Intro1[] = _("UV rays are your skin's");
|
||||
const u8 gMatchCallFlavorText_ParasolLady_Madeline_Intro2[] = _("enemy. Get protected.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Swimmer_Jenny_Strategy[] = _("No mercy!");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Jenny_Pokemon[] = _("Cute WATER POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Jenny_Intro1[] = _("I have too many fans.");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Jenny_Intro2[] = _("I was interviewed on TV.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Picnicker_Diana_Strategy[] = _("I think about this & that.");
|
||||
const u8 gMatchCallFlavorText_Picnicker_Diana_Pokemon[] = _("I like all POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Picnicker_Diana_Intro1[] = _("What lies beyond that");
|
||||
const u8 gMatchCallFlavorText_Picnicker_Diana_Intro2[] = _("yonder hill?");
|
||||
|
||||
const u8 gMatchCallFlavorText_Twins_AmyAndLiv_Strategy[] = _("We battle together!");
|
||||
const u8 gMatchCallFlavorText_Twins_AmyAndLiv_Pokemon[] = _("We train together!");
|
||||
const u8 gMatchCallFlavorText_Twins_AmyAndLiv_Intro1[] = _("We like the same POKéMON,");
|
||||
const u8 gMatchCallFlavorText_Twins_AmyAndLiv_Intro2[] = _("but different desserts.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Sailor_Ernest_Strategy[] = _("I force things with power!");
|
||||
const u8 gMatchCallFlavorText_Sailor_Ernest_Pokemon[] = _("WATER and FIGHTING types.");
|
||||
const u8 gMatchCallFlavorText_Sailor_Ernest_Intro1[] = _("Seamen are rough spirits!");
|
||||
const u8 gMatchCallFlavorText_Sailor_Ernest_Intro2[] = _("Any complaints?");
|
||||
|
||||
const u8 gMatchCallFlavorText_Sailor_Cory_Strategy[] = _("Up for a fight anytime!");
|
||||
const u8 gMatchCallFlavorText_Sailor_Cory_Pokemon[] = _("WATER POKéMON are my faves!");
|
||||
const u8 gMatchCallFlavorText_Sailor_Cory_Intro1[] = _("If you want to shout loud,");
|
||||
const u8 gMatchCallFlavorText_Sailor_Cory_Intro2[] = _("suck in air with your belly!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Collector_Edwin_Strategy[] = _("Protect POKéMON from harm.");
|
||||
const u8 gMatchCallFlavorText_Collector_Edwin_Pokemon[] = _("I love rare POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Collector_Edwin_Intro1[] = _("I want to collect all the");
|
||||
const u8 gMatchCallFlavorText_Collector_Edwin_Intro2[] = _("world's rare POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Lydia_Strategy[] = _("I count on power.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Lydia_Pokemon[] = _("POKéMON are my children.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Lydia_Intro1[] = _("It takes knowledge and");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Lydia_Intro2[] = _("love to raise POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Isaac_Strategy[] = _("Full-on attack!");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Isaac_Pokemon[] = _("Anything. I'll raise it.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Isaac_Intro1[] = _("I give them {POKEBLOCK}S for");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Isaac_Intro2[] = _("going after CONTEST titles.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Gabrielle_Strategy[] = _("I raise POKéMON with care.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Gabrielle_Pokemon[] = _("Fun-to-raise POKéMON.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Gabrielle_Intro1[] = _("Treat every POKéMON you");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Gabrielle_Intro2[] = _("meet with respect.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Catherine_Strategy[] = _("I believe in my POKéMON.");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Catherine_Pokemon[] = _("I like strong POKéMON.");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Catherine_Intro1[] = _("I'm training for rescue");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Catherine_Intro2[] = _("work with my POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Jackson_Strategy[] = _("Attack in waves!");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Jackson_Pokemon[] = _("I use different types.");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Jackson_Intro1[] = _("Those who destroy nature");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Jackson_Intro2[] = _("must never be forgiven!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Lass_Haley_Strategy[] = _("I'll show you some guts!");
|
||||
const u8 gMatchCallFlavorText_Lass_Haley_Pokemon[] = _("Cute POKéMON are my faves!");
|
||||
const u8 gMatchCallFlavorText_Lass_Haley_Intro1[] = _("After a battle, I always");
|
||||
const u8 gMatchCallFlavorText_Lass_Haley_Intro2[] = _("bathe with my POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_BugCatcher_James_Strategy[] = _("Lightning-fast attack!");
|
||||
const u8 gMatchCallFlavorText_BugCatcher_James_Pokemon[] = _("BUG POKéMON are number 1!");
|
||||
const u8 gMatchCallFlavorText_BugCatcher_James_Intro1[] = _("If you want to catch BUG");
|
||||
const u8 gMatchCallFlavorText_BugCatcher_James_Intro2[] = _("POKéMON, wake up early.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Hiker_Trent_Strategy[] = _("I battle with power.");
|
||||
const u8 gMatchCallFlavorText_Hiker_Trent_Pokemon[] = _("Hard-bodied POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Hiker_Trent_Intro1[] = _("I've been planning a month");
|
||||
const u8 gMatchCallFlavorText_Hiker_Trent_Intro2[] = _("for today's hike.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Hiker_Sawyer_Strategy[] = _("I like it hot!");
|
||||
const u8 gMatchCallFlavorText_Hiker_Sawyer_Pokemon[] = _("Hot POKéMON!");
|
||||
const u8 gMatchCallFlavorText_Hiker_Sawyer_Intro1[] = _("As much as I love POKéMON,");
|
||||
const u8 gMatchCallFlavorText_Hiker_Sawyer_Intro2[] = _("I surely like hiking!");
|
||||
|
||||
const u8 gMatchCallFlavorText_YoungCouple_LoisAndHal_Strategy[] = _("Lovey-dovey strategy!");
|
||||
const u8 gMatchCallFlavorText_YoungCouple_LoisAndHal_Pokemon[] = _("Lovey-dovey POKéMON!");
|
||||
const u8 gMatchCallFlavorText_YoungCouple_LoisAndHal_Intro1[] = _("We're lovey-dovey!");
|
||||
const u8 gMatchCallFlavorText_YoungCouple_LoisAndHal_Intro2[] = _("Forever lovey-dovey!");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnTrainer_Wally_Strategy[] = _("We let it all hang out.");
|
||||
const u8 gMatchCallFlavorText_PkmnTrainer_Wally_Pokemon[] = _("The 1st POKéMON I caught.");
|
||||
const u8 gMatchCallFlavorText_PkmnTrainer_Wally_Intro1[] = _("POKéMON and I have grown");
|
||||
const u8 gMatchCallFlavorText_PkmnTrainer_Wally_Intro2[] = _("stronger together.");
|
||||
|
||||
const u8 gMatchCallFlavorText_RockinWhiz_Roxanne_Strategy[] = _("ROCK-type power attack.");
|
||||
const u8 gMatchCallFlavorText_RockinWhiz_Roxanne_Pokemon[] = _("I prefer rock-hard POKéMON.");
|
||||
const u8 gMatchCallFlavorText_RockinWhiz_Roxanne_Intro1[] = _("A LEADER of a big GYM bears");
|
||||
const u8 gMatchCallFlavorText_RockinWhiz_Roxanne_Intro2[] = _("a lot of responsibility.");
|
||||
|
||||
const u8 gMatchCallFlavorText_TheBigHit_Brawly_Strategy[] = _("Direct physical action!");
|
||||
const u8 gMatchCallFlavorText_TheBigHit_Brawly_Pokemon[] = _("FIGHTING POKéMON rule!");
|
||||
const u8 gMatchCallFlavorText_TheBigHit_Brawly_Intro1[] = _("The world awaits me as the");
|
||||
const u8 gMatchCallFlavorText_TheBigHit_Brawly_Intro2[] = _("next big wave!");
|
||||
|
||||
const u8 gMatchCallFlavorText_SwellShock_Wattson_Strategy[] = _("I choose to electrify.");
|
||||
const u8 gMatchCallFlavorText_SwellShock_Wattson_Pokemon[] = _("Get shocked by electricity!");
|
||||
const u8 gMatchCallFlavorText_SwellShock_Wattson_Intro1[] = _("One must never throw a");
|
||||
const u8 gMatchCallFlavorText_SwellShock_Wattson_Intro2[] = _("match. Even I must not.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PassionBurn_Flannery_Strategy[] = _("Battle aggressively.");
|
||||
const u8 gMatchCallFlavorText_PassionBurn_Flannery_Pokemon[] = _("Burn with passion!");
|
||||
const u8 gMatchCallFlavorText_PassionBurn_Flannery_Intro1[] = _("Completely wash away daily");
|
||||
const u8 gMatchCallFlavorText_PassionBurn_Flannery_Intro2[] = _("fatigue in hot springs!");
|
||||
|
||||
const u8 gMatchCallFlavorText_ReliableOne_Dad_Strategy[] = _("I flexibly adapt my style.");
|
||||
const u8 gMatchCallFlavorText_ReliableOne_Dad_Pokemon[] = _("Grown in a balanced manner.");
|
||||
const u8 gMatchCallFlavorText_ReliableOne_Dad_Intro1[] = _("I walk the 30 minutes from");
|
||||
const u8 gMatchCallFlavorText_ReliableOne_Dad_Intro2[] = _("home to here every day.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SkyTamer_Winona_Strategy[] = _("I take advantage of speed.");
|
||||
const u8 gMatchCallFlavorText_SkyTamer_Winona_Pokemon[] = _("Graceful sky dancers.");
|
||||
const u8 gMatchCallFlavorText_SkyTamer_Winona_Intro1[] = _("The ultimate would be to");
|
||||
const u8 gMatchCallFlavorText_SkyTamer_Winona_Intro2[] = _("live as one with nature.");
|
||||
|
||||
const u8 gMatchCallFlavorText_MysticDuo_TateAndLiza_Strategy[] = _("We battle in cooperation.");
|
||||
const u8 gMatchCallFlavorText_MysticDuo_TateAndLiza_Pokemon[] = _("Always friendly POKéMON.");
|
||||
const u8 gMatchCallFlavorText_MysticDuo_TateAndLiza_Intro1[] = _("Papa has trouble telling");
|
||||
const u8 gMatchCallFlavorText_MysticDuo_TateAndLiza_Intro2[] = _("the two of us apart!");
|
||||
|
||||
const u8 gMatchCallFlavorText_DandyCharm_Juan_Strategy[] = _("I use splendid waterpower.");
|
||||
const u8 gMatchCallFlavorText_DandyCharm_Juan_Pokemon[] = _("POKéMON of elegance!");
|
||||
const u8 gMatchCallFlavorText_DandyCharm_Juan_Intro1[] = _("The adulation of beautiful");
|
||||
const u8 gMatchCallFlavorText_DandyCharm_Juan_Intro2[] = _("ladies fills me with energy!");
|
||||
|
||||
const u8 gMatchCallFlavorText_EliteFour_Sidney_Strategy[] = _("Offense over defense!");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Sidney_Pokemon[] = _("The DARK side's beauties.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Sidney_Intro1[] = _("They said I was a punk, but");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Sidney_Intro2[] = _("I'm one of the ELITE FOUR!");
|
||||
|
||||
const u8 gMatchCallFlavorText_EliteFour_Phoebe_Strategy[] = _("Confuse and confound.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Phoebe_Pokemon[] = _("There's nothing definite.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Phoebe_Intro1[] = _("I wonder how my grandma at");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Phoebe_Intro2[] = _("MT. PYRE is doing?");
|
||||
|
||||
const u8 gMatchCallFlavorText_EliteFour_Glacia_Strategy[] = _("I use items for help.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Glacia_Pokemon[] = _("Flaming passion in icy cold!");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Glacia_Intro1[] = _("The ICE type can be better");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Glacia_Intro2[] = _("trained in this hot land.");
|
||||
|
||||
const u8 gMatchCallFlavorText_EliteFour_Drake_Strategy[] = _("Harness strong abilities.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Drake_Pokemon[] = _("The raw power of DRAGONS!");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Drake_Intro1[] = _("I dedicate myself to the");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Drake_Intro2[] = _("POKéMON that saved me.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Champion_Wallace_Strategy[] = _("Dignity and respect.");
|
||||
const u8 gMatchCallFlavorText_Champion_Wallace_Pokemon[] = _("I prefer POKéMON of grace.");
|
||||
const u8 gMatchCallFlavorText_Champion_Wallace_Intro1[] = _("I represent beauty as");
|
||||
const u8 gMatchCallFlavorText_Champion_Wallace_Intro2[] = _("well as intelligence.");
|
||||
|
||||
const u8 *const gMatchCallMessages[][4] =
|
||||
{
|
||||
[REMATCH_ROSE] = MCFLAVOR(AromaLady_Rose),
|
||||
[REMATCH_ANDRES] = MCFLAVOR(RuinManiac_Andres),
|
||||
[REMATCH_DUSTY] = MCFLAVOR(RuinManiac_Dusty),
|
||||
[REMATCH_LOLA] = MCFLAVOR(Tuber_Lola),
|
||||
[REMATCH_RICKY] = MCFLAVOR(Tuber_Ricky),
|
||||
[REMATCH_LILA_AND_ROY] = MCFLAVOR(SisAndBro_LilaAndRoy),
|
||||
[REMATCH_CRISTIN] = MCFLAVOR(Cooltrainer_Cristin),
|
||||
[REMATCH_BROOKE] = MCFLAVOR(Cooltrainer_Brooke),
|
||||
[REMATCH_WILTON] = MCFLAVOR(Cooltrainer_Wilton),
|
||||
[REMATCH_VALERIE] = MCFLAVOR(HexManiac_Valerie),
|
||||
[REMATCH_CINDY] = MCFLAVOR(Lady_Cindy),
|
||||
[REMATCH_THALIA] = MCFLAVOR(Beauty_Thalia),
|
||||
[REMATCH_JESSICA] = MCFLAVOR(Beauty_Jessica),
|
||||
[REMATCH_WINSTON] = MCFLAVOR(RichBoy_Winston),
|
||||
[REMATCH_STEVE] = MCFLAVOR(PokeManiac_Steve),
|
||||
[REMATCH_TONY] = MCFLAVOR(Swimmer_Tony),
|
||||
[REMATCH_NOB] = MCFLAVOR(BlackBelt_Nob),
|
||||
[REMATCH_KOJI] = MCFLAVOR(BlackBelt_Koji),
|
||||
[REMATCH_FERNANDO] = MCFLAVOR(Guitarist_Fernando),
|
||||
[REMATCH_DALTON] = MCFLAVOR(Guitarist_Dalton),
|
||||
[REMATCH_BERNIE] = MCFLAVOR(Kindler_Bernie),
|
||||
[REMATCH_ETHAN] = MCFLAVOR(Camper_Ethan),
|
||||
[REMATCH_JOHN_AND_JAY] = MCFLAVOR(OldCouple_JohnAndJay),
|
||||
[REMATCH_JEFFREY] = MCFLAVOR(BugManiac_Jeffrey),
|
||||
[REMATCH_CAMERON] = MCFLAVOR(Psychic_Cameron),
|
||||
[REMATCH_JACKI] = MCFLAVOR(Psychic_Jacki),
|
||||
[REMATCH_WALTER] = MCFLAVOR(Gentleman_Walter),
|
||||
[REMATCH_KAREN] = MCFLAVOR(SchoolKid_Karen),
|
||||
[REMATCH_JERRY] = MCFLAVOR(SchoolKid_Jerry),
|
||||
[REMATCH_ANNA_AND_MEG] = MCFLAVOR(SrAndJr_AnnaAndMeg),
|
||||
[REMATCH_ISABEL] = MCFLAVOR(Pokefan_Isabel),
|
||||
[REMATCH_MIGUEL] = MCFLAVOR(Pokefan_Miguel),
|
||||
[REMATCH_TIMOTHY] = MCFLAVOR(Expert_Timothy),
|
||||
[REMATCH_SHELBY] = MCFLAVOR(Expert_Shelby),
|
||||
[REMATCH_CALVIN] = MCFLAVOR(Youngster_Calvin),
|
||||
[REMATCH_ELLIOT] = MCFLAVOR(Fisherman_Elliot),
|
||||
[REMATCH_ISAIAH] = MCFLAVOR(Triathlete_Isaiah),
|
||||
[REMATCH_MARIA] = MCFLAVOR(Triathlete_Maria),
|
||||
[REMATCH_ABIGAIL] = MCFLAVOR(Triathlete_Abigail),
|
||||
[REMATCH_DYLAN] = MCFLAVOR(Triathlete_Dylan),
|
||||
[REMATCH_KATELYN] = MCFLAVOR(Triathlete_Katelyn),
|
||||
[REMATCH_BENJAMIN] = MCFLAVOR(Triathlete_Benjamin),
|
||||
[REMATCH_PABLO] = MCFLAVOR(Triathlete_Pablo),
|
||||
[REMATCH_NICOLAS] = MCFLAVOR(DragonTamer_Nicolas),
|
||||
[REMATCH_ROBERT] = MCFLAVOR(BirdKeeper_Robert),
|
||||
[REMATCH_LAO] = MCFLAVOR(NinjaBoy_Lao),
|
||||
[REMATCH_CYNDY] = MCFLAVOR(BattleGirl_Cyndy),
|
||||
[REMATCH_MADELINE] = MCFLAVOR(ParasolLady_Madeline),
|
||||
[REMATCH_JENNY] = MCFLAVOR(Swimmer_Jenny),
|
||||
[REMATCH_DIANA] = MCFLAVOR(Picnicker_Diana),
|
||||
[REMATCH_AMY_AND_LIV] = MCFLAVOR(Twins_AmyAndLiv),
|
||||
[REMATCH_ERNEST] = MCFLAVOR(Sailor_Ernest),
|
||||
[REMATCH_CORY] = MCFLAVOR(Sailor_Cory),
|
||||
[REMATCH_EDWIN] = MCFLAVOR(Collector_Edwin),
|
||||
[REMATCH_LYDIA] = MCFLAVOR(PkmnBreeder_Lydia),
|
||||
[REMATCH_ISAAC] = MCFLAVOR(PkmnBreeder_Isaac),
|
||||
[REMATCH_GABRIELLE] = MCFLAVOR(PkmnBreeder_Gabrielle),
|
||||
[REMATCH_CATHERINE] = MCFLAVOR(PkmnRanger_Catherine),
|
||||
[REMATCH_JACKSON] = MCFLAVOR(PkmnRanger_Jackson),
|
||||
[REMATCH_HALEY] = MCFLAVOR(Lass_Haley),
|
||||
[REMATCH_JAMES] = MCFLAVOR(BugCatcher_James),
|
||||
[REMATCH_TRENT] = MCFLAVOR(Hiker_Trent),
|
||||
[REMATCH_SAWYER] = MCFLAVOR(Hiker_Sawyer),
|
||||
[REMATCH_KIRA_AND_DAN] = MCFLAVOR(YoungCouple_LoisAndHal),
|
||||
[REMATCH_WALLY_3] = MCFLAVOR(PkmnTrainer_Wally),
|
||||
[REMATCH_ROXANNE] = MCFLAVOR(RockinWhiz_Roxanne),
|
||||
[REMATCH_BRAWLY] = MCFLAVOR(TheBigHit_Brawly),
|
||||
[REMATCH_WATTSON] = MCFLAVOR(SwellShock_Wattson),
|
||||
[REMATCH_FLANNERY] = MCFLAVOR(PassionBurn_Flannery),
|
||||
[REMATCH_NORMAN] = MCFLAVOR(ReliableOne_Dad),
|
||||
[REMATCH_WINONA] = MCFLAVOR(SkyTamer_Winona),
|
||||
[REMATCH_TATE_AND_LIZA] = MCFLAVOR(MysticDuo_TateAndLiza),
|
||||
[REMATCH_JUAN] = MCFLAVOR(DandyCharm_Juan),
|
||||
[REMATCH_SIDNEY] = MCFLAVOR(EliteFour_Sidney),
|
||||
[REMATCH_PHOEBE] = MCFLAVOR(EliteFour_Phoebe),
|
||||
[REMATCH_GLACIA] = MCFLAVOR(EliteFour_Glacia),
|
||||
[REMATCH_DRAKE] = MCFLAVOR(EliteFour_Drake),
|
||||
[REMATCH_WALLACE] = MCFLAVOR(Champion_Wallace),
|
||||
};
|
48
src/data/text/ribbon_descriptions.h
Normal file
48
src/data/text/ribbon_descriptions.h
Normal file
@ -0,0 +1,48 @@
|
||||
const u8 gRibbonDescriptionPart1_Champion[] = _("CHAMPION-beating, HALL");
|
||||
const u8 gRibbonDescriptionPart2_Champion[] = _("OF FAME Member RIBBON");
|
||||
const u8 gRibbonDescriptionPart1_CoolContest[] = _("COOL CONTEST");
|
||||
const u8 gRibbonDescriptionPart1_BeautyContest[] = _("BEAUTY CONTEST");
|
||||
const u8 gRibbonDescriptionPart1_CuteContest[] = _("CUTE CONTEST");
|
||||
const u8 gRibbonDescriptionPart1_SmartContest[] = _("SMART CONTEST");
|
||||
const u8 gRibbonDescriptionPart1_ToughContest[] = _("TOUGH CONTEST");
|
||||
const u8 gRibbonDescriptionPart2_NormalRank[] = _("Normal Rank winner!");
|
||||
const u8 gRibbonDescriptionPart2_SuperRank[] = _("Super Rank winner!");
|
||||
const u8 gRibbonDescriptionPart2_HyperRank[] = _("Hyper Rank winner!");
|
||||
const u8 gRibbonDescriptionPart2_MasterRank[] = _("Master Rank winner!");
|
||||
const u8 gRibbonDescriptionPart1_Winning[] = _("For clearing LV50");
|
||||
const u8 gRibbonDescriptionPart2_Winning[] = _("at the BATTLE TOWER.");
|
||||
const u8 gRibbonDescriptionPart1_Victory[] = _("For clearing Open Level");
|
||||
const u8 gRibbonDescriptionPart2_Victory[] = _("at the BATTLE TOWER.");
|
||||
const u8 gRibbonDescriptionPart1_Artist[] = _("RIBBON for being chosen");
|
||||
const u8 gRibbonDescriptionPart2_Artist[] = _("as a super sketch model.");
|
||||
const u8 gRibbonDescriptionPart1_Effort[] = _("RIBBON awarded for");
|
||||
const u8 gRibbonDescriptionPart2_Effort[] = _("being a hard worker.");
|
||||
|
||||
const u8 *const gRibbonDescriptionPointers[][2] =
|
||||
{
|
||||
{gRibbonDescriptionPart1_Champion, gRibbonDescriptionPart2_Champion},
|
||||
{gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_NormalRank},
|
||||
{gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_SuperRank},
|
||||
{gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_HyperRank},
|
||||
{gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_MasterRank},
|
||||
{gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_NormalRank},
|
||||
{gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_SuperRank},
|
||||
{gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_HyperRank},
|
||||
{gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_MasterRank},
|
||||
{gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_NormalRank},
|
||||
{gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_SuperRank},
|
||||
{gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_HyperRank},
|
||||
{gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_MasterRank},
|
||||
{gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_NormalRank},
|
||||
{gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_SuperRank},
|
||||
{gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_HyperRank},
|
||||
{gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_MasterRank},
|
||||
{gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_NormalRank},
|
||||
{gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_SuperRank},
|
||||
{gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_HyperRank},
|
||||
{gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_MasterRank},
|
||||
{gRibbonDescriptionPart1_Winning, gRibbonDescriptionPart2_Winning},
|
||||
{gRibbonDescriptionPart1_Victory, gRibbonDescriptionPart2_Victory},
|
||||
{gRibbonDescriptionPart1_Artist, gRibbonDescriptionPart2_Artist},
|
||||
{gRibbonDescriptionPart1_Effort, gRibbonDescriptionPart2_Effort},
|
||||
};
|
File diff suppressed because it is too large
Load Diff
@ -336,14 +336,9 @@ void player_step(u8 direction, u16 newKeys, u16 heldKeys)
|
||||
|
||||
static bool8 TryInterruptEventObjectSpecialAnim(struct EventObject *playerEventObj, u8 direction)
|
||||
{
|
||||
#ifdef NONMATCHING
|
||||
u8 r5 = direction;
|
||||
u8 r6 = direction;
|
||||
#else
|
||||
u8 r5 = direction;
|
||||
register u8 r6 asm("r6") = direction;
|
||||
#endif
|
||||
//a very bad HACK
|
||||
u8 r5 = direction;
|
||||
u8 r6 = direction;
|
||||
r6++; r6--;
|
||||
|
||||
if (EventObjectIsMovementOverridden(playerEventObj)
|
||||
&& !EventObjectClearHeldMovementIfFinished(playerEventObj))
|
||||
|
@ -219,8 +219,8 @@ static void sub_8137404(u8 taskId)
|
||||
static void sub_8137420(u8 taskId)
|
||||
{
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, 0);
|
||||
LZ77UnCompVram(gCaveTransitionTiles, (void *)0x600C000);
|
||||
LZ77UnCompVram(gCaveTransitionTilemap, (void *)0x600F800);
|
||||
LZ77UnCompVram(gCaveTransitionTiles, (void *)(VRAM + 0xC000));
|
||||
LZ77UnCompVram(gCaveTransitionTilemap, (void *)(VRAM + 0xF800));
|
||||
LoadPalette(gCaveTransitionPalette_White, 0xE0, 0x20);
|
||||
LoadPalette(gUnknown_085B28A0, 0xE0, 0x10);
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0
|
||||
@ -304,8 +304,8 @@ static void sub_81375BC(u8 taskId)
|
||||
static void sub_81375D8(u8 taskId)
|
||||
{
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, 0);
|
||||
LZ77UnCompVram(gCaveTransitionTiles, (void *)0x600C000);
|
||||
LZ77UnCompVram(gCaveTransitionTilemap, (void *)0x600F800);
|
||||
LZ77UnCompVram(gCaveTransitionTiles, (void *)(VRAM + 0xC000));
|
||||
LZ77UnCompVram(gCaveTransitionTilemap, (void *)(VRAM + 0xF800));
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, 0);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, 0);
|
||||
SetGpuReg(REG_OFFSET_BLDY, 0);
|
||||
|
@ -6,6 +6,7 @@
|
||||
#include "battle.h"
|
||||
#include "gym_leader_rematch.h"
|
||||
#include "match_call.h"
|
||||
#include "constants/region_map_sections.h"
|
||||
|
||||
// Static type declarations
|
||||
|
||||
@ -17,13 +18,13 @@ typedef struct MatchCallTextDataStruct {
|
||||
|
||||
struct MatchCallStructCommon {
|
||||
u8 type;
|
||||
u8 v1;
|
||||
u8 mapSec;
|
||||
u16 flag;
|
||||
};
|
||||
|
||||
struct MatchCallStruct0 {
|
||||
u8 type;
|
||||
u8 v1;
|
||||
u8 mapSec;
|
||||
u16 flag;
|
||||
const u8 *desc;
|
||||
const u8 *name;
|
||||
@ -32,7 +33,7 @@ struct MatchCallStruct0 {
|
||||
|
||||
struct MatchCallStruct1 {
|
||||
u8 type;
|
||||
u8 v1;
|
||||
u8 mapSec;
|
||||
u16 flag;
|
||||
u16 rematchTableIdx;
|
||||
const u8 *desc;
|
||||
@ -42,12 +43,12 @@ struct MatchCallStruct1 {
|
||||
|
||||
struct MatchCallSubstruct2 {
|
||||
u16 flag;
|
||||
u8 v2;
|
||||
u8 mapSec;
|
||||
};
|
||||
|
||||
struct MatchCallStruct2 {
|
||||
u8 type;
|
||||
u8 v1;
|
||||
u8 mapSec;
|
||||
u16 flag;
|
||||
u16 rematchTableIdx;
|
||||
const u8 *desc;
|
||||
@ -57,7 +58,7 @@ struct MatchCallStruct2 {
|
||||
|
||||
struct MatchCallStruct3 {
|
||||
u8 type;
|
||||
u8 v1;
|
||||
u8 mapSec;
|
||||
u16 flag;
|
||||
const u8 *desc;
|
||||
const u8 *name;
|
||||
@ -75,7 +76,7 @@ struct MatchCallStruct4 {
|
||||
// Note: Type1 and Type5 have identical struct layouts.
|
||||
struct MatchCallStruct5 {
|
||||
u8 type;
|
||||
u8 v1;
|
||||
u8 mapSec;
|
||||
u16 flag;
|
||||
u16 rematchTableIdx;
|
||||
const u8 *desc;
|
||||
@ -110,11 +111,11 @@ static bool32 MatchCallGetFlag_Type2(match_call_t);
|
||||
static bool32 MatchCallGetFlag_Type3(match_call_t);
|
||||
static bool32 MatchCallGetFlag_Type4(match_call_t);
|
||||
|
||||
static u8 sub_81D1714(match_call_t);
|
||||
static u8 sub_81D1718(match_call_t);
|
||||
static u8 sub_81D171C(match_call_t);
|
||||
static u8 sub_81D1750(match_call_t);
|
||||
static u8 sub_81D1754(match_call_t);
|
||||
static u8 MatchCallGetMapSec_Type0(match_call_t);
|
||||
static u8 MatchCallGetMapSec_Type1(match_call_t);
|
||||
static u8 MatchCallGetMapSec_Type2(match_call_t);
|
||||
static u8 MatchCallGetMapSec_Type3(match_call_t);
|
||||
static u8 MatchCallGetMapSec_Type4(match_call_t);
|
||||
|
||||
static bool32 MatchCall_IsRematchable_Type0(match_call_t);
|
||||
static bool32 MatchCall_IsRematchable_Type1(match_call_t);
|
||||
@ -325,7 +326,7 @@ static const match_call_text_data_t sMrStoneTextScripts[] = {
|
||||
static const struct MatchCallStruct0 sMrStoneMatchCallHeader =
|
||||
{
|
||||
.type = 0,
|
||||
.v1 = 10,
|
||||
.mapSec = MAPSEC_RUSTBORO_CITY,
|
||||
.flag = 0xFFFF,
|
||||
.desc = gMrStoneMatchCallDesc,
|
||||
.name = gMrStoneMatchCallName,
|
||||
@ -348,7 +349,7 @@ static const match_call_text_data_t sNormanTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sNormanMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 7,
|
||||
.mapSec = MAPSEC_PETALBURG_CITY,
|
||||
.flag = FLAG_ENABLE_NORMAN_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_NORMAN,
|
||||
.desc = gNormanMatchCallDesc,
|
||||
@ -359,7 +360,7 @@ static const struct MatchCallStruct5 sNormanMatchCallHeader =
|
||||
static const struct MatchCallStruct3 sProfBirchMatchCallHeader =
|
||||
{
|
||||
.type = 3,
|
||||
.v1 = 0,
|
||||
.mapSec = 0,
|
||||
.flag = FLAG_ENABLE_PROF_BIRCH_MATCH_CALL,
|
||||
.desc = gProfBirchMatchCallDesc,
|
||||
.name = gProfBirchMatchCallName
|
||||
@ -375,7 +376,7 @@ static const match_call_text_data_t sMomTextScripts[] = {
|
||||
static const struct MatchCallStruct0 sMomMatchCallHeader =
|
||||
{
|
||||
.type = 0,
|
||||
.v1 = 0,
|
||||
.mapSec = MAPSEC_LITTLEROOT_TOWN,
|
||||
.flag = FLAG_ENABLE_MOM_MATCH_CALL,
|
||||
.desc = gMomMatchCallDesc,
|
||||
.name = gMomMatchCallName,
|
||||
@ -396,7 +397,7 @@ static const match_call_text_data_t sStevenTextScripts[] = {
|
||||
static const struct MatchCallStruct0 sStevenMatchCallHeader =
|
||||
{
|
||||
.type = 0,
|
||||
.v1 = 0xD5,
|
||||
.mapSec = MAPSEC_NONE,
|
||||
.flag = FLAG_REGISTERED_STEVEN_POKENAV,
|
||||
.desc = gStevenMatchCallDesc,
|
||||
.name = gStevenMatchCallName,
|
||||
@ -473,16 +474,16 @@ static const match_call_text_data_t sWallyTextScripts[] = {
|
||||
};
|
||||
|
||||
const struct MatchCallSubstruct2 sWallyAdditionalData[] = {
|
||||
{ FLAG_HIDE_MAUVILLE_CITY_WALLY, 0x05 },
|
||||
{ FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, 0xD5 },
|
||||
{ FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY, 0x46 },
|
||||
{ 0xFFFF, 0xD5 }
|
||||
{ FLAG_HIDE_MAUVILLE_CITY_WALLY, MAPSEC_VERDANTURF_TOWN },
|
||||
{ FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, MAPSEC_NONE },
|
||||
{ FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY, MAPSEC_VICTORY_ROAD },
|
||||
{ 0xFFFF, MAPSEC_NONE }
|
||||
};
|
||||
|
||||
static const struct MatchCallStruct2 sWallyMatchCallHeader =
|
||||
{
|
||||
.type = 2,
|
||||
.v1 = 0,
|
||||
.mapSec = 0,
|
||||
.flag = FLAG_ENABLE_WALLY_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_WALLY_3,
|
||||
.desc = gWallyMatchCallDesc,
|
||||
@ -505,7 +506,7 @@ static const match_call_text_data_t sScottTextScripts[] = {
|
||||
static const struct MatchCallStruct0 sScottMatchCallHeader =
|
||||
{
|
||||
.type = 0,
|
||||
.v1 = 0xD5,
|
||||
.mapSec = MAPSEC_NONE,
|
||||
.flag = FLAG_ENABLE_SCOTT_MATCH_CALL,
|
||||
.desc = gScottMatchCallDesc,
|
||||
.name = gScottMatchCallName,
|
||||
@ -523,7 +524,7 @@ static const match_call_text_data_t sRoxanneTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sRoxanneMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 10,
|
||||
.mapSec = MAPSEC_RUSTBORO_CITY,
|
||||
.flag = FLAG_ENABLE_ROXANNE_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_ROXANNE,
|
||||
.desc = gRoxanneMatchCallDesc,
|
||||
@ -542,7 +543,7 @@ static const match_call_text_data_t sBrawlyTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sBrawlyMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 2,
|
||||
.mapSec = MAPSEC_DEWFORD_TOWN,
|
||||
.flag = FLAG_ENABLE_BRAWLY_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_BRAWLY,
|
||||
.desc = gBrawlyMatchCallDesc,
|
||||
@ -561,7 +562,7 @@ static const match_call_text_data_t sWattsonTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sWattsonMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 9,
|
||||
.mapSec = MAPSEC_MAUVILLE_CITY,
|
||||
.flag = FLAG_ENABLE_WATTSON_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_WATTSON,
|
||||
.desc = gWattsonMatchCallDesc,
|
||||
@ -580,7 +581,7 @@ static const match_call_text_data_t sFlanneryTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sFlanneryMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 3,
|
||||
.mapSec = MAPSEC_LAVARIDGE_TOWN,
|
||||
.flag = FLAG_ENABLE_FLANNERY_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_FLANNERY,
|
||||
.desc = gFlanneryMatchCallDesc,
|
||||
@ -599,7 +600,7 @@ static const match_call_text_data_t sWinonaTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sWinonaMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 11,
|
||||
.mapSec = MAPSEC_FORTREE_CITY,
|
||||
.flag = FLAG_ENABLE_WINONA_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_WINONA,
|
||||
.desc = gWinonaMatchCallDesc,
|
||||
@ -618,7 +619,7 @@ static const match_call_text_data_t sTateLizaTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sTateLizaMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 13,
|
||||
.mapSec = MAPSEC_MOSSDEEP_CITY,
|
||||
.flag = FLAG_ENABLE_TATE_AND_LIZA_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_TATE_AND_LIZA,
|
||||
.desc = gTateLizaMatchCallDesc,
|
||||
@ -637,7 +638,7 @@ static const match_call_text_data_t sJuanTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sJuanMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 14,
|
||||
.mapSec = MAPSEC_SOOTOPOLIS_CITY,
|
||||
.flag = FLAG_ENABLE_JUAN_MATCH_CALL,
|
||||
.rematchTableIdx = REMATCH_JUAN,
|
||||
.desc = gJuanMatchCallDesc,
|
||||
@ -653,7 +654,7 @@ static const match_call_text_data_t sSidneyTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sSidneyMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 15,
|
||||
.mapSec = MAPSEC_EVER_GRANDE_CITY,
|
||||
.flag = FLAG_REMATCH_SIDNEY,
|
||||
.rematchTableIdx = REMATCH_SIDNEY,
|
||||
.desc = gEliteFourMatchCallDesc,
|
||||
@ -669,7 +670,7 @@ static const match_call_text_data_t sPhoebeTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sPhoebeMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 15,
|
||||
.mapSec = MAPSEC_EVER_GRANDE_CITY,
|
||||
.flag = FLAG_REMATCH_PHOEBE,
|
||||
.rematchTableIdx = REMATCH_PHOEBE,
|
||||
.desc = gEliteFourMatchCallDesc,
|
||||
@ -685,7 +686,7 @@ static const match_call_text_data_t sGlaciaTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sGlaciaMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 15,
|
||||
.mapSec = MAPSEC_EVER_GRANDE_CITY,
|
||||
.flag = FLAG_REMATCH_GLACIA,
|
||||
.rematchTableIdx = REMATCH_GLACIA,
|
||||
.desc = gEliteFourMatchCallDesc,
|
||||
@ -701,7 +702,7 @@ static const match_call_text_data_t sDrakeTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sDrakeMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 15,
|
||||
.mapSec = MAPSEC_EVER_GRANDE_CITY,
|
||||
.flag = FLAG_REMATCH_DRAKE,
|
||||
.rematchTableIdx = REMATCH_DRAKE,
|
||||
.desc = gEliteFourMatchCallDesc,
|
||||
@ -717,7 +718,7 @@ static const match_call_text_data_t sWallaceTextScripts[] = {
|
||||
static const struct MatchCallStruct5 sWallaceMatchCallHeader =
|
||||
{
|
||||
.type = 5,
|
||||
.v1 = 15,
|
||||
.mapSec = MAPSEC_EVER_GRANDE_CITY,
|
||||
.flag = FLAG_REMATCH_WALLACE,
|
||||
.rematchTableIdx = REMATCH_WALLACE,
|
||||
.desc = gChampionMatchCallDesc,
|
||||
@ -753,24 +754,24 @@ static bool32 (*const sMatchCallGetFlagFuncs[])(match_call_t) = {
|
||||
MatchCallGetFlag_Type0,
|
||||
MatchCallGetFlag_Type1,
|
||||
MatchCallGetFlag_Type2,
|
||||
MatchCallGetFlag_Type3,
|
||||
MatchCallGetFlag_Type4
|
||||
MatchCallGetFlag_Type4,
|
||||
MatchCallGetFlag_Type3
|
||||
};
|
||||
|
||||
static u8 (*const gUnknown_08625310[])(match_call_t) = {
|
||||
sub_81D1714,
|
||||
sub_81D1718,
|
||||
sub_81D171C,
|
||||
sub_81D1750,
|
||||
sub_81D1754
|
||||
static u8 (*const sMatchCallGetMapSecFuncs[])(match_call_t) = {
|
||||
MatchCallGetMapSec_Type0,
|
||||
MatchCallGetMapSec_Type1,
|
||||
MatchCallGetMapSec_Type2,
|
||||
MatchCallGetMapSec_Type4,
|
||||
MatchCallGetMapSec_Type3
|
||||
};
|
||||
|
||||
static bool32 (*const sMatchCall_IsRematchableFunctions[])(match_call_t) = {
|
||||
MatchCall_IsRematchable_Type0,
|
||||
MatchCall_IsRematchable_Type1,
|
||||
MatchCall_IsRematchable_Type2,
|
||||
MatchCall_IsRematchable_Type3,
|
||||
MatchCall_IsRematchable_Type4
|
||||
MatchCall_IsRematchable_Type4,
|
||||
MatchCall_IsRematchable_Type3
|
||||
};
|
||||
|
||||
static bool32 (*const gUnknown_08625338[])(match_call_t) = {
|
||||
@ -785,24 +786,24 @@ static u32 (*const sMatchCall_GetRematchTableIdxFunctions[])(match_call_t) = {
|
||||
MatchCall_GetRematchTableIdx_Type0,
|
||||
MatchCall_GetRematchTableIdx_Type1,
|
||||
MatchCall_GetRematchTableIdx_Type2,
|
||||
MatchCall_GetRematchTableIdx_Type3,
|
||||
MatchCall_GetRematchTableIdx_Type4
|
||||
MatchCall_GetRematchTableIdx_Type4,
|
||||
MatchCall_GetRematchTableIdx_Type3
|
||||
};
|
||||
|
||||
static void (*const sMatchCall_GetMessageFunctions[])(match_call_t, u8 *) = {
|
||||
MatchCall_GetMessage_Type0,
|
||||
MatchCall_GetMessage_Type1,
|
||||
MatchCall_GetMessage_Type2,
|
||||
MatchCall_GetMessage_Type3,
|
||||
MatchCall_GetMessage_Type4
|
||||
MatchCall_GetMessage_Type4,
|
||||
MatchCall_GetMessage_Type3
|
||||
};
|
||||
|
||||
static void (*const sMatchCall_GetNameAndDescFunctions[])(match_call_t, const u8 **, const u8 **) = {
|
||||
MatchCall_GetNameAndDesc_Type0,
|
||||
MatchCall_GetNameAndDesc_Type1,
|
||||
MatchCall_GetNameAndDesc_Type2,
|
||||
MatchCall_GetNameAndDesc_Type3,
|
||||
MatchCall_GetNameAndDesc_Type4
|
||||
MatchCall_GetNameAndDesc_Type4,
|
||||
MatchCall_GetNameAndDesc_Type3
|
||||
};
|
||||
|
||||
static const struct UnkStruct_08625388 sMatchCallCheckPageOverrides[] = {
|
||||
@ -883,7 +884,7 @@ static bool32 MatchCallGetFlag_Type2(match_call_t matchCall)
|
||||
return FlagGet(matchCall.type2->flag);
|
||||
}
|
||||
|
||||
static bool32 MatchCallGetFlag_Type3(match_call_t matchCall)
|
||||
static bool32 MatchCallGetFlag_Type4(match_call_t matchCall)
|
||||
{
|
||||
if (matchCall.type4->gender != gSaveBlock2Ptr->playerGender)
|
||||
return FALSE;
|
||||
@ -892,12 +893,12 @@ static bool32 MatchCallGetFlag_Type3(match_call_t matchCall)
|
||||
return FlagGet(matchCall.type4->flag);
|
||||
}
|
||||
|
||||
static bool32 MatchCallGetFlag_Type4(match_call_t matchCall)
|
||||
static bool32 MatchCallGetFlag_Type3(match_call_t matchCall)
|
||||
{
|
||||
return FlagGet(matchCall.type3->flag);
|
||||
}
|
||||
|
||||
u8 sub_81D16DC(u32 idx)
|
||||
u8 MatchCallMapSecGetByIndex(u32 idx)
|
||||
{
|
||||
match_call_t matchCall;
|
||||
u32 i;
|
||||
@ -906,20 +907,20 @@ u8 sub_81D16DC(u32 idx)
|
||||
return 0;
|
||||
matchCall = sMatchCallHeaders[idx];
|
||||
i = MatchCallGetFunctionIndex(matchCall);
|
||||
return gUnknown_08625310[i](matchCall);
|
||||
return sMatchCallGetMapSecFuncs[i](matchCall);
|
||||
}
|
||||
|
||||
static u8 sub_81D1714(match_call_t matchCall)
|
||||
static u8 MatchCallGetMapSec_Type0(match_call_t matchCall)
|
||||
{
|
||||
return matchCall.type0->v1;
|
||||
return matchCall.type0->mapSec;
|
||||
}
|
||||
|
||||
static u8 sub_81D1718(match_call_t matchCall)
|
||||
static u8 MatchCallGetMapSec_Type1(match_call_t matchCall)
|
||||
{
|
||||
return matchCall.type1->v1;
|
||||
return matchCall.type1->mapSec;
|
||||
}
|
||||
|
||||
static u8 sub_81D171C(match_call_t matchCall)
|
||||
static u8 MatchCallGetMapSec_Type2(match_call_t matchCall)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
@ -928,17 +929,17 @@ static u8 sub_81D171C(match_call_t matchCall)
|
||||
if (!FlagGet(matchCall.type2->v10[i].flag))
|
||||
break;
|
||||
}
|
||||
return matchCall.type2->v10[i].v2;
|
||||
return matchCall.type2->v10[i].mapSec;
|
||||
}
|
||||
|
||||
static u8 sub_81D1750(match_call_t matchCall)
|
||||
static u8 MatchCallGetMapSec_Type4(match_call_t matchCall)
|
||||
{
|
||||
return 0xd5;
|
||||
return MAPSEC_NONE;
|
||||
}
|
||||
|
||||
static u8 sub_81D1754(match_call_t matchCall)
|
||||
static u8 MatchCallGetMapSec_Type3(match_call_t matchCall)
|
||||
{
|
||||
return 0xd5;
|
||||
return MAPSEC_NONE;
|
||||
}
|
||||
|
||||
bool32 MatchCall_IsRematchable(u32 idx)
|
||||
@ -970,12 +971,12 @@ static bool32 MatchCall_IsRematchable_Type2(match_call_t matchCall)
|
||||
return gSaveBlock1Ptr->trainerRematches[matchCall.type2->rematchTableIdx] ? TRUE : FALSE;
|
||||
}
|
||||
|
||||
static bool32 MatchCall_IsRematchable_Type3(match_call_t matchCall)
|
||||
static bool32 MatchCall_IsRematchable_Type4(match_call_t matchCall)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static bool32 MatchCall_IsRematchable_Type4(match_call_t matchCall)
|
||||
static bool32 MatchCall_IsRematchable_Type3(match_call_t matchCall)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
@ -1051,12 +1052,12 @@ static u32 MatchCall_GetRematchTableIdx_Type2(match_call_t matchCall)
|
||||
return matchCall.type2->rematchTableIdx;
|
||||
}
|
||||
|
||||
static u32 MatchCall_GetRematchTableIdx_Type3(match_call_t matchCall)
|
||||
static u32 MatchCall_GetRematchTableIdx_Type4(match_call_t matchCall)
|
||||
{
|
||||
return REMATCH_TABLE_ENTRIES;
|
||||
}
|
||||
|
||||
static u32 MatchCall_GetRematchTableIdx_Type4(match_call_t matchCall)
|
||||
static u32 MatchCall_GetRematchTableIdx_Type3(match_call_t matchCall)
|
||||
{
|
||||
return REMATCH_TABLE_ENTRIES;
|
||||
}
|
||||
@ -1091,12 +1092,12 @@ static void MatchCall_GetMessage_Type2(match_call_t matchCall, u8 *dest)
|
||||
sub_81D1920(matchCall.type2->textData, dest);
|
||||
}
|
||||
|
||||
static void MatchCall_GetMessage_Type3(match_call_t matchCall, u8 *dest)
|
||||
static void MatchCall_GetMessage_Type4(match_call_t matchCall, u8 *dest)
|
||||
{
|
||||
sub_81D1920(matchCall.type4->textData, dest);
|
||||
}
|
||||
|
||||
static void MatchCall_GetMessage_Type4(match_call_t matchCall, u8 *dest)
|
||||
static void MatchCall_GetMessage_Type3(match_call_t matchCall, u8 *dest)
|
||||
{
|
||||
sub_8197080(dest);
|
||||
}
|
||||
@ -1190,13 +1191,13 @@ static void MatchCall_GetNameAndDesc_Type2(match_call_t matchCall, const u8 **de
|
||||
*desc = matchCall.type2->desc;
|
||||
}
|
||||
|
||||
static void MatchCall_GetNameAndDesc_Type3(match_call_t matchCall, const u8 **desc, const u8 **name)
|
||||
static void MatchCall_GetNameAndDesc_Type4(match_call_t matchCall, const u8 **desc, const u8 **name)
|
||||
{
|
||||
*desc = matchCall.type4->desc;
|
||||
*name = matchCall.type4->name;
|
||||
}
|
||||
|
||||
static void MatchCall_GetNameAndDesc_Type4(match_call_t matchCall, const u8 **desc, const u8 **name)
|
||||
static void MatchCall_GetNameAndDesc_Type3(match_call_t matchCall, const u8 **desc, const u8 **name)
|
||||
{
|
||||
*desc = matchCall.type3->desc;
|
||||
*name = matchCall.type3->name;
|
||||
|
@ -60,8 +60,77 @@ u32 sub_81D0954(void);
|
||||
void sub_81D1500(struct Pokenav10Struct *structPtr);
|
||||
bool32 sub_81D1524(struct Pokenav10Struct *structPtr);
|
||||
void sub_81D1538(struct Sprite *sprite);
|
||||
u32 sub_81D0C84(s32);
|
||||
u32 sub_81D0D2C(s32);
|
||||
u32 sub_81D0D8C(s32);
|
||||
u32 sub_81D0E00(s32);
|
||||
u32 sub_81D0C54(s32);
|
||||
|
||||
const u8 gUnknown_086237F8[][4] =
|
||||
{
|
||||
{1, 1, 0, 0},
|
||||
{3, 4, 1, 0},
|
||||
{3, 4, 5, 0},
|
||||
{3, 4, 9, 0},
|
||||
{3, 4, 13, 0},
|
||||
{3, 4, 17, 0},
|
||||
{1, 1, 21, 0},
|
||||
{1, 1, 22, 0},
|
||||
{1, 1, 23, 0},
|
||||
{1, 1, 24, 0},
|
||||
{1, 1, 25, 1},
|
||||
{1, 1, 26, 1},
|
||||
{1, 1, 27, 1},
|
||||
{1, 1, 28, 1},
|
||||
{1, 1, 29, 1},
|
||||
{1, 1, 30, 1},
|
||||
{1, 1, 31, 1}
|
||||
};
|
||||
|
||||
#include "data/text/ribbon_descriptions.h"
|
||||
#include "data/text/gift_ribbon_descriptions.h"
|
||||
|
||||
const u16 gUnknown_08623FF8[] = INCBIN_U16("graphics/pokenav/ribbons_icon1.gbapal");
|
||||
const u16 gUnknown_08624018[] = INCBIN_U16("graphics/pokenav/ribbons_icon2.gbapal");
|
||||
const u16 gUnknown_08624038[] = INCBIN_U16("graphics/pokenav/ribbons_icon3.gbapal");
|
||||
const u16 gUnknown_08624058[] = INCBIN_U16("graphics/pokenav/ribbons_icon4.gbapal");
|
||||
const u16 gUnknown_08624078[] = INCBIN_U16("graphics/pokenav/ribbons_icon5.gbapal");
|
||||
const u16 gUnknown_08624098[] = INCBIN_U16("graphics/pokenav/8624098.gbapal");
|
||||
const u32 gUnknown_086240B8[] = INCBIN_U32("graphics/pokenav/ribbons_icon.4bpp.lz");
|
||||
const u32 gUnknown_08624280[] = INCBIN_U32("graphics/pokenav/ribbons_icon_big.4bpp.lz");
|
||||
|
||||
const struct BgTemplate gUnknown_08624B98[2] =
|
||||
{
|
||||
{
|
||||
.bg = 1,
|
||||
.charBaseIndex = 3,
|
||||
.mapBaseIndex = 0x07,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 1,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 1,
|
||||
.mapBaseIndex = 0x06,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 2,
|
||||
.baseTile = 0
|
||||
}
|
||||
};
|
||||
|
||||
const LoopedTask gUnknown_08624BA0[] =
|
||||
{
|
||||
NULL,
|
||||
sub_81D0C84,
|
||||
sub_81D0D2C,
|
||||
sub_81D0D8C,
|
||||
sub_81D0E00,
|
||||
sub_81D0C54
|
||||
};
|
||||
|
||||
// code
|
||||
static const struct WindowTemplate gUnknown_08624BB8 =
|
||||
{
|
||||
.bg = 2,
|
||||
|
@ -1,6 +1,261 @@
|
||||
#include "global.h"
|
||||
#include "bg.h"
|
||||
#include "gym_leader_rematch.h"
|
||||
#include "pokenav.h"
|
||||
#include "sprite.h"
|
||||
#include "window.h"
|
||||
#include "strings.h"
|
||||
#include "scanline_effect.h"
|
||||
|
||||
extern const u32 gPokenavOptions_Gfx[];
|
||||
extern const u16 gPokenavOptions_Pal[];
|
||||
|
||||
const u16 gUnknown_0861FC78[] = INCBIN_U16("graphics/pokenav/bg.gbapal");
|
||||
const u32 gUnknown_0861FC98[] = INCBIN_U32("graphics/pokenav/bg.4bpp.lz");
|
||||
const u32 gUnknown_0861FCAC[] = INCBIN_U32("graphics/pokenav/bg.bin.lz");
|
||||
const u16 gUnknown_0861FD4C[] = INCBIN_U16("graphics/pokenav/outline.gbapal");
|
||||
const u32 gUnknown_0861FD6C[] = INCBIN_U32("graphics/pokenav/outline.4bpp.lz");
|
||||
const u32 gUnknown_0861FFF4[] = INCBIN_U32("graphics/pokenav/outline_map.bin.lz");
|
||||
const u16 gUnknown_08620104[] = INCBIN_U16("graphics/pokenav/blue_light.gbapal");
|
||||
const u32 gUnknown_08620124[] = INCBIN_U32("graphics/pokenav/blue_light.4bpp.lz");
|
||||
|
||||
const struct BgTemplate gUnknown_08620194[3] =
|
||||
{
|
||||
{
|
||||
.bg = 1,
|
||||
.charBaseIndex = 1,
|
||||
.mapBaseIndex = 0x0F,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 1,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 2,
|
||||
.mapBaseIndex = 0x17,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 2,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 3,
|
||||
.charBaseIndex = 3,
|
||||
.mapBaseIndex = 0x1F,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 3,
|
||||
.baseTile = 0
|
||||
}
|
||||
};
|
||||
|
||||
u32 sub_81C9C6C(s32);
|
||||
u32 sub_81C9CA8(s32);
|
||||
u32 sub_81C9D44(s32);
|
||||
u32 sub_81C9DD8(s32);
|
||||
u32 sub_81C9E58(s32);
|
||||
u32 sub_81C9EC8(s32);
|
||||
u32 sub_81C9EF8(s32);
|
||||
u32 sub_81C9F28(s32);
|
||||
|
||||
u32 (*const gUnknown_086201A0[])(s32) =
|
||||
{
|
||||
NULL,
|
||||
sub_81C9C6C,
|
||||
sub_81C9CA8,
|
||||
sub_81C9D44,
|
||||
sub_81C9DD8,
|
||||
sub_81C9E58,
|
||||
sub_81C9EC8,
|
||||
sub_81C9EF8,
|
||||
sub_81C9F28
|
||||
};
|
||||
|
||||
const struct CompressedSpriteSheet gUnknown_086201C4[] =
|
||||
{
|
||||
{
|
||||
.data = gPokenavOptions_Gfx,
|
||||
.size = 0x3400,
|
||||
.tag = 0x0003
|
||||
},
|
||||
{
|
||||
.data = gUnknown_08620124,
|
||||
.size = 0x0100,
|
||||
.tag = 0x0001
|
||||
}
|
||||
};
|
||||
|
||||
const struct SpritePalette gUnknown_086201D4[] =
|
||||
{
|
||||
{gPokenavOptions_Pal + 0x00, 4},
|
||||
{gPokenavOptions_Pal + 0x10, 5},
|
||||
{gPokenavOptions_Pal + 0x20, 6},
|
||||
{gPokenavOptions_Pal + 0x30, 7},
|
||||
{gPokenavOptions_Pal + 0x40, 8},
|
||||
{gUnknown_08620104, 3},
|
||||
{}
|
||||
};
|
||||
|
||||
const u16 gUnknown_0862020C[] = {0, 0};
|
||||
const u16 gUnknown_08620210[] = {0x20, 1};
|
||||
const u16 gUnknown_08620214[] = {0x40, 4};
|
||||
const u16 gUnknown_08620218[] = {0x60, 2};
|
||||
const u16 gUnknown_0862021C[] = {0x80, 3};
|
||||
const u16 gUnknown_08620220[] = {0xA0, 1};
|
||||
const u16 gUnknown_08620224[] = {0xC0, 1};
|
||||
const u16 gUnknown_08620228[] = {0xE0, 4};
|
||||
const u16 gUnknown_0862022C[] = {0x100, 1};
|
||||
const u16 gUnknown_08620230[] = {0x120, 2};
|
||||
const u16 gUnknown_08620234[] = {0x140, 0};
|
||||
const u16 gUnknown_08620238[] = {0x160, 0};
|
||||
const u16 gUnknown_0862023C[] = {0x180, 3};
|
||||
|
||||
struct UnkStruct_08620240
|
||||
{
|
||||
u16 unk0;
|
||||
u16 unk2;
|
||||
const u16 *unk4[6];
|
||||
};
|
||||
|
||||
const struct UnkStruct_08620240 gUnknown_08620240[5] =
|
||||
{
|
||||
{
|
||||
0x2A,
|
||||
0x14,
|
||||
{gUnknown_0862020C, gUnknown_08620210, gUnknown_0862021C, NULL, NULL, NULL}
|
||||
},
|
||||
{
|
||||
0x2A,
|
||||
0x14,
|
||||
{gUnknown_0862020C, gUnknown_08620210, gUnknown_08620214, gUnknown_0862021C, NULL, NULL}
|
||||
},
|
||||
{
|
||||
0x2A,
|
||||
0x14,
|
||||
{gUnknown_0862020C, gUnknown_08620210, gUnknown_08620214, gUnknown_08620218, gUnknown_0862021C, NULL}
|
||||
},
|
||||
{
|
||||
0x38,
|
||||
0x14,
|
||||
{gUnknown_08620220, gUnknown_08620224, gUnknown_0862023C, NULL, NULL, NULL}
|
||||
},
|
||||
{
|
||||
0x28,
|
||||
0x10,
|
||||
{gUnknown_08620228, gUnknown_0862022C, gUnknown_08620230, gUnknown_08620234, gUnknown_08620238, gUnknown_0862023C}
|
||||
},
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_086202CC =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 3,
|
||||
.tilemapTop = 17,
|
||||
.width = 0x18,
|
||||
.height = 0x2,
|
||||
.paletteNum = 1,
|
||||
.baseBlock = 8
|
||||
};
|
||||
|
||||
const u8 *const gUnknown_086202D4[] =
|
||||
{
|
||||
gUnknown_085EBCC5,
|
||||
gUnknown_085EBCE8,
|
||||
gUnknown_085EBD01,
|
||||
gUnknown_085EBD1C,
|
||||
gUnknown_085EBD34,
|
||||
gUnknown_085EBD83,
|
||||
gUnknown_085EBDA2,
|
||||
gUnknown_085EBDBF,
|
||||
gUnknown_085EBDDB,
|
||||
gUnknown_085EBDEE,
|
||||
gUnknown_085EBE06,
|
||||
gUnknown_085EBE19,
|
||||
gUnknown_085EBE2D,
|
||||
gUnknown_085EBE41
|
||||
};
|
||||
|
||||
const u8 gUnknown_0862030C[] = {6, 8, 7};
|
||||
|
||||
const u8 gUnknown_0862030F[] = {6, 8, 7, 0, 0};
|
||||
|
||||
const struct OamData gUnknown_08620314 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(32x16),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(32x16),
|
||||
.tileNum = 0,
|
||||
.priority = 2,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const union AffineAnimCmd gUnknown_0862031C[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
const union AffineAnimCmd gUnknown_0862032C[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0x12),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
const union AffineAnimCmd *const gUnknown_08620344[] =
|
||||
{
|
||||
gUnknown_0862031C,
|
||||
gUnknown_0862032C
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_0862034C =
|
||||
{
|
||||
.tileTag = 3,
|
||||
.paletteTag = 4,
|
||||
.oam = &gUnknown_08620314,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_08620344,
|
||||
.callback = SpriteCallbackDummy,
|
||||
};
|
||||
|
||||
const struct OamData gUnknown_08620364 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(32x16),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(32x16),
|
||||
.tileNum = 0,
|
||||
.priority = 2,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_0862036C =
|
||||
{
|
||||
.tileTag = 1,
|
||||
.paletteTag = 3,
|
||||
.oam = &gUnknown_08620364,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = SpriteCallbackDummy,
|
||||
};
|
||||
|
||||
const struct ScanlineEffectParams gUnknown_08620384 =
|
||||
{
|
||||
(void *)REG_ADDR_WIN0H,
|
||||
((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1,
|
||||
1,
|
||||
0
|
||||
};
|
||||
|
||||
bool32 sub_81C98D4(void)
|
||||
{
|
||||
|
@ -37,9 +37,10 @@ static u32 sub_81CACF8(struct Pokenav3Struct *);
|
||||
static u32 sub_81CAD20(s32);
|
||||
static bool32 sub_81CB1D0(void);
|
||||
|
||||
extern const u8 gUnknown_08622508[];
|
||||
extern const u8 gUnknown_0862250A[];
|
||||
extern const u8 *const gUnknown_08622028[][4];
|
||||
#include "data/text/match_call_messages.h"
|
||||
|
||||
const u8 gUnknown_08622508[] = {0, 2};
|
||||
const u8 gUnknown_0862250A[] = {0, 1, 2};
|
||||
|
||||
bool32 sub_81CAAE8(void)
|
||||
{
|
||||
@ -207,7 +208,7 @@ static u32 sub_81CAD20(s32 taskState)
|
||||
{
|
||||
state->unk1C[state->unkA].unk2 = j;
|
||||
state->unk1C[state->unkA].unk0 = 1;
|
||||
state->unk1C[state->unkA].unk1 = sub_81D16DC(j);
|
||||
state->unk1C[state->unkA].unk1 = MatchCallMapSecGetByIndex(j);
|
||||
state->unkA++;
|
||||
}
|
||||
|
||||
@ -364,7 +365,7 @@ const u8 *sub_81CAFD8(int index, int textType)
|
||||
var0 = state->unk1C[index].unk2;
|
||||
}
|
||||
|
||||
return gUnknown_08622028[var0][textType];
|
||||
return gMatchCallMessages[var0][textType];
|
||||
}
|
||||
|
||||
u16 sub_81CB01C(void)
|
||||
|
@ -93,27 +93,191 @@ static void sub_81CC330(struct Pokenav4Struct *);
|
||||
static struct Sprite *sub_81CC370(void);
|
||||
static void sub_81CC440(struct Sprite *sprite);
|
||||
static void sub_81CC4A4(struct Sprite *sprite);
|
||||
void sub_81CC34C(struct Sprite *sprite);
|
||||
u32 sub_81CB510(s32);
|
||||
u32 sub_81CB588(s32);
|
||||
u32 sub_81CB600(s32);
|
||||
u32 sub_81CB678(s32);
|
||||
u32 sub_81CB6F0(s32);
|
||||
u32 sub_81CB734(s32);
|
||||
u32 sub_81CB75C(s32);
|
||||
u32 sub_81CB7A0(s32);
|
||||
u32 sub_81CB824(s32);
|
||||
u32 sub_81CB888(s32);
|
||||
u32 sub_81CB93C(s32);
|
||||
u32 sub_81CBAD4(s32);
|
||||
u32 sub_81CB9C8(s32);
|
||||
u32 sub_81CBA68(s32);
|
||||
u32 sub_81CBB74(s32);
|
||||
|
||||
extern const LoopedTask gUnknown_08622798[];
|
||||
extern const struct BgTemplate gUnknown_0862278C[3];
|
||||
extern const u16 gUnknown_08622510[];
|
||||
extern const u32 gUnknown_08622530[];
|
||||
extern const u32 gUnknown_08622760[];
|
||||
extern const u16 gUnknown_08622700[];
|
||||
extern const u16 gUnknown_08622720[];
|
||||
extern const u8 gUnknown_086225D4[];
|
||||
extern const u16 gUnknown_086226E0[];
|
||||
extern const struct BgTemplate gUnknown_08622794;
|
||||
extern const struct WindowTemplate gUnknown_086227D8;
|
||||
extern const struct WindowTemplate gUnknown_086227E0;
|
||||
extern const u8 *const gUnknown_086227E8[];
|
||||
extern const struct WindowTemplate gUnknown_08622808;
|
||||
extern const u8 gUnknown_086227F4[];
|
||||
extern const struct CompressedSpriteSheet gUnknown_08622810[1];
|
||||
extern const struct SpritePalette gUnknown_08622818[];
|
||||
extern const struct SpriteTemplate gUnknown_08622830;
|
||||
extern const struct SpriteTemplate gUnknown_08622850;
|
||||
|
||||
const u16 gUnknown_08622510[] = INCBIN_U16("graphics/pokenav/ui_matchcall.gbapal");
|
||||
const u32 gUnknown_08622530[] = INCBIN_U32("graphics/pokenav/ui_matchcall.4bpp.lz");
|
||||
const u32 gUnknown_086225D4[] = INCBIN_U32("graphics/pokenav/ui_matchcall.bin.lz");
|
||||
const u16 gUnknown_08622698[] = INCBIN_U16("graphics/pokenav/arrow2.gbapal");
|
||||
const u32 gUnknown_086226B8[] = INCBIN_U32("graphics/pokenav/arrow2.4bpp.lz");
|
||||
const u16 gUnknown_086226E0[] = INCBIN_U16("graphics/pokenav/86226E0.gbapal");
|
||||
const u16 gUnknown_08622700[] = INCBIN_U16("graphics/pokenav/8622700.gbapal");
|
||||
const u16 gUnknown_08622720[] = INCBIN_U16("graphics/pokenav/pokeball_matchcall.gbapal");
|
||||
const u32 gUnknown_08622760[] = INCBIN_U32("graphics/pokenav/pokeball_matchcall.4bpp.lz");
|
||||
|
||||
const struct BgTemplate gUnknown_0862278C[3] =
|
||||
{
|
||||
{
|
||||
.bg = 1,
|
||||
.charBaseIndex = 3,
|
||||
.mapBaseIndex = 0x1F,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 1,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 2,
|
||||
.mapBaseIndex = 0x06,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 2,
|
||||
.baseTile = 0x80
|
||||
},
|
||||
{
|
||||
.bg = 3,
|
||||
.charBaseIndex = 1,
|
||||
.mapBaseIndex = 0x07,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 3,
|
||||
.baseTile = 0
|
||||
}
|
||||
};
|
||||
|
||||
const LoopedTask gUnknown_08622798[] =
|
||||
{
|
||||
NULL,
|
||||
sub_81CB510,
|
||||
sub_81CB588,
|
||||
sub_81CB600,
|
||||
sub_81CB678,
|
||||
sub_81CB6F0,
|
||||
sub_81CB734,
|
||||
sub_81CB75C,
|
||||
sub_81CB7A0,
|
||||
sub_81CB824,
|
||||
sub_81CB888,
|
||||
sub_81CB93C,
|
||||
sub_81CBAD4,
|
||||
sub_81CB9C8,
|
||||
sub_81CBA68,
|
||||
sub_81CBB74
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_086227D8 =
|
||||
{
|
||||
.bg = 2,
|
||||
.tilemapLeft = 0,
|
||||
.tilemapTop = 5,
|
||||
.width = 11,
|
||||
.height = 2,
|
||||
.paletteNum = 2,
|
||||
.baseBlock = 16
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_086227E0 =
|
||||
{
|
||||
.bg = 2,
|
||||
.tilemapLeft = 0,
|
||||
.tilemapTop = 9,
|
||||
.width = 11,
|
||||
.height = 8,
|
||||
.paletteNum = 2,
|
||||
.baseBlock = 38
|
||||
};
|
||||
|
||||
const u8 *const gUnknown_086227E8[] =
|
||||
{
|
||||
gUnknown_085EC017,
|
||||
gUnknown_085EC01C,
|
||||
gUnknown_085EC022
|
||||
};
|
||||
|
||||
const u8 gUnknown_086227F4[] = _("·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·\p");
|
||||
|
||||
const struct WindowTemplate gUnknown_08622808 =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 12,
|
||||
.width = 0x1C,
|
||||
.height = 0x04,
|
||||
.paletteNum = 1,
|
||||
.baseBlock = 10
|
||||
};
|
||||
|
||||
const struct CompressedSpriteSheet gUnknown_08622810[1] =
|
||||
{
|
||||
{gUnknown_086226B8, 0x40, 7}
|
||||
};
|
||||
|
||||
const struct SpritePalette gUnknown_08622818[] =
|
||||
{
|
||||
{gUnknown_08622698, 12},
|
||||
{}
|
||||
};
|
||||
|
||||
const struct OamData gUnknown_08622828 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(8x16),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(8x16),
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_08622830 =
|
||||
{
|
||||
.tileTag = 7,
|
||||
.paletteTag = 12,
|
||||
.oam = &gUnknown_08622828,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_81CC34C,
|
||||
};
|
||||
|
||||
const struct OamData gUnknown_08622848 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_08622850 =
|
||||
{
|
||||
.tileTag = 8,
|
||||
.paletteTag = 13,
|
||||
.oam = &gUnknown_08622848,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = SpriteCallbackDummy,
|
||||
};
|
||||
|
||||
bool32 sub_81CB260(void)
|
||||
{
|
||||
struct Pokenav4Struct *state = AllocSubstruct(6, sizeof(struct Pokenav4Struct));
|
||||
@ -718,7 +882,7 @@ static void sub_81CBBB8(void)
|
||||
template.unkE = 7;
|
||||
template.unk10 = sub_81CB050;
|
||||
template.unk14 = sub_81CBCEC;
|
||||
sub_81C81D4(&gUnknown_08622794, &template, 2);
|
||||
sub_81C81D4(&gUnknown_0862278C[2], &template, 2);
|
||||
CreateTask(sub_81CBC64, 7);
|
||||
}
|
||||
|
||||
|
@ -32,11 +32,11 @@ struct Pokenav5Struct_2
|
||||
u8 cityZoomPics[22][0xC8];
|
||||
};
|
||||
|
||||
struct CityZoomPic
|
||||
struct CityMapEntry
|
||||
{
|
||||
u16 mapSecId;
|
||||
u16 unk2;
|
||||
const u32 *data;
|
||||
u16 index;
|
||||
const u32 *tilemap;
|
||||
};
|
||||
|
||||
static u32 sub_81CC568(struct Pokenav5Struct *);
|
||||
@ -61,17 +61,110 @@ static void sub_81CCDE8(struct Pokenav5Struct_2 *, int, int);
|
||||
static void sub_81CCFA4(int);
|
||||
static void sub_81CCC9C(u8 taskId);
|
||||
static void sub_81CCF78(void);
|
||||
void sub_81CCEF4(struct Sprite *sprite);
|
||||
u32 sub_81CC848(s32);
|
||||
u32 sub_81CC878(s32);
|
||||
u32 sub_81CC8D8(s32);
|
||||
u32 sub_81CC95C(s32);
|
||||
|
||||
extern const LoopedTask gUnknown_086230E4[];
|
||||
extern const struct BgTemplate gUnknown_086230D8[2];
|
||||
extern const struct CompressedSpriteSheet gUnknown_086230F8[1];
|
||||
extern const struct SpritePalette gUnknown_08623100[];
|
||||
extern const struct WindowTemplate gUnknown_08623110;
|
||||
extern const u32 gUnknown_08622888[];
|
||||
extern const u16 gUnknown_08622868[];
|
||||
extern const u16 gHoennMapZoomIcons_Pal[];
|
||||
extern const struct CityZoomPic gUnknown_08623118[22];
|
||||
extern const struct SpriteTemplate gUnknown_086231D0;
|
||||
extern const u32 gHoennMapZoomIcons_Gfx[];
|
||||
|
||||
const u16 gUnknown_08622868[] = INCBIN_U16("graphics/pokenav/8622868.gbapal");
|
||||
const u32 gUnknown_08622888[] = INCBIN_U32("graphics/pokenav/zoom_tiles.4bpp.lz");
|
||||
|
||||
#include "data/region_map/city_map_tilemaps.h"
|
||||
|
||||
|
||||
const struct BgTemplate gUnknown_086230D8[3] =
|
||||
{
|
||||
{
|
||||
.bg = 1,
|
||||
.charBaseIndex = 1,
|
||||
.mapBaseIndex = 0x1F,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 1,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 2,
|
||||
.mapBaseIndex = 0x06,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 2,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 0,
|
||||
.mapBaseIndex = 0x00,
|
||||
.screenSize = 2,
|
||||
.paletteMode = 0,
|
||||
.priority = 3,
|
||||
.baseTile = 0
|
||||
},
|
||||
};
|
||||
|
||||
const LoopedTask gUnknown_086230E4[] =
|
||||
{
|
||||
NULL,
|
||||
sub_81CC848,
|
||||
sub_81CC878,
|
||||
sub_81CC8D8,
|
||||
sub_81CC95C
|
||||
};
|
||||
|
||||
const struct CompressedSpriteSheet gUnknown_086230F8[1] =
|
||||
{
|
||||
{gHoennMapZoomIcons_Gfx, 0x800, 6}
|
||||
};
|
||||
|
||||
const struct SpritePalette gUnknown_08623100[] =
|
||||
{
|
||||
{gHoennMapZoomIcons_Pal, 11},
|
||||
{}
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_08623110 =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 17,
|
||||
.tilemapTop = 4,
|
||||
.width = 12,
|
||||
.height = 13,
|
||||
.paletteNum = 1,
|
||||
.baseBlock = 0x4C
|
||||
};
|
||||
|
||||
#include "data/region_map/city_map_entries.h"
|
||||
|
||||
const struct OamData gUnknown_086231C8 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(32x8),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(32x8),
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_086231D0 =
|
||||
{
|
||||
.tileTag = 6,
|
||||
.paletteTag = 11,
|
||||
.oam = &gUnknown_086231C8,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_81CCEF4,
|
||||
};
|
||||
|
||||
u32 sub_81CC4D4(void)
|
||||
{
|
||||
@ -215,7 +308,7 @@ static u32 sub_81CC6F4(s32 taskState)
|
||||
HideBg(2);
|
||||
HideBg(3);
|
||||
SetBgMode(1);
|
||||
InitBgTemplates(gUnknown_086230D8, ARRAY_COUNT(gUnknown_086230D8));
|
||||
InitBgTemplates(gUnknown_086230D8, ARRAY_COUNT(gUnknown_086230D8) - 1);
|
||||
regionMap = GetSubstructPtr(16);
|
||||
sub_8122CF8(regionMap, &gUnknown_086230D8[1], sub_81CC6D0());
|
||||
sub_81CC9C0();
|
||||
@ -278,7 +371,7 @@ static u32 sub_81CC6F4(s32 taskState)
|
||||
}
|
||||
}
|
||||
|
||||
u32 sub_81CC848(int taskState)
|
||||
u32 sub_81CC848(s32 taskState)
|
||||
{
|
||||
struct Pokenav5Struct_2 *state = GetSubstructPtr(4);
|
||||
switch (taskState)
|
||||
@ -295,7 +388,7 @@ u32 sub_81CC848(int taskState)
|
||||
return 4;
|
||||
}
|
||||
|
||||
u32 sub_81CC878(int taskState)
|
||||
u32 sub_81CC878(s32 taskState)
|
||||
{
|
||||
switch (taskState)
|
||||
{
|
||||
@ -321,7 +414,7 @@ u32 sub_81CC878(int taskState)
|
||||
return 4;
|
||||
}
|
||||
|
||||
u32 sub_81CC8D8(int taskState)
|
||||
u32 sub_81CC8D8(s32 taskState)
|
||||
{
|
||||
struct Pokenav5Struct_2 *state = GetSubstructPtr(4);
|
||||
switch (taskState)
|
||||
@ -354,7 +447,7 @@ u32 sub_81CC8D8(int taskState)
|
||||
return 4;
|
||||
}
|
||||
|
||||
u32 sub_81CC95C(int taskState)
|
||||
u32 sub_81CC95C(s32 taskState)
|
||||
{
|
||||
switch (taskState)
|
||||
{
|
||||
@ -521,9 +614,9 @@ static bool32 sub_81CCD24(void)
|
||||
static u32 sub_81CCD34(s32 taskState)
|
||||
{
|
||||
struct Pokenav5Struct_2 *state = GetSubstructPtr(4);
|
||||
if (taskState < (int)ARRAY_COUNT(gUnknown_08623118))
|
||||
if (taskState < (int)ARRAY_COUNT(gPokenavCityMaps))
|
||||
{
|
||||
LZ77UnCompWram(gUnknown_08623118[taskState].data, state->cityZoomPics[taskState]);
|
||||
LZ77UnCompWram(gPokenavCityMaps[taskState].tilemap, state->cityZoomPics[taskState]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -533,10 +626,10 @@ static u32 sub_81CCD34(s32 taskState)
|
||||
static void sub_81CCD70(struct Pokenav5Struct_2 *state, int mapSecId, int pos)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < (int)ARRAY_COUNT(gUnknown_08623118) && (gUnknown_08623118[i].mapSecId != mapSecId || gUnknown_08623118[i].unk2 != pos); i++)
|
||||
for (i = 0; i < (int)ARRAY_COUNT(gPokenavCityMaps) && (gPokenavCityMaps[i].mapSecId != mapSecId || gPokenavCityMaps[i].index != pos); i++)
|
||||
;
|
||||
|
||||
if (i == ARRAY_COUNT(gUnknown_08623118))
|
||||
if (i == ARRAY_COUNT(gPokenavCityMaps))
|
||||
return;
|
||||
|
||||
FillBgTilemapBufferRect_Palette0(1, 0x1041, 17, 6, 12, 11);
|
||||
|
@ -1,5 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "bg.h"
|
||||
#include "window.h"
|
||||
#include "pokenav.h"
|
||||
#include "decompress.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "graphics.h"
|
||||
@ -13,7 +15,106 @@
|
||||
#include "strings.h"
|
||||
#include "text.h"
|
||||
|
||||
static u8 gUnknown_030012BC;
|
||||
u32 sub_81CE37C(s32);
|
||||
u32 sub_81CE2D0(s32);
|
||||
u32 sub_81CE4D8(s32);
|
||||
u32 sub_81CE5E4(s32);
|
||||
u32 sub_81CE6BC(s32);
|
||||
u32 sub_81CE700(s32);
|
||||
|
||||
BSS_DATA u8 gUnknown_030012BC;
|
||||
|
||||
const u16 gUnknown_086231E8[] = INCBIN_U16("graphics/pokenav/86231E8.gbapal");
|
||||
const u16 gUnknown_08623208[] = INCBIN_U16("graphics/pokenav/8623208.gbapal");
|
||||
const u32 gUnknown_08623228[] = INCBIN_U32("graphics/pokenav/8623228.4bpp.lz");
|
||||
const u32 gUnknown_0862323C[] = INCBIN_U32("graphics/pokenav/862323C.bin.lz");
|
||||
const u16 gUnknown_08623338[] = INCBIN_U16("graphics/pokenav/8623338.gbapal");
|
||||
|
||||
const struct BgTemplate gUnknown_08623358[3] =
|
||||
{
|
||||
{
|
||||
.bg = 1,
|
||||
.charBaseIndex = 1,
|
||||
.mapBaseIndex = 0x1F,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 1,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 3,
|
||||
.mapBaseIndex = 0x1D,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 2,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 3,
|
||||
.charBaseIndex = 2,
|
||||
.mapBaseIndex = 0x1E,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 3,
|
||||
.baseTile = 0
|
||||
}
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_08623364 =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 13,
|
||||
.tilemapTop = 1,
|
||||
.width = 13,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 2
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_0862336C =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 6,
|
||||
.width = 7,
|
||||
.height = 2,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x36
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_08623374 =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 0x1C,
|
||||
.width = 5,
|
||||
.height = 2,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x44
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_0862337C =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 13,
|
||||
.tilemapTop = 0x1C,
|
||||
.width = 3,
|
||||
.height = 2,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x44
|
||||
};
|
||||
|
||||
const LoopedTask gUnknown_08623384[] =
|
||||
{
|
||||
NULL,
|
||||
sub_81CE37C,
|
||||
sub_81CE2D0,
|
||||
sub_81CE4D8,
|
||||
sub_81CE5E4,
|
||||
sub_81CE6BC,
|
||||
sub_81CE700
|
||||
};
|
||||
|
||||
struct Pokenav7Struct
|
||||
{
|
||||
@ -52,19 +153,6 @@ void sub_81CEEC8(void);
|
||||
void sub_81CEE68(void);
|
||||
void sub_81CEE74(bool8 showBg);
|
||||
|
||||
// const data
|
||||
extern const LoopedTask gUnknown_08623384[];
|
||||
extern const struct BgTemplate gUnknown_08623358[3];
|
||||
extern const u32 gUnknown_08623228[];
|
||||
extern const u32 gUnknown_0862323C[];
|
||||
extern const u16 gUnknown_086231E8[];
|
||||
extern const u16 gUnknown_08623338[];
|
||||
extern const u16 gUnknown_08623208[];
|
||||
extern const struct WindowTemplate gUnknown_08623364;
|
||||
extern const struct WindowTemplate gUnknown_0862336C;
|
||||
extern const struct WindowTemplate gUnknown_08623374;
|
||||
extern const struct WindowTemplate gUnknown_0862337C;
|
||||
|
||||
// code
|
||||
bool32 sub_81CDDD4(void)
|
||||
{
|
||||
|
@ -1,5 +1,81 @@
|
||||
#include "global.h"
|
||||
#include "pokenav.h"
|
||||
#include "bg.h"
|
||||
#include "window.h"
|
||||
|
||||
u32 sub_81CF134(void);
|
||||
u32 sub_81CF1C4(void);
|
||||
u32 sub_81CF1D8(void);
|
||||
u32 sub_81CF278(void);
|
||||
u32 sub_81CF578(s32);
|
||||
u32 sub_81CF5F0(s32);
|
||||
u32 sub_81CF668(s32);
|
||||
u32 sub_81CF6E0(s32);
|
||||
u32 sub_81CF758(s32);
|
||||
u32 sub_81CF798(s32);
|
||||
|
||||
const u32 gUnknown_086233A0[] = {0x16, 0x17, 0x18, 0x21, 0x2F};
|
||||
|
||||
u32 (*const gUnknown_086233B4[])(void) =
|
||||
{
|
||||
sub_81CF134,
|
||||
sub_81CF1C4,
|
||||
sub_81CF1D8,
|
||||
sub_81CF278
|
||||
};
|
||||
|
||||
const u16 gUnknown_086233C4[] = INCBIN_U16("graphics/pokenav/condition_search2.gbapal");
|
||||
const u32 gUnknown_086233E4[] = INCBIN_U32("graphics/pokenav/condition_search2.4bpp.lz");
|
||||
const u32 gUnknown_086234AC[] = INCBIN_U32("graphics/pokenav/condition_search2.bin.lz");
|
||||
const u16 gUnknown_08623570[] = INCBIN_U16("graphics/pokenav/8623570.gbapal");
|
||||
|
||||
const struct BgTemplate gUnknown_08623590 =
|
||||
{
|
||||
.bg = 1,
|
||||
.charBaseIndex = 1,
|
||||
.mapBaseIndex = 0x06,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 2,
|
||||
.baseTile = 0
|
||||
};
|
||||
|
||||
const struct BgTemplate gUnknown_08623594 =
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 2,
|
||||
.mapBaseIndex = 0x07,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 3,
|
||||
.baseTile = 0
|
||||
};
|
||||
|
||||
const LoopedTask gUnknown_08623598[] =
|
||||
{
|
||||
NULL,
|
||||
sub_81CF578,
|
||||
sub_81CF5F0,
|
||||
sub_81CF668,
|
||||
sub_81CF6E0,
|
||||
sub_81CF758,
|
||||
sub_81CF798
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_086235B4 =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 6,
|
||||
.width = 7,
|
||||
.height = 2,
|
||||
.paletteNum = 1,
|
||||
.baseBlock = 20
|
||||
};
|
||||
|
||||
const u8 gUnknown_086235BC[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}");
|
||||
const u8 gUnknown_086235C8[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}");
|
||||
const u8 gUnknown_086235D4[] = _("{UNK_SPACER}");
|
||||
|
||||
struct PokenavSub7
|
||||
{
|
||||
@ -12,8 +88,6 @@ struct PokenavSub7
|
||||
struct PokenavSub18 *unkPtr;
|
||||
};
|
||||
|
||||
extern const u32 gUnknown_086233A0[];
|
||||
|
||||
u32 sub_81CF010(struct PokenavSub7 *structPtr);
|
||||
u32 sub_81CF030(struct PokenavSub7 *structPtr);
|
||||
u32 sub_81CF0B8(struct PokenavSub7 *structPtr);
|
||||
|
74
src/pokenav_unk_9.c
Normal file
74
src/pokenav_unk_9.c
Normal file
@ -0,0 +1,74 @@
|
||||
#include "global.h"
|
||||
#include "pokenav.h"
|
||||
#include "bg.h"
|
||||
#include "window.h"
|
||||
|
||||
u32 sub_81CFB8C(void);
|
||||
u32 sub_81CFC2C(void);
|
||||
u32 sub_81CFC40(void);
|
||||
u32 sub_81CFFFC(s32);
|
||||
u32 sub_81D0074(s32);
|
||||
u32 sub_81D00EC(s32);
|
||||
u32 sub_81D0164(s32);
|
||||
u32 sub_81D01DC(s32);
|
||||
u32 sub_81D021C(s32);
|
||||
|
||||
u32 (*const gUnknown_086235D8[])(void) =
|
||||
{
|
||||
sub_81CFB8C,
|
||||
sub_81CFC2C,
|
||||
sub_81CFC40
|
||||
};
|
||||
|
||||
const u16 gUnknown_086235E4[] = INCBIN_U16("graphics/pokenav/ui_ribbons.gbapal");
|
||||
const u32 gUnknown_08623604[] = INCBIN_U32("graphics/pokenav/ui_ribbons.4bpp.lz");
|
||||
const u32 gUnknown_086236CC[] = INCBIN_U32("graphics/pokenav/ui_ribbons.bin.lz");
|
||||
const u16 gUnknown_08623790[] = INCBIN_U16("graphics/pokenav/8623790.gbapal");
|
||||
|
||||
const struct BgTemplate gUnknown_086237B0 =
|
||||
{
|
||||
.bg = 1,
|
||||
.charBaseIndex = 1,
|
||||
.mapBaseIndex = 0x06,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 2,
|
||||
.baseTile = 0
|
||||
};
|
||||
|
||||
const struct BgTemplate gUnknown_086237B4 =
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 2,
|
||||
.mapBaseIndex = 0x07,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 3,
|
||||
.baseTile = 0
|
||||
};
|
||||
|
||||
const LoopedTask gUnknown_086237B8[] =
|
||||
{
|
||||
NULL,
|
||||
sub_81CFFFC,
|
||||
sub_81D0074,
|
||||
sub_81D00EC,
|
||||
sub_81D0164,
|
||||
sub_81D01DC,
|
||||
sub_81D021C
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_086237D4 =
|
||||
{
|
||||
.bg = 1,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 6,
|
||||
.width = 7,
|
||||
.height = 2,
|
||||
.paletteNum = 1,
|
||||
.baseBlock = 20
|
||||
};
|
||||
|
||||
const u8 gUnknown_086237DC[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}");
|
||||
const u8 gUnknown_086237E8[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}");
|
||||
const u8 gUnknown_086237F4[] = _("{UNK_SPACER}");
|
103
src/text.c
103
src/text.c
@ -462,6 +462,108 @@ u8 GetLastTextColor(u8 colorType)
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef NONMATCHING
|
||||
|
||||
#define GLYPH_COPY(fromY_, toY_, fromX_, toX_, unk) \
|
||||
{ \
|
||||
u32 i, j, *ptr, toY, fromX, toX, r5, toOrr, bits; \
|
||||
u8 *dst; \
|
||||
\
|
||||
j = fromX_; \
|
||||
i = fromY_; \
|
||||
ptr = unk; \
|
||||
toX = toX_; \
|
||||
toY = toY_; \
|
||||
fromX = fromX_; \
|
||||
\
|
||||
for (; i < toY; i++) \
|
||||
{ \
|
||||
r5 = *(ptr++); \
|
||||
for (j = fromX; j < toX; j++) \
|
||||
{ \
|
||||
toOrr = r5 & 0xF; \
|
||||
if (toOrr) \
|
||||
{ \
|
||||
dst = windowTiles + ((j / 8) * 32) + ((j & 7) / 2) + ((i / 8) * widthOffset) + ((i & 7) * 4); \
|
||||
bits = ((j & 1) << 2); \
|
||||
*dst = ((toOrr << bits) | (*dst & (0xF0 >> bits))); \
|
||||
} \
|
||||
r5 >>= 4; \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
void CopyGlyphToWindow(struct TextPrinter *textPrinter)
|
||||
{
|
||||
struct Window *win;
|
||||
struct WindowTemplate *winTempl;
|
||||
struct Struct_03002F90 *unkStruct;
|
||||
u32 currX, widthOffset, currY;
|
||||
s32 r4, r0;
|
||||
u8 *windowTiles;
|
||||
|
||||
win = &gWindows[textPrinter->printerTemplate.windowId];
|
||||
winTempl = &win->window;
|
||||
|
||||
r4 = (winTempl->width * 8) - textPrinter->printerTemplate.currentX;
|
||||
if (r4 > gUnknown_03002F90.unk80)
|
||||
r4 = gUnknown_03002F90.unk80;
|
||||
|
||||
r0 = (winTempl->height * 8) - textPrinter->printerTemplate.currentY;
|
||||
if (r0 > gUnknown_03002F90.unk81)
|
||||
r0 = gUnknown_03002F90.unk81;
|
||||
|
||||
currX = textPrinter->printerTemplate.currentX;
|
||||
currY = textPrinter->printerTemplate.currentY;
|
||||
unkStruct = &gUnknown_03002F90;
|
||||
windowTiles = win->tileData;
|
||||
widthOffset = winTempl->width * 32;
|
||||
|
||||
if (r4 <= 8)
|
||||
{
|
||||
if (r0 <= 8)
|
||||
{
|
||||
GLYPH_COPY(currY, currY + r0, currX, currX + r4, unkStruct->unk0);
|
||||
}
|
||||
else
|
||||
{
|
||||
u32 temp;
|
||||
GLYPH_COPY(currY, currY + 8, currX, currX + r4, unkStruct->unk0);
|
||||
|
||||
temp = currY + 8;
|
||||
GLYPH_COPY(temp, (temp - 8) + r0, currX, currX + r4, unkStruct->unk40);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (r0 <= 8)
|
||||
{
|
||||
u32 temp;
|
||||
GLYPH_COPY(currY, currY + r0, currX, currX + 8, unkStruct->unk0);
|
||||
|
||||
temp = currX + 8;
|
||||
GLYPH_COPY(currY, currY + r0, temp, (temp - 8) + r4, unkStruct->unk20);
|
||||
}
|
||||
else
|
||||
{
|
||||
u32 temp;
|
||||
GLYPH_COPY(currY, currY + 8, currX, currX + 8, unkStruct->unk0);
|
||||
|
||||
temp = currX + 8;
|
||||
GLYPH_COPY(currY, currY + 8, temp, temp - 8 + r4, unkStruct->unk20);
|
||||
|
||||
temp = currY + 8;
|
||||
GLYPH_COPY(temp, temp - 8 + r0, currX, currX + 8, unkStruct->unk40);
|
||||
{
|
||||
u32 tempX, tempY;
|
||||
tempX = currX + 8;
|
||||
tempY = currY + 8;
|
||||
GLYPH_COPY(tempY, tempY - 8 + r0, tempX, tempX - 8 + r4, unkStruct->unk60);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
NAKED
|
||||
void CopyGlyphToWindow(struct TextPrinter *x)
|
||||
{
|
||||
@ -1164,6 +1266,7 @@ _080052AA:\n\
|
||||
bx r0\n\
|
||||
.pool");
|
||||
}
|
||||
#endif // NONMATCHING
|
||||
|
||||
void ClearTextSpan(struct TextPrinter *textPrinter, u32 width)
|
||||
{
|
||||
|
@ -1,53 +1,54 @@
|
||||
#include "global.h"
|
||||
#include "window.h"
|
||||
#include "alloc.h"
|
||||
#include "battle.h"
|
||||
#include "berry_crush.h"
|
||||
#include "bg.h"
|
||||
#include "random.h"
|
||||
#include "string_util.h"
|
||||
#include "task.h"
|
||||
#include "cable_club.h"
|
||||
#include "data.h"
|
||||
#include "decompress.h"
|
||||
#include "dodrio_berry_picking.h"
|
||||
#include "dynamic_placeholder_text_util.h"
|
||||
#include "easy_chat.h"
|
||||
#include "event_data.h"
|
||||
#include "event_obj_lock.h"
|
||||
#include "field_control_avatar.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "field_screen_effect.h"
|
||||
#include "field_weather.h"
|
||||
#include "international_string_util.h"
|
||||
#include "librfu.h"
|
||||
#include "link.h"
|
||||
#include "link_rfu.h"
|
||||
#include "librfu.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "list_menu.h"
|
||||
#include "load_save.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "mevent.h"
|
||||
#include "mystery_gift.h"
|
||||
#include "overworld.h"
|
||||
#include "palette.h"
|
||||
#include "party_menu.h"
|
||||
#include "pokemon_jump.h"
|
||||
#include "random.h"
|
||||
#include "script.h"
|
||||
#include "script_pokemon_util_80F87D8.h"
|
||||
#include "sound.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/game_stat.h"
|
||||
#include "constants/maps.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/rgb.h"
|
||||
#include "constants/battle_frontier.h"
|
||||
#include "start_menu.h"
|
||||
#include "string_util.h"
|
||||
#include "strings.h"
|
||||
#include "task.h"
|
||||
#include "trade.h"
|
||||
#include "trainer_card.h"
|
||||
#include "overworld.h"
|
||||
#include "battle.h"
|
||||
#include "load_save.h"
|
||||
#include "cable_club.h"
|
||||
#include "field_control_avatar.h"
|
||||
#include "party_menu.h"
|
||||
#include "field_weather.h"
|
||||
#include "palette.h"
|
||||
#include "decompress.h"
|
||||
#include "start_menu.h"
|
||||
#include "data.h"
|
||||
#include "field_screen_effect.h"
|
||||
#include "script_pokemon_util_80F87D8.h"
|
||||
#include "international_string_util.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "strings.h"
|
||||
#include "mevent.h"
|
||||
#include "dynamic_placeholder_text_util.h"
|
||||
#include "union_room.h"
|
||||
#include "easy_chat.h"
|
||||
#include "event_obj_lock.h"
|
||||
#include "union_room_chat.h"
|
||||
#include "berry_crush.h"
|
||||
#include "mystery_gift.h"
|
||||
#include "union_room_player_avatar.h"
|
||||
#include "pokemon_jump.h"
|
||||
#include "window.h"
|
||||
#include "constants/battle_frontier.h"
|
||||
#include "constants/game_stat.h"
|
||||
#include "constants/maps.h"
|
||||
#include "constants/rgb.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/species.h"
|
||||
|
||||
EWRAM_DATA u8 gUnknown_02022C20[12] = {};
|
||||
EWRAM_DATA u8 gUnknown_02022C2C = 0;
|
||||
@ -98,7 +99,6 @@ bool32 sub_8017678(struct UnkStruct_Shared *arg0, struct UnkStruct_Shared *arg1)
|
||||
u32 sub_8018120(struct TradeUnkStruct *arg0, u8 multiplayerId);
|
||||
void sub_801807C(struct TradeUnkStruct *arg0);
|
||||
void sub_801AC54(void);
|
||||
void sub_802493C(u8 monId, MainCallback callback);
|
||||
void sub_80149D8(void);
|
||||
void MG_DrawTextBorder(u8 windowId);
|
||||
s8 mevent_message_print_and_prompt_yes_no(u8 *textState, u8 *arg1, u8 arg2, const u8 *str);
|
||||
|
@ -85,6 +85,10 @@ struct UsePokeblockStruct
|
||||
/*0x7FD0*/ struct UsePokeblockSubStruct info;
|
||||
};
|
||||
|
||||
#define TAG_TILE_CONDITION_UP_DOWN 0
|
||||
#define TAG_PAL_CONDITION_UP_DOWN 0
|
||||
#define TAG_PAL_POKEBLOCK_CONDITION 1
|
||||
|
||||
extern void sub_81D21DC(u8);
|
||||
|
||||
// this file's functions
|
||||
@ -130,26 +134,12 @@ static u8 sub_8168048(void);
|
||||
void sub_8168180(struct Sprite *sprite);
|
||||
void sub_81681B4(struct Sprite *sprite);
|
||||
void sub_8168168(struct Sprite *sprite);
|
||||
void sub_8168374(struct Sprite *sprite);
|
||||
|
||||
extern const struct BgTemplate gUnknown_085DFCCC[4];
|
||||
extern const struct WindowTemplate gUnknown_085DFCDC[];
|
||||
extern const struct WindowTemplate sUsePokeblockYesNoWinTemplate[];
|
||||
extern const u8* sContestStatNames[];
|
||||
extern const u32 gUnknown_085DFCB0[];
|
||||
extern const u8 gUnknown_085DFCC4[];
|
||||
extern const struct SpriteSheet gSpriteSheet_ConditionUpDown;
|
||||
extern const struct SpritePalette gSpritePalette_ConditionUpDown;
|
||||
extern const struct SpriteTemplate gSpriteTemplate_085DFD5C;
|
||||
extern const s16 gUnknown_085DFD28[][2];
|
||||
extern const u32 gUnknown_085DFB60[];
|
||||
extern const u32 gUnknown_085DFA80[];
|
||||
extern const u32 gUnknown_085DFA60[];
|
||||
extern const u32 gUnknown_085DFC0C[];
|
||||
extern const u16 gUnknown_086231E8[];
|
||||
extern const u16 gUnknown_08623208[];
|
||||
extern const u8 gUnknown_085DFCC9[];
|
||||
extern const struct SpritePalette gUnknown_085DFDB8;
|
||||
extern const struct SpriteTemplate gUnknown_085DFDA0;
|
||||
extern const struct SpritePalette gSpritePalette_085DFDB8;
|
||||
extern const struct SpriteTemplate gSpriteTemplate_085DFDA0;
|
||||
|
||||
// ram variables
|
||||
EWRAM_DATA struct UsePokeblockSubStruct *gUnknown_0203BC90 = NULL;
|
||||
@ -165,6 +155,245 @@ EWRAM_DATA struct UsePokeblockStruct *gUnknown_0203BCAC = NULL;
|
||||
// const rom data
|
||||
// todo: make it static once the file is decompiled
|
||||
|
||||
const u32 gUnknown_085DFA60[] = INCBIN_U32("graphics/interface/85DFA60.bin");
|
||||
const u32 gUnknown_085DFA80[] = INCBIN_U32("graphics/interface/85DFA80.4bpp");
|
||||
const u32 gUnknown_085DFB60[] = INCBIN_U32("graphics/interface/85DFB60.bin");
|
||||
const u32 gUnknown_085DFC0C[] = INCBIN_U32("graphics/interface/85DFC0C.bin");
|
||||
|
||||
const u32 gUnknown_085DFCB0[] =
|
||||
{
|
||||
MON_DATA_COOL,
|
||||
MON_DATA_TOUGH,
|
||||
MON_DATA_SMART,
|
||||
MON_DATA_CUTE,
|
||||
MON_DATA_BEAUTY
|
||||
};
|
||||
|
||||
const u8 gUnknown_085DFCC4[] =
|
||||
{
|
||||
0, // Spicy/Cool
|
||||
4, // Dry/Beauty
|
||||
3, // Sweet/Cute
|
||||
2, // Bitter/Smart
|
||||
1 // Sour/Tough
|
||||
};
|
||||
|
||||
const u8 gUnknown_085DFCC9[] =
|
||||
{
|
||||
0,
|
||||
8,
|
||||
1
|
||||
};
|
||||
|
||||
const struct BgTemplate gUnknown_085DFCCC[4] =
|
||||
{
|
||||
{
|
||||
.bg = 0,
|
||||
.charBaseIndex = 2,
|
||||
.mapBaseIndex = 0x1F,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 0,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 1,
|
||||
.charBaseIndex = 0,
|
||||
.mapBaseIndex = 0x1E,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 3,
|
||||
.baseTile = 0
|
||||
},
|
||||
{
|
||||
.bg = 3,
|
||||
.charBaseIndex = 3,
|
||||
.mapBaseIndex = 0x1D,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 2,
|
||||
.baseTile = 0x100
|
||||
},
|
||||
{
|
||||
.bg = 2,
|
||||
.charBaseIndex = 0,
|
||||
.mapBaseIndex = 0x17,
|
||||
.screenSize = 0,
|
||||
.paletteMode = 0,
|
||||
.priority = 1,
|
||||
.baseTile = 0
|
||||
}
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_085DFCDC[] =
|
||||
{
|
||||
{
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0xD,
|
||||
.tilemapTop = 1,
|
||||
.width = 0xD,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.baseBlock = 1
|
||||
},
|
||||
{
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0,
|
||||
.tilemapTop = 0xE,
|
||||
.width = 0xB,
|
||||
.height = 2,
|
||||
.paletteNum = 0xF,
|
||||
.baseBlock = 0x35
|
||||
},
|
||||
{
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 0x11,
|
||||
.width = 0x1C,
|
||||
.height = 2,
|
||||
.paletteNum = 0xF,
|
||||
.baseBlock = 0x4B
|
||||
},
|
||||
DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
|
||||
const struct WindowTemplate sUsePokeblockYesNoWinTemplate =
|
||||
{
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x18,
|
||||
.tilemapTop = 0xB,
|
||||
.width = 5,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.baseBlock = 0x83
|
||||
};
|
||||
|
||||
const u8 *const sContestStatNames[] =
|
||||
{
|
||||
gText_Coolness,
|
||||
gText_Toughness,
|
||||
gText_Smartness,
|
||||
gText_Cuteness,
|
||||
gText_Beauty3
|
||||
};
|
||||
|
||||
const struct SpriteSheet gSpriteSheet_ConditionUpDown =
|
||||
{
|
||||
gUsePokeblockUpDown_Gfx, 0x200, TAG_TILE_CONDITION_UP_DOWN
|
||||
};
|
||||
|
||||
const struct SpritePalette gSpritePalette_ConditionUpDown =
|
||||
{
|
||||
gUsePokeblockUpDown_Pal, TAG_PAL_CONDITION_UP_DOWN
|
||||
};
|
||||
|
||||
const s16 gUnknown_085DFD28[][2] =
|
||||
{
|
||||
{0x9C, 0x24},
|
||||
{0x75, 0x3B},
|
||||
{0x75, 0x76},
|
||||
{0xC5, 0x76},
|
||||
{0xC5, 0x3B}
|
||||
};
|
||||
|
||||
const struct OamData gOamData_085DFD3C =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(32x16),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(32x16),
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const union AnimCmd gSpriteAnim_085DFD44[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gSpriteAnim_085DFD4C[] =
|
||||
{
|
||||
ANIMCMD_FRAME(8, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd *const gSpriteAnimTable_085DFD54[] =
|
||||
{
|
||||
gSpriteAnim_085DFD44,
|
||||
gSpriteAnim_085DFD4C
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_085DFD5C =
|
||||
{
|
||||
.tileTag = 0,
|
||||
.paletteTag = 0,
|
||||
.oam = &gOamData_085DFD3C,
|
||||
.anims = gSpriteAnimTable_085DFD54,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = SpriteCallbackDummy,
|
||||
};
|
||||
|
||||
const struct OamData gOamData_085DFD74 =
|
||||
{
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(64x32),
|
||||
.x = 0,
|
||||
.size = SPRITE_SIZE(64x32),
|
||||
.tileNum = 0,
|
||||
.priority = 1,
|
||||
.paletteNum = 0,
|
||||
};
|
||||
|
||||
const union AnimCmd gSpriteAnim_085DFD7C[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gSpriteAnim_085DFD84[] =
|
||||
{
|
||||
ANIMCMD_FRAME(32, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gSpriteAnim_085DFD8C[] =
|
||||
{
|
||||
ANIMCMD_FRAME(64, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd *const gSpriteAnimTable_085DFD94[] =
|
||||
{
|
||||
gSpriteAnim_085DFD7C,
|
||||
gSpriteAnim_085DFD84,
|
||||
gSpriteAnim_085DFD8C
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_085DFDA0 =
|
||||
{
|
||||
.tileTag = 1,
|
||||
.paletteTag = 1,
|
||||
.oam = &gOamData_085DFD74,
|
||||
.anims = gSpriteAnimTable_085DFD94,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_8168374,
|
||||
};
|
||||
|
||||
const struct SpritePalette gSpritePalette_085DFDB8 =
|
||||
{
|
||||
gUsePokeblockCondition_Pal, TAG_PAL_POKEBLOCK_CONDITION
|
||||
};
|
||||
|
||||
// code
|
||||
void ChooseMonToGivePokeblock(struct Pokeblock *pokeblock, void (*callback)(void))
|
||||
{
|
||||
@ -618,7 +847,7 @@ void sub_8166D44(void)
|
||||
AddTextPrinterParameterized(2, 1, gStringVar4, 0, 1, 0, NULL);
|
||||
PutWindowTilemap(2);
|
||||
CopyWindowToVram(2, 3);
|
||||
CreateYesNoMenu(sUsePokeblockYesNoWinTemplate, 151, 14, 0);
|
||||
CreateYesNoMenu(&sUsePokeblockYesNoWinTemplate, 151, 14, 0);
|
||||
}
|
||||
|
||||
s8 sub_8166DE4(void)
|
||||
@ -1373,7 +1602,7 @@ static void sub_8168248(void)
|
||||
struct CompressedSpriteSheet spriteSheet;
|
||||
struct SpritePalette spritePalette;
|
||||
|
||||
spritePalette = gUnknown_085DFDB8;
|
||||
spritePalette = gSpritePalette_085DFDB8;
|
||||
spriteSheet.data = gUsePokeblockCondition_Gfx;
|
||||
spriteSheet.size = 0x800;
|
||||
spriteSheet.tag = 1;
|
||||
@ -1388,7 +1617,7 @@ static void sub_8168294(void)
|
||||
int yStart = 17;
|
||||
int var = 8;
|
||||
struct Sprite **sprites = gUnknown_0203BCAC->field_7B44;
|
||||
const struct SpriteTemplate *template = &gUnknown_085DFDA0;
|
||||
const struct SpriteTemplate *template = &gSpriteTemplate_085DFDA0;
|
||||
|
||||
for (i = 0, xDiff = 64, xStart = -96; i < 2; i++)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user