Finish pokemon_summary_screen

This commit is contained in:
Diegoisawesome 2018-08-14 21:56:11 -07:00
parent 6dac87abfd
commit a07d69d7c2
24 changed files with 1930 additions and 3120 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,507 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
@ 861CAAC
.include "data/text/nature_names.inc"
.align 2
gUnknown_0861CBB4:: @ 861CBB4
.4byte 0x000001f0, 0x000013b9, 0x0000239a, 0x000033db
.align 2
gUnknown_0861CBC4:: @ 861CBC4
.incbin "graphics/interface/unk_tilemap2.bin"
.align 2
gUnknown_0861CBEC:: @ 861CBEC
.4byte gUnknown_0861CBC4
.byte 0x01, 0x00, 0x0a, 0x02, 0x00, 0x12
.align 2
gUnknown_0861CBF8:: @ 861CBF8
.4byte gUnknown_0861CBC4
.byte 0x01, 0x00, 0x0a, 0x02, 0x00, 0x32
.align 2
gUnknown_0861CC04:: @ 861CC04
.4byte gSummaryScreenPowAcc_Tilemap
.byte 0x00
.byte 0x00
.byte 0x0A
.byte 0x07
.byte 0x00
.byte 0x2D
.align 2
gUnknown_0861CC10:: @ 861CC10
.4byte gUnknown_08DC3C34
.byte 0x00
.byte 0x00
.byte 0x0A
.byte 0x07
.byte 0x00
.byte 0x2D
.align 2
gUnknown_0861CC1C:: @ 861CC1C
.byte 0x00, 0x02, 0x03, 0x01, 0x04, 0x05, 0x00, 0x00
.align 2
gUnknown_0861CC24:: @ 861CC24
window_template 0x00, 0x00, 0x00, 0x0b, 0x02, 0x06, 0x0001
window_template 0x00, 0x00, 0x00, 0x0b, 0x02, 0x06, 0x0017
window_template 0x00, 0x00, 0x00, 0x0b, 0x02, 0x06, 0x002d
window_template 0x00, 0x00, 0x00, 0x0b, 0x02, 0x06, 0x0043
window_template 0x00, 0x16, 0x00, 0x08, 0x02, 0x07, 0x0059
window_template 0x00, 0x16, 0x00, 0x08, 0x02, 0x07, 0x0069
window_template 0x00, 0x16, 0x00, 0x08, 0x02, 0x07, 0x0079
window_template 0x00, 0x0b, 0x04, 0x00, 0x02, 0x06, 0x0089
window_template 0x00, 0x0b, 0x04, 0x12, 0x02, 0x06, 0x0089
window_template 0x00, 0x0b, 0x06, 0x12, 0x02, 0x06, 0x00ad
window_template 0x00, 0x0a, 0x07, 0x06, 0x06, 0x06, 0x00d1
window_template 0x00, 0x16, 0x07, 0x05, 0x06, 0x06, 0x00f5
window_template 0x00, 0x0a, 0x0e, 0x0b, 0x04, 0x06, 0x0113
window_template 0x00, 0x00, 0x12, 0x06, 0x02, 0x06, 0x013f
window_template 0x00, 0x01, 0x0f, 0x09, 0x04, 0x06, 0x014b
window_template 0x00, 0x01, 0x0f, 0x05, 0x04, 0x06, 0x016f
window_template 0x00, 0x16, 0x04, 0x00, 0x02, 0x06, 0x0183
window_template 0x00, 0x01, 0x02, 0x04, 0x02, 0x07, 0x0183
window_template 0x00, 0x01, 0x0c, 0x09, 0x02, 0x06, 0x018b
window_template 0x00, 0x01, 0x0e, 0x09, 0x04, 0x06, 0x019d
null_window_template
.align 2
gUnknown_0861CCCC:: @ 861CCCC
window_template 0x00, 0x0b, 0x04, 0x0b, 0x02, 0x06, 0x01c1
window_template 0x00, 0x16, 0x04, 0x07, 0x02, 0x06, 0x01d7
window_template 0x00, 0x0b, 0x09, 0x12, 0x04, 0x06, 0x01e5
window_template 0x00, 0x0b, 0x0e, 0x12, 0x06, 0x06, 0x022d
.align 2
gUnknown_0861CCEC:: @ 861CCEC
window_template 0x00, 0x0a, 0x04, 0x0a, 0x02, 0x06, 0x01c1
window_template 0x00, 0x14, 0x04, 0x0a, 0x02, 0x06, 0x01d5
window_template 0x00, 0x10, 0x07, 0x06, 0x06, 0x06, 0x01e9
window_template 0x00, 0x1b, 0x07, 0x03, 0x06, 0x06, 0x020d
window_template 0x00, 0x18, 0x0e, 0x06, 0x04, 0x06, 0x021f
.align 2
gUnknown_0861CD14:: @ 861CD14
window_template 0x00, 0x0f, 0x04, 0x09, 0x0a, 0x06, 0x01c1
window_template 0x00, 0x18, 0x04, 0x06, 0x0a, 0x08, 0x021b
window_template 0x00, 0x0a, 0x0f, 0x14, 0x04, 0x06, 0x0257
gUnknown_0861CD2C:: @ 861CD2C
.byte 0x00, 0x01, 0x02, 0x00, 0x03, 0x04, 0x00, 0x05, 0x06, 0x00, 0x07, 0x08, 0x00, 0x09, 0x0a, 0x00, 0x0b, 0x0c, 0x00, 0x0d, 0x0e, 0x00, 0x07, 0x08, 0x0d, 0x0f, 0x0e, 0x00, 0x01, 0x02, 0x00, 0x03
.byte 0x04, 0x00, 0x05, 0x06, 0x00, 0x07, 0x08
gUnknown_0861CD53:: @ 861CD53
.incbin "graphics/interface/summary_a_button.4bpp"
gUnknown_0861CDD3:: @ 861CDD3
.incbin "graphics/interface/summary_b_button.4bpp"
.align 2
gUnknown_0861CE54:: @ 861CE54
.4byte sub_81C2E00
.4byte sub_81C3530
.4byte sub_81C3984
.4byte sub_81C3D08
.align 2
gUnknown_0861CE64:: @ 861CE64
.4byte sub_81C2E40
.4byte sub_81C3554
.4byte sub_81C39F0
.4byte sub_81C3D54
gUnknown_0861CE74:: @ 861CE74
.string "{COLOR LIGHT_RED}{SHADOW GREEN}$"
gUnknown_0861CE7B:: @ 861CE7B
.string "{COLOR WHITE}{SHADOW DARK_GREY}$"
gUnknown_0861CE82:: @ 861CE82
.string "{SPECIAL_F7 0x00}/{SPECIAL_F7 0x01}\n"
.string "{SPECIAL_F7 0x02}\n"
.string "{SPECIAL_F7 0x03}$"
gUnknown_0861CE8E:: @ 861CE8E
.string "{SPECIAL_F7 0x00}\n"
.string "{SPECIAL_F7 0x01}\n"
.string "{SPECIAL_F7 0x02}$"
gUnknown_0861CE97:: @ 861CE97
.string "{PP}{SPECIAL_F7 0x00}/{SPECIAL_F7 0x01}$"
.align 2
gOamData_861CEA0:: @ 861CEA0
.2byte 0x4000, 0x8000, 0x0400, 0x0000
.align 2
gSpriteAnim_861CEA8:: @ 861CEA8
.2byte 0x0000, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CEB0:: @ 861CEB0
.2byte 0x0008, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CEB8:: @ 861CEB8
.2byte 0x0010, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CEC0:: @ 861CEC0
.2byte 0x0018, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CEC8:: @ 861CEC8
.2byte 0x0020, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CED0:: @ 861CED0
.2byte 0x0028, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CED8:: @ 861CED8
.2byte 0x0030, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CEE0:: @ 861CEE0
.2byte 0x0038, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CEE8:: @ 861CEE8
.2byte 0x0040, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CEF0:: @ 861CEF0
.2byte 0x0048, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CEF8:: @ 861CEF8
.2byte 0x0050, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF00:: @ 861CF00
.2byte 0x0058, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF08:: @ 861CF08
.2byte 0x0060, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF10:: @ 861CF10
.2byte 0x0068, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF18:: @ 861CF18
.2byte 0x0070, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF20:: @ 861CF20
.2byte 0x0078, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF28:: @ 861CF28
.2byte 0x0080, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF30:: @ 861CF30
.2byte 0x0088, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF38:: @ 861CF38
.2byte 0x0090, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF40:: @ 861CF40
.2byte 0x0098, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF48:: @ 861CF48
.2byte 0x00a0, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF50:: @ 861CF50
.2byte 0x00a8, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861CF58:: @ 861CF58
.2byte 0x00b0, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnimTable_861CF60:: @ 861CF60
.4byte gSpriteAnim_861CEA8
.4byte gSpriteAnim_861CEB0
.4byte gSpriteAnim_861CEB8
.4byte gSpriteAnim_861CEC0
.4byte gSpriteAnim_861CEC8
.4byte gSpriteAnim_861CED0
.4byte gSpriteAnim_861CED8
.4byte gSpriteAnim_861CEE0
.4byte gSpriteAnim_861CEE8
.4byte gSpriteAnim_861CEF0
.4byte gSpriteAnim_861CEF8
.4byte gSpriteAnim_861CF00
.4byte gSpriteAnim_861CF08
.4byte gSpriteAnim_861CF10
.4byte gSpriteAnim_861CF18
.4byte gSpriteAnim_861CF20
.4byte gSpriteAnim_861CF28
.4byte gSpriteAnim_861CF30
.4byte gSpriteAnim_861CF38
.4byte gSpriteAnim_861CF40
.4byte gSpriteAnim_861CF48
.4byte gSpriteAnim_861CF50
.4byte gSpriteAnim_861CF58
.align 2
gUnknown_0861CFBC:: @ 861CFBC
obj_tiles gMoveTypes_Gfx, 0x1700, 0x7532
.align 2
gUnknown_0861CFC4:: @ 861CFC4
spr_template 0x7532, 0x7532, gOamData_861CEA0, gSpriteAnimTable_861CF60, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
gUnknown_0861CFDC:: @ 861CFDC
.byte 0x0d, 0x0d, 0x0e, 0x0e, 0x0d, 0x0d, 0x0f, 0x0e, 0x0d, 0x0f, 0x0d, 0x0e, 0x0f, 0x0d, 0x0e, 0x0e, 0x0f, 0x0d, 0x0d, 0x0e, 0x0e, 0x0f, 0x0d, 0x00
.align 2
gOamData_861CFF4:: @ 861CFF4
.2byte 0x0000, 0x4000, 0x0400, 0x0000
.align 2
gSpriteAnim_861CFFC:: @ 861CFFC
.2byte 0x0000, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D004:: @ 861D004
.2byte 0x0004, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D00C:: @ 861D00C
.2byte 0x0008, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D014:: @ 861D014
.2byte 0x000c, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D01C:: @ 861D01C
.2byte 0x0010, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D024:: @ 861D024
.2byte 0x0010, 0x0040, 0xffff, 0x0000
.align 2
gSpriteAnim_861D02C:: @ 861D02C
.2byte 0x0014, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D034:: @ 861D034
.2byte 0x0018, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D03C:: @ 861D03C
.2byte 0x0018, 0x0040, 0xffff, 0x0000
.align 2
gSpriteAnim_861D044:: @ 861D044
.2byte 0x001c, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnimTable_861D04C:: @ 861D04C
.4byte gSpriteAnim_861CFFC
.4byte gSpriteAnim_861D004
.4byte gSpriteAnim_861D00C
.4byte gSpriteAnim_861D014
.4byte gSpriteAnim_861D01C
.4byte gSpriteAnim_861D024
.4byte gSpriteAnim_861D02C
.4byte gSpriteAnim_861D034
.4byte gSpriteAnim_861D03C
.4byte gSpriteAnim_861D044
.align 2
gUnknown_0861D074:: @ 861D074
obj_tiles gUnknown_08D97BEC, 0x0400, 0x7530
.align 2
gUnknown_0861D07C:: @ 861D07C
obj_pal gUnknown_08D97CF4, 0x7530
.align 2
gUnknown_0861D084:: @ 861D084
spr_template 0x7530, 0x7530, gOamData_861CFF4, gSpriteAnimTable_861D04C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
.align 2
gOamData_861D09C:: @ 861D09C
.2byte 0x4000, 0x4000, 0x0c00, 0x0000
.align 2
gSpriteAnim_861D0A4:: @ 861D0A4
.2byte 0x0000, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D0AC:: @ 861D0AC
.2byte 0x0004, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D0B4:: @ 861D0B4
.2byte 0x0008, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D0BC:: @ 861D0BC
.2byte 0x000c, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D0C4:: @ 861D0C4
.2byte 0x0010, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D0CC:: @ 861D0CC
.2byte 0x0014, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnim_861D0D4:: @ 861D0D4
.2byte 0x0018, 0x0000, 0xffff, 0x0000
.align 2
gSpriteAnimTable_861D0DC:: @ 861D0DC
.4byte gSpriteAnim_861D0A4
.4byte gSpriteAnim_861D0AC
.4byte gSpriteAnim_861D0B4
.4byte gSpriteAnim_861D0BC
.4byte gSpriteAnim_861D0C4
.4byte gSpriteAnim_861D0CC
.4byte gSpriteAnim_861D0D4
.align 2
gUnknown_0861D0F8:: @ 861D0F8
obj_tiles gStatusGfx_Icons, 0x0380, 0x7531
.align 2
gUnknown_0861D100:: @ 861D100
obj_pal gStatusPal_Icons, 0x7531
.align 2
gUnknown_0861D108:: @ 861D108
spr_template 0x7531, 0x7531, gOamData_861D09C, gSpriteAnimTable_861D0DC, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
.align 2
gUnknown_0861D120:: @ 861D120
.incbin "graphics/interface/summary_markings.gbapal"
.align 2
gUnknown_0861D140:: @ 861D140
.incbin "graphics/interface/region_map.gbapal"
.align 2
gUnknown_0861D1A0:: @ 861D1A0
.incbin "graphics/interface/region_map.8bpp.lz"
.align 2
gUnknown_0861DEF4:: @ 861DEF4
.incbin "graphics/interface/region_map.bin.lz"
.align 2
gUnknown_0861E208:: @ 861E208
.incbin "graphics/interface/region_map_affine.8bpp.lz"
.align 2
gUnknown_0861EF64:: @ 861EF64
.incbin "graphics/interface/region_map_affine.bin.lz"
.align 2
gUnknown_0861F2B4:: @ 861F2B4
.4byte 0x000011f0, 0x000001e1, 0x000021de
.align 2
gUnknown_0861F2C0:: @ 861F2C0
.4byte 0x00000000, sub_81C5460, sub_81C5518, 0x00000000, 0x00080000, 0x07003021
.align 2
gUnknown_0861F2D8:: @ 861F2D8
.4byte gMenuText_Use, sub_81C61E0
.4byte gMenuText_Toss, sub_81C62C4
.4byte gMenuText_Give, sub_81C6648
.4byte gText_Cancel2, sub_81C6258
.4byte gMenuText_Use, sub_81C679C
.4byte gText_EmptyString2, NULL
gUnknown_0861F308:: @ 861F308
.byte 0x00, 0x02, 0x01, 0x03
gUnknown_0861F30C:: @ 861F30C
.byte 0x01, 0x03
gUnknown_0861F30E:: @ 861F30E
.byte 0x04, 0x03
gUnknown_0861F310:: @ 861F310
.byte 0x03, 0x00, 0x00, 0x00
gUnknown_0861F314:: @ 861F314
.4byte sub_81C654C
.4byte sub_81C63D0
gUnknown_0861F31C:: @ 861F31C
.byte 0x00, 0x02, 0x03, 0x00, 0x03, 0x01, 0x01, 0x02, 0x03, 0x00, 0x00, 0x00
.align 2
gUnknown_0861F328:: @ 861F328
window_template 0x00, 0x0e, 0x02, 0x0f, 0x10, 0x0f, 0x001e
window_template 0x00, 0x00, 0x0d, 0x0e, 0x06, 0x0f, 0x010e
window_template 0x01, 0x02, 0x0f, 0x1b, 0x04, 0x0f, 0x0162
window_template 0x01, 0x18, 0x11, 0x05, 0x02, 0x0f, 0x01ce
null_window_template
.align 2
gUnknown_0861F350:: @ 861F350
window_template 0x01, 0x16, 0x11, 0x07, 0x02, 0x0f, 0x01d8
window_template 0x01, 0x16, 0x0f, 0x07, 0x04, 0x0f, 0x01d8
window_template 0x01, 0x0f, 0x0f, 0x0e, 0x04, 0x0f, 0x01d8
window_template 0x01, 0x0f, 0x0d, 0x0e, 0x06, 0x0f, 0x01d8
.align 2
gUnknown_0861F370:: @ 861F370
window_template 0x01, 0x18, 0x0f, 0x05, 0x04, 0x0f, 0x01d8
.align 2
gOamData_861F378:: @ 861F378
.2byte 0x0100, 0xc000, 0x0400, 0x0000
.align 2
gSpriteAnim_861F380:: @ 861F380
.2byte 0x0000, 0x0004, 0xffff, 0x0000
.align 2
gSpriteAnimTable_861F388:: @ 861F388
.4byte gSpriteAnim_861F380
.align 2
gSpriteAffineAnim_861F38C:: @ 861F38C
.2byte 0x0100, 0x0100, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
.align 2
gSpriteAffineAnim_861F39C:: @ 861F39C
.2byte 0x0000, 0x0000, 0x02fe, 0x0000, 0x0000, 0x0000, 0x0402, 0x0000, 0x0000, 0x0000, 0x04fe, 0x0000, 0x0000, 0x0000, 0x0202, 0x0000
.2byte 0x7fff, 0x0000, 0x0000, 0x0000
.align 2
gSpriteAffineAnimTable_861F3C4:: @ 861F3C4
.4byte gSpriteAffineAnim_861F38C
.4byte gSpriteAffineAnim_861F39C
.align 2
gUnknown_0861F3CC:: @ 861F3CC
obj_tiles gBattleFrontierGfx_PyramidBag, 0x0800, 0x1024
.align 2
gUnknown_0861F3D4:: @ 861F3D4
spr_template 0x1024, 0x1024, gOamData_861F378, gSpriteAnimTable_861F388, NULL, gSpriteAffineAnimTable_861F3C4, SpriteCallbackDummy

View File

@ -0,0 +1,110 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2
gUnknown_0861D1A0:: @ 861D1A0
.incbin "graphics/interface/region_map.8bpp.lz"
.align 2
gUnknown_0861DEF4:: @ 861DEF4
.incbin "graphics/interface/region_map.bin.lz"
.align 2
gUnknown_0861E208:: @ 861E208
.incbin "graphics/interface/region_map_affine.8bpp.lz"
.align 2
gUnknown_0861EF64:: @ 861EF64
.incbin "graphics/interface/region_map_affine.bin.lz"
.align 2
gUnknown_0861F2B4:: @ 861F2B4
.4byte 0x000011f0, 0x000001e1, 0x000021de
.align 2
gUnknown_0861F2C0:: @ 861F2C0
.4byte 0x00000000, sub_81C5460, sub_81C5518, 0x00000000, 0x00080000, 0x07003021
.align 2
gUnknown_0861F2D8:: @ 861F2D8
.4byte gMenuText_Use, sub_81C61E0
.4byte gMenuText_Toss, sub_81C62C4
.4byte gMenuText_Give, sub_81C6648
.4byte gText_Cancel2, sub_81C6258
.4byte gMenuText_Use, sub_81C679C
.4byte gText_EmptyString2, NULL
gUnknown_0861F308:: @ 861F308
.byte 0x00, 0x02, 0x01, 0x03
gUnknown_0861F30C:: @ 861F30C
.byte 0x01, 0x03
gUnknown_0861F30E:: @ 861F30E
.byte 0x04, 0x03
gUnknown_0861F310:: @ 861F310
.byte 0x03, 0x00, 0x00, 0x00
gUnknown_0861F314:: @ 861F314
.4byte sub_81C654C
.4byte sub_81C63D0
gUnknown_0861F31C:: @ 861F31C
.byte 0x00, 0x02, 0x03, 0x00, 0x03, 0x01, 0x01, 0x02, 0x03, 0x00, 0x00, 0x00
.align 2
gUnknown_0861F328:: @ 861F328
window_template 0x00, 0x0e, 0x02, 0x0f, 0x10, 0x0f, 0x001e
window_template 0x00, 0x00, 0x0d, 0x0e, 0x06, 0x0f, 0x010e
window_template 0x01, 0x02, 0x0f, 0x1b, 0x04, 0x0f, 0x0162
window_template 0x01, 0x18, 0x11, 0x05, 0x02, 0x0f, 0x01ce
null_window_template
.align 2
gUnknown_0861F350:: @ 861F350
window_template 0x01, 0x16, 0x11, 0x07, 0x02, 0x0f, 0x01d8
window_template 0x01, 0x16, 0x0f, 0x07, 0x04, 0x0f, 0x01d8
window_template 0x01, 0x0f, 0x0f, 0x0e, 0x04, 0x0f, 0x01d8
window_template 0x01, 0x0f, 0x0d, 0x0e, 0x06, 0x0f, 0x01d8
.align 2
gUnknown_0861F370:: @ 861F370
window_template 0x01, 0x18, 0x0f, 0x05, 0x04, 0x0f, 0x01d8
.align 2
gOamData_861F378:: @ 861F378
.2byte 0x0100, 0xc000, 0x0400, 0x0000
.align 2
gSpriteAnim_861F380:: @ 861F380
.2byte 0x0000, 0x0004, 0xffff, 0x0000
.align 2
gSpriteAnimTable_861F388:: @ 861F388
.4byte gSpriteAnim_861F380
.align 2
gSpriteAffineAnim_861F38C:: @ 861F38C
.2byte 0x0100, 0x0100, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
.align 2
gSpriteAffineAnim_861F39C:: @ 861F39C
.2byte 0x0000, 0x0000, 0x02fe, 0x0000, 0x0000, 0x0000, 0x0402, 0x0000, 0x0000, 0x0000, 0x04fe, 0x0000, 0x0000, 0x0000, 0x0202, 0x0000
.2byte 0x7fff, 0x0000, 0x0000, 0x0000
.align 2
gSpriteAffineAnimTable_861F3C4:: @ 861F3C4
.4byte gSpriteAffineAnim_861F38C
.4byte gSpriteAffineAnim_861F39C
.align 2
gUnknown_0861F3CC:: @ 861F3CC
obj_tiles gBattleFrontierGfx_PyramidBag, 0x0800, 0x1024
.align 2
gUnknown_0861F3D4:: @ 861F3D4
spr_template 0x1024, 0x1024, gOamData_861F378, gSpriteAnimTable_861F388, NULL, gSpriteAffineAnimTable_861F3C4, SpriteCallbackDummy

View File

@ -1,6 +1,8 @@
#ifndef GUARD_BATTLE_CONTROLLERS_H
#define GUARD_BATTLE_CONTROLLERS_H
#include "battle.h"
enum
{
REQUEST_ALL_BATTLE,

View File

@ -11,5 +11,6 @@ void sub_81AA078(u16*, u8);
void sub_81A4C30(void);
void sub_819A4F8(void);
void sub_819DC00(void);
bool8 sub_81A6BF4(void);
#endif // GUARD_BATTLE_FRONTIER_2_H

6
include/battle_tent.h Normal file
View File

@ -0,0 +1,6 @@
#ifndef GUARD_BATTLE_TENT_H
#define GUARD_BATTLE_TENT_H
bool8 sub_81B9E94(void);
#endif //GUARD_BATTLE_TENT_H

View File

@ -18,5 +18,6 @@ struct ContestEffect
extern const struct ContestMove gContestMoves[];
extern struct ContestEffect gContestEffects[];
extern const u8 *const gContestEffectDescriptionPointers[];
#endif //GUARD_CONTEST_EFFECT_H

View File

@ -3382,4 +3382,24 @@ extern const u8 gCreditsCopyrightEnd_Gfx[];
extern const u8 gPokenavConditionMarker_Gfx[];
extern const u16 gPokenavConditionMarker_Pal[];
extern const u8 gUnknown_08D9862C[];
extern const u8 gUnknown_08D98CC8[];
extern const u8 gUnknown_08D987FC[];
extern const u8 gUnknown_08D9898C[];
extern const u8 gUnknown_08D98B28[];
extern const u8 gUnknown_08D9853C[];
extern const u8 gUnknown_08D85620[];
extern const u16 gSummaryScreenWindow_Tilemap[];
extern const u16 gMoveTypes_Pal[];
extern const u8 gUnknown_08D97D0C[];
extern const u16 gSummaryScreenPowAcc_Tilemap[];
extern const u16 gUnknown_08DC3C34[];
extern const u8 gMoveTypes_Gfx[];
extern const u8 gUnknown_08D97BEC[];
extern const u8 gUnknown_08D97CF4[];
extern const u8 gStatusGfx_Icons[];
extern const u8 gStatusPal_Icons[];
#endif //GUARD_GRAPHICS_H

View File

@ -17,6 +17,7 @@ void m4aMPlayFadeOutTemporarily(struct MusicPlayerInfo *mplayInfo, u16 speed);
void m4aMPlayFadeIn(struct MusicPlayerInfo *mplayInfo, u16 speed);
void m4aMPlayImmInit(struct MusicPlayerInfo *mplayInfo);
extern struct MusicPlayerInfo gMPlayInfo_BGM;
extern struct MusicPlayerInfo gMPlayInfo_SE1;
extern struct MusicPlayerInfo gMPlayInfo_SE2;
extern struct MusicPlayerInfo gMPlayInfo_SE3;

View File

@ -85,5 +85,7 @@ void RemoveMapNamePopUpWindow(void);
u8 GetMapNamePopUpWindowId(void);
u8 AddMapNamePopUpWindow(void);
void sub_8199F74(u8 windowId, u8 fontId, const u8 *str, u8 left, u8 top, u8 speed, void (*callback)(struct TextSubPrinter *, u16), u8 letterSpacing, u8 lineSpacing);
void sub_8199C30(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette);
void sub_8199D3C(void *ptr, int delta, int width, int height, bool32 is8BPP);
#endif // GUARD_MENU_H

View File

@ -2,6 +2,7 @@
#define GUARD_MENU_HELPERS_H
#include "task.h"
#include "window.h"
// Exported type declarations

View File

@ -21,4 +21,6 @@ struct PokemonMarkMenu
/*0x10B4*/ u8 tileLoadState;
}; // 10b8
struct Sprite *sub_811FF94(u16 tileTag, u16 paletteTag, const u16 *palette);
#endif //POKEEMERALD_MON_MARKINGS_H

View File

@ -57,5 +57,8 @@ u8 sub_81B1360(void);
void sub_81B8904(u8 arg0, void (*callback)(void));
void OpenPartyMenuInBattle(u8 caseId);
u16 ItemIdToBattleMoveId(u16 itemId);
u8 sub_81B205C(struct Pokemon* a);
u8 sub_81B6D14(u16 a);
bool8 hm_add_c3_without_phase_2(void);
#endif // GUARD_PARTY_MENU_H

View File

@ -18,6 +18,8 @@ enum
POKEBALL_COUNT
};
extern const struct SpriteTemplate gBallSpriteTemplates[];
#define POKEBALL_PLAYER_SENDOUT 0xFF
#define POKEBALL_OPPONENT_SENDOUT 0xFE

View File

@ -83,5 +83,6 @@ void CompactPartySlots(void);
u32 GetBoxMonDataFromAnyBox(u8 boxId, u8 monPosition, u32 request);
bool8 CheckFreePokemonStorageSpace(void);
u8 StorageGetCurrentBox(void);
u8 sub_80D214C(struct BoxPokemon* a, u8 b, u8 c, u8 d);
#endif // GUARD_POKEMON_STORAGE_SYSTEM_H

View File

@ -2,6 +2,6 @@
#define GUARD_POKEMON_SUMMARY_SCREEN_H
void sub_81C4F98(u8, void(*)(void));
void ShowSelectMovePokemonSummaryScreen(void *a, u8 b, u8 c, void *d, u16 e);
void ShowSelectMovePokemonSummaryScreen(struct Pokemon *a, u8 b, u8 c, void *d, u16 e);
#endif // GUARD_POKEMON_SUMMARY_SCREEN_H

View File

@ -94,5 +94,6 @@ void CreateRegionMapCursor(u16 tileTag, u16 paletteTag);
u8 *GetMapName(u8 *, u16, u16);
bool32 sub_8124668(u8 mapSecId);
u8 *sub_81245DC(u8 *dest, u16 mapSecId);
u8 *sub_8124610(u8 *dest, u16 mapSecId);
#endif //GUARD_REGION_MAP_H

View File

@ -776,4 +776,52 @@ extern const u8 gText_TeachWhichMoveToPkmn[];
extern const u8 gText_GiveUpTeachingNewMove[];
extern const u8 gText_TeachX[];
extern const u8 gText_LevelSymbol[];
extern const u8 gText_PkmnInfo[];
extern const u8 gText_PkmnSkills[];
extern const u8 gText_BattleMoves[];
extern const u8 gText_ContestMoves[];
extern const u8 gText_HMMovesCantBeForgotten2[];
extern const u8 gText_Info[];
extern const u8 gText_Switch[];
extern const u8 gText_RentalPkmn[];
extern const u8 gText_TypeSlash[];
extern const u8 gText_HP4[];
extern const u8 gText_Attack3[];
extern const u8 gText_Defense3[];
extern const u8 gText_SpAtk4[];
extern const u8 gText_SpDef4[];
extern const u8 gText_Speed2[];
extern const u8 gText_ExpPoints[];
extern const u8 gText_NextLv[];
extern const u8 gText_Status[];
extern const u8 gText_Power[];
extern const u8 gText_Accuracy2[];
extern const u8 gText_Appeal[];
extern const u8 gText_Jam[];
extern const u8 gText_OTSlash[];
extern const u8 gText_UnkCtrlF907F908[];
extern const u8 gText_XNature[];
extern const u8 gText_XNatureHatchedAtYZ[];
extern const u8 gText_XNatureHatchedSomewhereAt[];
extern const u8 gText_XNatureMetAtYZ[];
extern const u8 gText_XNatureMetSomewhereAt[];
extern const u8 gText_XNatureFatefulEncounter[];
extern const u8 gText_XNatureProbablyMetAt[];
extern const u8 gText_XNatureObtainedInTrade[];
extern const u8 gText_EmptyString5[];
extern const u8 gText_EggWillTakeALongTime[];
extern const u8 gText_EggAboutToHatch[];
extern const u8 gText_EggWillHatchSoon[];
extern const u8 gText_EggWillTakeSomeTime[];
extern const u8 gText_PeculiarEggNicePlace[];
extern const u8 gText_PeculiarEggTrade[];
extern const u8 gText_EggFromTraveler[];
extern const u8 gText_EggFromHotSprings[];
extern const u8 gText_OddEggFoundByCouple[];
extern const u8 gText_None[];
extern const u8 gText_RibbonsVar1[];
extern const u8 gText_OneDash[];
extern const u8 gText_TwoDashes[];
#endif //GUARD_STRINGS_H

View File

@ -262,7 +262,9 @@ SECTIONS {
asm/fossil_specials.o(.text);
src/berry_fix_program.o(.text);
src/pokemon_summary_screen.o(.text);
asm/pokemon_summary_screen.o(.text);
src/unk_pokedex_area_screen_helper.o(.text);
src/battle_pyramid.o(.text);
asm/battle_pyramid.o(.text);
asm/pokenav.o(.text);
src/match_call.o(.text);
asm/pokenav.o(.text.after.match.call);
@ -537,7 +539,8 @@ SECTIONS {
src/fldeff_groundshake.o(.rodata);
src/berry_fix_program.o(.rodata);
src/pokemon_summary_screen.o(.rodata);
data/pokemon_summary_screen.o(.rodata);
src/unk_pokedex_area_screen_helper.o(.rodata);
data/unk_pokedex_area_screen_helper.o(.rodata);
data/pokenav.o(.rodata);
src/match_call.o(.rodata);
data/pokenav.o(.rodata.after.match.call);

248
src/battle_pyramid.c Normal file
View File

@ -0,0 +1,248 @@
#include "global.h"
#include "main.h"
#include "battle_controllers.h"
#include "bg.h"
#include "field_effect.h"
#include "field_weather.h"
#include "gpu_regs.h"
#include "malloc.h"
#include "menu.h"
#include "menu_helpers.h"
#include "overworld.h"
#include "palette.h"
#include "party_menu.h"
#include "scanline_effect.h"
#include "script.h"
#include "task.h"
#include "constants/rgb.h"
EWRAM_DATA struct
{
u32 unk0;
u8 filler4[0x804 - 0x4];
u8 unk804[11];
u8 unk80F[5];
u8 unk814;
u8 filler815;
s8 unk816;
u8 filler817[0x984 - 0x817];
u16 unk984;
u8 filler986[0x98C - 0x986];
} *gUnknown_0203CF2C = NULL;
EWRAM_DATA struct
{
void (*callback)(void);
u8 unk4;
u16 unk6;
u16 unk8;
} gUnknown_0203CF30 = {0};
extern const struct BgTemplate gUnknown_0861F2B4[3];
void sub_81C4F98(u8 a0, void (*callback)(void));
void sub_81C4F44(u8 taskId);
void sub_81C504C(void);
bool8 sub_81C5078(void);
void sub_81C51DC(void);
bool8 sub_81C5238(void);
void sub_81C5314(void);
void sub_81C5674(void);
void sub_81C56F8(void);
void sub_81C5924(void);
void sub_81C59BC(void);
void sub_81C5A20(void);
void sub_81C6BD8(void);
void sub_81C6EF4(void);
void sub_81C700C(void);
void sub_81C4EEC(void)
{
gUnknown_0203CF30.unk6 = 0;
gUnknown_0203CF30.unk8 = 0;
}
void sub_81C4EFC(void)
{
sub_81C4F98(0, CB2_ReturnToFieldWithOpenMenu);
}
void sub_81C4F10(void)
{
sub_81C4F98(1, SetCB2ToReshowScreenAfterMenu2);
}
void sub_81C4F24(void)
{
ScriptContext2_Enable();
FadeScreen(1, 0);
CreateTask(sub_81C4F44, 10);
}
void sub_81C4F44(u8 taskId)
{
if (!gPaletteFade.active)
{
overworld_free_bg_tilemaps();
gFieldCallback2 = hm_add_c3_without_phase_2;
sub_81C4F98(3, CB2_ReturnToField);
DestroyTask(taskId);
}
}
void sub_81C4F84(void)
{
sub_81C4F98(4, gUnknown_0203CF30.callback);
}
void sub_81C4F98(u8 a0, void (*callback)(void))
{
gUnknown_0203CF2C = AllocZeroed(sizeof(*gUnknown_0203CF2C));
if (a0 != 4)
{
gUnknown_0203CF30.unk4 = a0;
}
if (callback != NULL)
{
gUnknown_0203CF30.callback = callback;
}
gUnknown_0203CF2C->unk0 = 0;
gUnknown_0203CF2C->unk814 = -1;
gUnknown_0203CF2C->unk816 = -1;
memset(gUnknown_0203CF2C->unk804, 0xFF, sizeof(gUnknown_0203CF2C->unk804));
memset(gUnknown_0203CF2C->unk80F, 0xFF, sizeof(gUnknown_0203CF2C->unk80F));
SetMainCallback2(sub_81C504C);
}
void sub_81C501C(void)
{
RunTasks();
AnimateSprites();
BuildOamBuffer();
do_scheduled_bg_tilemap_copies_to_vram();
UpdatePaletteFade();
}
void sub_81C5038(void)
{
LoadOam();
ProcessSpriteCopyRequests();
TransferPlttBuffer();
}
void sub_81C504C(void)
{
while (sub_81221EC() != TRUE && sub_81C5078() != TRUE && sub_81221AC() != TRUE);
}
bool8 sub_81C5078(void)
{
switch (gMain.state)
{
case 0:
SetVBlankHBlankCallbacksToNull();
clear_scheduled_bg_copies_to_vram();
gMain.state++;
break;
case 1:
ScanlineEffect_Stop();
gMain.state++;
break;
case 2:
FreeAllSpritePalettes();
gMain.state++;
break;
case 3:
ResetPaletteFade();
gPaletteFade.bufferTransferDisabled = TRUE;
gMain.state++;
break;
case 4:
ResetSpriteData();
gMain.state++;
break;
case 5:
if (!sub_81221AC())
{
ResetTasks();
}
gMain.state++;
break;
case 6:
sub_81C51DC();
gUnknown_0203CF2C->unk984 = 0;
gMain.state++;
break;
case 7:
if (sub_81C5238())
{
gMain.state++;
}
break;
case 8:
sub_81C6BD8();
gMain.state++;
break;
case 9:
sub_81C5924();
sub_81C59BC();
sub_81C5A20();
gMain.state++;
break;
case 10:
sub_81C5314();
gMain.state++;
break;
case 11:
sub_81C56F8();
gMain.state++;
break;
case 12:
sub_81C6EF4();
gMain.state++;
break;
case 13:
sub_81C5674();
gMain.state++;
break;
case 14:
sub_81C700C();
gMain.state++;
break;
case 15:
BlendPalettes(0xFFFFFFFF, 0x10, 0);
gMain.state++;
break;
case 16:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
gPaletteFade.bufferTransferDisabled = FALSE;
gMain.state++;
break;
default:
SetVBlankCallback(sub_81C5038);
SetMainCallback2(sub_81C501C);
return TRUE;
}
return FALSE;
}
void sub_81C51DC(void)
{
ResetVramOamAndBgCntRegs();
ResetBgsAndClearDma3BusyFlags(0);
InitBgsFromTemplates(0, gUnknown_0861F2B4, ARRAY_COUNT(gUnknown_0861F2B4));
SetBgTilemapBuffer(2, gUnknown_0203CF2C->filler4);
ResetAllBgsCoordinates();
schedule_bg_copy_tilemap_to_vram(2);
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 |
DISPCNT_OBJ_1D_MAP |
DISPCNT_OBJ_ON);
ShowBg(0);
ShowBg(1);
ShowBg(2);
SetGpuReg(REG_OFFSET_BLDCNT, 0);
}

View File

@ -0,0 +1,54 @@
static const u8 sHardyNatureName[] = _("HARDY");
static const u8 sLonelyNatureName[] = _("LONELY");
static const u8 sBraveNatureName[] = _("BRAVE");
static const u8 sAdamantNatureName[] = _("ADAMANT");
static const u8 sNaughtyNatureName[] = _("NAUGHTY");
static const u8 sBoldNatureName[] = _("BOLD");
static const u8 sDocileNatureName[] = _("DOCILE");
static const u8 sRelaxedNatureName[] = _("RELAXED");
static const u8 sImpishNatureName[] = _("IMPISH");
static const u8 sLaxNatureName[] = _("LAX");
static const u8 sTimidNatureName[] = _("TIMID");
static const u8 sHastyNatureName[] = _("HASTY");
static const u8 sSeriousNatureName[] = _("SERIOUS");
static const u8 sJollyNatureName[] = _("JOLLY");
static const u8 sNaiveNatureName[] = _("NAIVE");
static const u8 sModestNatureName[] = _("MODEST");
static const u8 sMildNatureName[] = _("MILD");
static const u8 sQuietNatureName[] = _("QUIET");
static const u8 sBashfulNatureName[] = _("BASHFUL");
static const u8 sRashNatureName[] = _("RASH");
static const u8 sCalmNatureName[] = _("CALM");
static const u8 sGentleNatureName[] = _("GENTLE");
static const u8 sSassyNatureName[] = _("SASSY");
static const u8 sCarefulNatureName[] = _("CAREFUL");
static const u8 sQuirkyNatureName[] = _("QUIRKY");
const u8 *const gNatureNamePointers[] =
{
[NATURE_HARDY] = sHardyNatureName,
[NATURE_LONELY] = sLonelyNatureName,
[NATURE_BRAVE] = sBraveNatureName,
[NATURE_ADAMANT] = sAdamantNatureName,
[NATURE_NAUGHTY] = sNaughtyNatureName,
[NATURE_BOLD] = sBoldNatureName,
[NATURE_DOCILE] = sDocileNatureName,
[NATURE_RELAXED] = sRelaxedNatureName,
[NATURE_IMPISH] = sImpishNatureName,
[NATURE_LAX] = sLaxNatureName,
[NATURE_TIMID] = sTimidNatureName,
[NATURE_HASTY] = sHastyNatureName,
[NATURE_SERIOUS] = sSeriousNatureName,
[NATURE_JOLLY] = sJollyNatureName,
[NATURE_NAIVE] = sNaiveNatureName,
[NATURE_MODEST] = sModestNatureName,
[NATURE_MILD] = sMildNatureName,
[NATURE_QUIET] = sQuietNatureName,
[NATURE_BASHFUL] = sBashfulNatureName,
[NATURE_RASH] = sRashNatureName,
[NATURE_CALM] = sCalmNatureName,
[NATURE_GENTLE] = sGentleNatureName,
[NATURE_SASSY] = sSassyNatureName,
[NATURE_CAREFUL] = sCarefulNatureName,
[NATURE_QUIRKY] = sQuirkyNatureName,
};

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,75 @@
#include "global.h"
#include "main.h"
#include "menu.h"
#include "bg.h"
#include "malloc.h"
#include "palette.h"
EWRAM_DATA u8 *gUnknown_0203CF28 = NULL;
static const u16 gUnknown_0861D140[] = INCBIN_U16("graphics/interface/region_map.gbapal");
extern const u8 gUnknown_0861D1A0[];
extern const u8 gUnknown_0861DEF4[];
extern const u8 gUnknown_0861E208[];
extern const u8 gUnknown_0861EF64[];
struct UnkStruct_1C4D70
{
u32 bg:2;
u32 unk2:8;
u32 unk10:2;
u32 unk12:20;
};
void sub_81C4D70(struct UnkStruct_1C4D70 *template)
{
u8 unk;
gUnknown_0203CF28 = Alloc(4);
unk = template->unk10;
if (unk == 0)
{
SetBgAttribute(template->bg, BG_CTRL_ATTR_WRAPAROUND, 0);
decompress_and_copy_tile_data_to_vram(template->bg, gUnknown_0861D1A0, 0, template->unk2, unk);
sub_8199D3C(decompress_and_copy_tile_data_to_vram(template->bg, gUnknown_0861DEF4, 0, 0, 1), template->unk2, 32, 32, unk);
}
else
{
SetBgAttribute(template->bg, BG_CTRL_ATTR_WRAPAROUND, 2);
SetBgAttribute(template->bg, 9, 1);
decompress_and_copy_tile_data_to_vram(template->bg, gUnknown_0861E208, 0, template->unk2, 0);
sub_8199D3C(decompress_and_copy_tile_data_to_vram(template->bg, gUnknown_0861EF64, 0, 0, 1), template->unk2, 64, 64, 1);
}
ChangeBgX(template->bg, 0, 0);
ChangeBgY(template->bg, 0, 0);
SetBgAttribute(template->bg, BG_CTRL_ATTR_SCREENSIZE, 1);
CpuCopy32(gUnknown_0861D140, &gPlttBufferUnfaded[0x70], 0x60);
*gUnknown_0203CF28 = template->bg;
}
bool32 sub_81C4E90(void)
{
if (!free_temp_tile_data_buffers_if_possible())
{
ShowBg(*gUnknown_0203CF28);
return FALSE;
}
else
{
return TRUE;
}
}
void sub_81C4EB4(void)
{
if (gUnknown_0203CF28 != NULL)
{
FREE_AND_SET_NULL(gUnknown_0203CF28);
}
}
void sub_81C4ED0(u32 a0)
{
ChangeBgY(*gUnknown_0203CF28, a0 * 0x100, 0);
}

View File

@ -739,30 +739,9 @@ gUnknown_0203CF00: @ 203CF00
.include "src/fossil_specials.o"
.include "src/fldeff_groundshake.o"
gUnknown_0203CF1C: @ 203CF1C
.space 0x4
gUnknown_0203CF20: @ 203CF20
.space 0x1
gUnknown_0203CF21: @ 203CF21
.space 0x3
gUnknown_0203CF24: @ 203CF24
.space 0x4
gUnknown_0203CF28: @ 203CF28
.space 0x4
gUnknown_0203CF2C: @ 203CF2C
.space 0x4
gUnknown_0203CF30: @ 203CF30
.space 0x8
gUnknown_0203CF38: @ 203CF38
.space 0x4
.include "src/pokemon_summary_screen.o"
.include "src/unk_pokedex_area_screen_helper.o"
.include "src/battle_pyramid.o"
gUnknown_0203CF3C: @ 203CF3C
.space 0x4