finish item_pc
This commit is contained in:
-728
@@ -1,728 +0,0 @@
|
|||||||
.include "asm/macros.inc"
|
|
||||||
.include "constants/constants.inc"
|
|
||||||
|
|
||||||
.syntax unified
|
|
||||||
|
|
||||||
.text
|
|
||||||
|
|
||||||
thumb_func_start sub_810E578
|
|
||||||
sub_810E578: @ 810E578
|
|
||||||
push {r4-r6,lr}
|
|
||||||
adds r6, r0, 0
|
|
||||||
lsls r6, 24
|
|
||||||
lsrs r6, 24
|
|
||||||
lsls r5, r6, 2
|
|
||||||
adds r5, r6
|
|
||||||
lsls r5, 3
|
|
||||||
ldr r0, _0810E5D4 @ =gTasks+0x8
|
|
||||||
adds r5, r0
|
|
||||||
movs r0, 0x2
|
|
||||||
bl sub_810EAF0
|
|
||||||
movs r0, 0x1
|
|
||||||
bl PutWindowTilemap
|
|
||||||
ldrb r0, [r5]
|
|
||||||
ldr r4, _0810E5D8 @ =gUnknown_203ADCC + 0x4
|
|
||||||
adds r2, r4, 0x2
|
|
||||||
adds r1, r4, 0
|
|
||||||
bl DestroyListMenu
|
|
||||||
bl sub_810DDA4
|
|
||||||
bl sub_810DBF0
|
|
||||||
bl sub_810D878
|
|
||||||
ldr r0, _0810E5DC @ =gMultiuseListMenuTemplate
|
|
||||||
subs r4, 0x4
|
|
||||||
ldrh r1, [r4, 0x4]
|
|
||||||
ldrh r2, [r4, 0x6]
|
|
||||||
bl ListMenuInit
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r0, 24
|
|
||||||
strh r0, [r5]
|
|
||||||
movs r0, 0
|
|
||||||
bl schedule_bg_copy_tilemap_to_vram
|
|
||||||
adds r0, r6, 0
|
|
||||||
bl sub_810DFB0
|
|
||||||
pop {r4-r6}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810E5D4: .4byte gTasks+0x8
|
|
||||||
_0810E5D8: .4byte gUnknown_203ADCC + 0x4
|
|
||||||
_0810E5DC: .4byte gMultiuseListMenuTemplate
|
|
||||||
thumb_func_end sub_810E578
|
|
||||||
|
|
||||||
thumb_func_start sub_810E5E0
|
|
||||||
sub_810E5E0: @ 810E5E0
|
|
||||||
push {r4-r6,lr}
|
|
||||||
sub sp, 0x14
|
|
||||||
lsls r0, 16
|
|
||||||
lsrs r0, 16
|
|
||||||
bl ItemPc_GetItemIdBySlotId
|
|
||||||
lsls r0, 16
|
|
||||||
lsrs r0, 16
|
|
||||||
ldr r6, _0810E660 @ =gStringVar1
|
|
||||||
adds r1, r6, 0
|
|
||||||
bl CopyItemName
|
|
||||||
ldr r5, _0810E664 @ =gStringVar4
|
|
||||||
ldr r1, _0810E668 @ =gUnknown_84177AC
|
|
||||||
adds r0, r5, 0
|
|
||||||
bl StringExpandPlaceholders
|
|
||||||
movs r0, 0x1
|
|
||||||
bl sub_810EAB4
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r0, 24
|
|
||||||
movs r1, 0x2
|
|
||||||
str r1, [sp]
|
|
||||||
movs r4, 0
|
|
||||||
str r4, [sp, 0x4]
|
|
||||||
str r4, [sp, 0x8]
|
|
||||||
adds r2, r5, 0
|
|
||||||
movs r3, 0
|
|
||||||
bl AddTextPrinterParameterized
|
|
||||||
adds r0, r6, 0
|
|
||||||
movs r1, 0x1
|
|
||||||
movs r2, 0x2
|
|
||||||
movs r3, 0x3
|
|
||||||
bl ConvertIntToDecimalStringN
|
|
||||||
ldr r1, _0810E66C @ =gText_TimesStrVar1
|
|
||||||
adds r0, r5, 0
|
|
||||||
bl StringExpandPlaceholders
|
|
||||||
movs r0, 0x3
|
|
||||||
bl sub_810EA9C
|
|
||||||
movs r0, 0xA
|
|
||||||
str r0, [sp]
|
|
||||||
movs r0, 0x1
|
|
||||||
str r0, [sp, 0x4]
|
|
||||||
str r4, [sp, 0x8]
|
|
||||||
str r4, [sp, 0xC]
|
|
||||||
str r0, [sp, 0x10]
|
|
||||||
movs r0, 0x3
|
|
||||||
movs r1, 0
|
|
||||||
adds r2, r5, 0
|
|
||||||
movs r3, 0x8
|
|
||||||
bl sub_810EA34
|
|
||||||
movs r0, 0
|
|
||||||
bl schedule_bg_copy_tilemap_to_vram
|
|
||||||
add sp, 0x14
|
|
||||||
pop {r4-r6}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810E660: .4byte gStringVar1
|
|
||||||
_0810E664: .4byte gStringVar4
|
|
||||||
_0810E668: .4byte gUnknown_84177AC
|
|
||||||
_0810E66C: .4byte gText_TimesStrVar1
|
|
||||||
thumb_func_end sub_810E5E0
|
|
||||||
|
|
||||||
thumb_func_start sub_810E670
|
|
||||||
sub_810E670: @ 810E670
|
|
||||||
push {r4,lr}
|
|
||||||
sub sp, 0x14
|
|
||||||
adds r4, r0, 0
|
|
||||||
lsls r4, 16
|
|
||||||
lsrs r4, 16
|
|
||||||
movs r0, 0x1C
|
|
||||||
str r0, [sp]
|
|
||||||
movs r0, 0xC
|
|
||||||
str r0, [sp, 0x4]
|
|
||||||
movs r0, 0x3
|
|
||||||
movs r1, 0x11
|
|
||||||
movs r2, 0xA
|
|
||||||
movs r3, 0xA
|
|
||||||
bl FillWindowPixelRect
|
|
||||||
ldr r0, _0810E6CC @ =gStringVar1
|
|
||||||
lsls r4, 16
|
|
||||||
asrs r4, 16
|
|
||||||
adds r1, r4, 0
|
|
||||||
movs r2, 0x2
|
|
||||||
movs r3, 0x3
|
|
||||||
bl ConvertIntToDecimalStringN
|
|
||||||
ldr r4, _0810E6D0 @ =gStringVar4
|
|
||||||
ldr r1, _0810E6D4 @ =gText_TimesStrVar1
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl StringExpandPlaceholders
|
|
||||||
movs r0, 0xA
|
|
||||||
str r0, [sp]
|
|
||||||
movs r1, 0x1
|
|
||||||
str r1, [sp, 0x4]
|
|
||||||
movs r0, 0
|
|
||||||
str r0, [sp, 0x8]
|
|
||||||
str r0, [sp, 0xC]
|
|
||||||
str r1, [sp, 0x10]
|
|
||||||
movs r0, 0x3
|
|
||||||
movs r1, 0
|
|
||||||
adds r2, r4, 0
|
|
||||||
movs r3, 0x8
|
|
||||||
bl sub_810EA34
|
|
||||||
add sp, 0x14
|
|
||||||
pop {r4}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810E6CC: .4byte gStringVar1
|
|
||||||
_0810E6D0: .4byte gStringVar4
|
|
||||||
_0810E6D4: .4byte gText_TimesStrVar1
|
|
||||||
thumb_func_end sub_810E670
|
|
||||||
|
|
||||||
thumb_func_start sub_810E6D8
|
|
||||||
sub_810E6D8: @ 810E6D8
|
|
||||||
push {r4-r6,lr}
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r5, r0, 24
|
|
||||||
adds r6, r5, 0
|
|
||||||
lsls r0, r5, 2
|
|
||||||
adds r0, r5
|
|
||||||
lsls r0, 3
|
|
||||||
ldr r1, _0810E708 @ =gTasks+0x8
|
|
||||||
adds r4, r0, r1
|
|
||||||
adds r0, r4, 0
|
|
||||||
adds r0, 0x10
|
|
||||||
ldrh r1, [r4, 0x4]
|
|
||||||
bl sub_80BF848
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r0, 24
|
|
||||||
cmp r0, 0x1
|
|
||||||
bne _0810E70C
|
|
||||||
movs r1, 0x10
|
|
||||||
ldrsh r0, [r4, r1]
|
|
||||||
bl sub_810E670
|
|
||||||
b _0810E796
|
|
||||||
.align 2, 0
|
|
||||||
_0810E708: .4byte gTasks+0x8
|
|
||||||
_0810E70C:
|
|
||||||
ldr r0, _0810E74C @ =gMain
|
|
||||||
ldrh r1, [r0, 0x2E]
|
|
||||||
movs r0, 0x1
|
|
||||||
ands r0, r1
|
|
||||||
cmp r0, 0
|
|
||||||
beq _0810E750
|
|
||||||
movs r0, 0x5
|
|
||||||
bl PlaySE
|
|
||||||
movs r0, 0x1
|
|
||||||
bl sub_810EAF0
|
|
||||||
movs r0, 0x3
|
|
||||||
bl ClearWindowTilemap
|
|
||||||
movs r0, 0
|
|
||||||
bl PutWindowTilemap
|
|
||||||
ldrb r0, [r4]
|
|
||||||
movs r1, 0x1
|
|
||||||
bl sub_810DAB4
|
|
||||||
movs r0, 0
|
|
||||||
bl schedule_bg_copy_tilemap_to_vram
|
|
||||||
bl sub_810DBD0
|
|
||||||
adds r0, r5, 0
|
|
||||||
bl sub_810E418
|
|
||||||
b _0810E796
|
|
||||||
.align 2, 0
|
|
||||||
_0810E74C: .4byte gMain
|
|
||||||
_0810E750:
|
|
||||||
movs r0, 0x2
|
|
||||||
ands r0, r1
|
|
||||||
cmp r0, 0
|
|
||||||
beq _0810E796
|
|
||||||
movs r0, 0x5
|
|
||||||
bl PlaySE
|
|
||||||
movs r0, 0x3
|
|
||||||
movs r1, 0
|
|
||||||
bl sub_810F4D8
|
|
||||||
movs r0, 0x1
|
|
||||||
bl sub_810EAF0
|
|
||||||
movs r0, 0x3
|
|
||||||
bl ClearWindowTilemap
|
|
||||||
movs r0, 0
|
|
||||||
bl PutWindowTilemap
|
|
||||||
movs r0, 0x1
|
|
||||||
bl PutWindowTilemap
|
|
||||||
ldrb r0, [r4]
|
|
||||||
movs r1, 0x1
|
|
||||||
bl sub_810DAB4
|
|
||||||
movs r0, 0
|
|
||||||
bl schedule_bg_copy_tilemap_to_vram
|
|
||||||
bl sub_810DBD0
|
|
||||||
adds r0, r6, 0
|
|
||||||
bl sub_810DFB0
|
|
||||||
_0810E796:
|
|
||||||
pop {r4-r6}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
thumb_func_end sub_810E6D8
|
|
||||||
|
|
||||||
thumb_func_start sub_810E79C
|
|
||||||
sub_810E79C: @ 810E79C
|
|
||||||
push {r4,lr}
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r4, r0, 24
|
|
||||||
bl CalculatePlayerPartyCount
|
|
||||||
lsls r0, 24
|
|
||||||
cmp r0, 0
|
|
||||||
bne _0810E7DC
|
|
||||||
movs r0, 0x4
|
|
||||||
movs r1, 0
|
|
||||||
bl sub_810F4D8
|
|
||||||
movs r0, 0
|
|
||||||
bl sub_810EAF0
|
|
||||||
movs r0, 0x4
|
|
||||||
bl ClearWindowTilemap
|
|
||||||
movs r0, 0
|
|
||||||
bl PutWindowTilemap
|
|
||||||
ldr r1, _0810E7D4 @ =gText_ThereIsNoPokemon
|
|
||||||
ldr r2, _0810E7D8 @ =sub_810E848
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl sub_810EB30
|
|
||||||
b _0810E7EA
|
|
||||||
.align 2, 0
|
|
||||||
_0810E7D4: .4byte gText_ThereIsNoPokemon
|
|
||||||
_0810E7D8: .4byte sub_810E848
|
|
||||||
_0810E7DC:
|
|
||||||
ldr r0, _0810E7F0 @ =gUnknown_203ADBC
|
|
||||||
ldr r1, [r0]
|
|
||||||
ldr r0, _0810E7F4 @ =sub_810E7F8
|
|
||||||
str r0, [r1]
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl sub_810DC8C
|
|
||||||
_0810E7EA:
|
|
||||||
pop {r4}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810E7F0: .4byte gUnknown_203ADBC
|
|
||||||
_0810E7F4: .4byte sub_810E7F8
|
|
||||||
thumb_func_end sub_810E79C
|
|
||||||
|
|
||||||
thumb_func_start sub_810E7F8
|
|
||||||
sub_810E7F8: @ 810E7F8
|
|
||||||
push {lr}
|
|
||||||
sub sp, 0xC
|
|
||||||
movs r0, 0x6
|
|
||||||
str r0, [sp]
|
|
||||||
ldr r0, _0810E82C @ =sub_811FB28
|
|
||||||
str r0, [sp, 0x4]
|
|
||||||
ldr r0, _0810E830 @ =sub_810E838
|
|
||||||
str r0, [sp, 0x8]
|
|
||||||
movs r0, 0
|
|
||||||
movs r1, 0
|
|
||||||
movs r2, 0x6
|
|
||||||
movs r3, 0
|
|
||||||
bl sub_811EA44
|
|
||||||
bl sub_810DD54
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r0, 24
|
|
||||||
bl ItemPc_GetItemIdBySlotId
|
|
||||||
ldr r1, _0810E834 @ =gUnknown_203B0A0
|
|
||||||
strh r0, [r1, 0xC]
|
|
||||||
add sp, 0xC
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810E82C: .4byte sub_811FB28
|
|
||||||
_0810E830: .4byte sub_810E838
|
|
||||||
_0810E834: .4byte gUnknown_203B0A0
|
|
||||||
thumb_func_end sub_810E7F8
|
|
||||||
|
|
||||||
thumb_func_start sub_810E838
|
|
||||||
sub_810E838: @ 810E838
|
|
||||||
push {lr}
|
|
||||||
movs r0, 0x1
|
|
||||||
movs r1, 0
|
|
||||||
bl sub_810D3F4
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
thumb_func_end sub_810E838
|
|
||||||
|
|
||||||
thumb_func_start sub_810E848
|
|
||||||
sub_810E848: @ 810E848
|
|
||||||
push {r4,r5,lr}
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r4, r0, 24
|
|
||||||
lsls r0, r4, 2
|
|
||||||
adds r0, r4
|
|
||||||
lsls r0, 3
|
|
||||||
ldr r1, _0810E898 @ =gTasks+0x8
|
|
||||||
adds r5, r0, r1
|
|
||||||
ldr r0, _0810E89C @ =gMain
|
|
||||||
ldrh r1, [r0, 0x2E]
|
|
||||||
movs r0, 0x1
|
|
||||||
ands r0, r1
|
|
||||||
cmp r0, 0
|
|
||||||
beq _0810E892
|
|
||||||
movs r0, 0x5
|
|
||||||
bl PlaySE
|
|
||||||
movs r0, 0x5
|
|
||||||
movs r1, 0
|
|
||||||
bl sub_810F260
|
|
||||||
movs r0, 0x5
|
|
||||||
bl ClearWindowTilemap
|
|
||||||
movs r0, 0x1
|
|
||||||
bl PutWindowTilemap
|
|
||||||
ldrb r0, [r5]
|
|
||||||
movs r1, 0x1
|
|
||||||
bl sub_810DAB4
|
|
||||||
movs r0, 0
|
|
||||||
bl schedule_bg_copy_tilemap_to_vram
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl sub_810DFB0
|
|
||||||
_0810E892:
|
|
||||||
pop {r4,r5}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810E898: .4byte gTasks+0x8
|
|
||||||
_0810E89C: .4byte gMain
|
|
||||||
thumb_func_end sub_810E848
|
|
||||||
|
|
||||||
thumb_func_start sub_810E8A0
|
|
||||||
sub_810E8A0: @ 810E8A0
|
|
||||||
push {r4,r5,lr}
|
|
||||||
adds r5, r0, 0
|
|
||||||
lsls r5, 24
|
|
||||||
lsrs r5, 24
|
|
||||||
lsls r4, r5, 2
|
|
||||||
adds r4, r5
|
|
||||||
lsls r4, 3
|
|
||||||
ldr r0, _0810E8EC @ =gTasks+0x8
|
|
||||||
adds r4, r0
|
|
||||||
movs r0, 0x4
|
|
||||||
movs r1, 0
|
|
||||||
bl sub_810F4D8
|
|
||||||
movs r0, 0
|
|
||||||
bl sub_810EAF0
|
|
||||||
movs r0, 0x4
|
|
||||||
bl ClearWindowTilemap
|
|
||||||
movs r0, 0
|
|
||||||
bl PutWindowTilemap
|
|
||||||
movs r0, 0x1
|
|
||||||
bl PutWindowTilemap
|
|
||||||
ldrb r0, [r4]
|
|
||||||
movs r1, 0x1
|
|
||||||
bl sub_810DAB4
|
|
||||||
movs r0, 0
|
|
||||||
bl schedule_bg_copy_tilemap_to_vram
|
|
||||||
adds r0, r5, 0
|
|
||||||
bl sub_810DFB0
|
|
||||||
pop {r4,r5}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810E8EC: .4byte gTasks+0x8
|
|
||||||
thumb_func_end sub_810E8A0
|
|
||||||
|
|
||||||
thumb_func_start sub_810E8F0
|
|
||||||
sub_810E8F0: @ 810E8F0
|
|
||||||
push {r4,lr}
|
|
||||||
ldr r0, _0810E974 @ =gUnknown_8453F98
|
|
||||||
bl InitWindows
|
|
||||||
bl DeactivateAllTextPrinters
|
|
||||||
movs r1, 0xF0
|
|
||||||
lsls r1, 2
|
|
||||||
movs r0, 0
|
|
||||||
movs r2, 0xE0
|
|
||||||
bl sub_815001C
|
|
||||||
ldr r1, _0810E978 @ =0x000003a3
|
|
||||||
movs r0, 0
|
|
||||||
movs r2, 0xC0
|
|
||||||
bl sub_814FF2C
|
|
||||||
movs r1, 0xEB
|
|
||||||
lsls r1, 2
|
|
||||||
movs r0, 0
|
|
||||||
movs r2, 0xB0
|
|
||||||
bl sub_814FEAC
|
|
||||||
movs r0, 0x2
|
|
||||||
bl stdpal_get
|
|
||||||
movs r1, 0xD0
|
|
||||||
movs r2, 0x20
|
|
||||||
bl LoadPalette
|
|
||||||
ldr r0, _0810E97C @ =gTMCaseMainWindowPalette
|
|
||||||
movs r1, 0xF0
|
|
||||||
movs r2, 0x20
|
|
||||||
bl LoadPalette
|
|
||||||
movs r4, 0
|
|
||||||
_0810E938:
|
|
||||||
adds r0, r4, 0
|
|
||||||
movs r1, 0
|
|
||||||
bl FillWindowPixelBuffer
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl PutWindowTilemap
|
|
||||||
adds r0, r4, 0x1
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r4, r0, 24
|
|
||||||
cmp r4, 0x2
|
|
||||||
bls _0810E938
|
|
||||||
movs r0, 0
|
|
||||||
bl schedule_bg_copy_tilemap_to_vram
|
|
||||||
movs r4, 0
|
|
||||||
ldr r3, _0810E980 @ =gUnknown_203ADD8
|
|
||||||
movs r2, 0xFF
|
|
||||||
_0810E95C:
|
|
||||||
adds r0, r4, r3
|
|
||||||
ldrb r1, [r0]
|
|
||||||
orrs r1, r2
|
|
||||||
strb r1, [r0]
|
|
||||||
adds r0, r4, 0x1
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r4, r0, 24
|
|
||||||
cmp r4, 0x2
|
|
||||||
bls _0810E95C
|
|
||||||
pop {r4}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810E974: .4byte gUnknown_8453F98
|
|
||||||
_0810E978: .4byte 0x000003a3
|
|
||||||
_0810E97C: .4byte gTMCaseMainWindowPalette
|
|
||||||
_0810E980: .4byte gUnknown_203ADD8
|
|
||||||
thumb_func_end sub_810E8F0
|
|
||||||
|
|
||||||
thumb_func_start sub_810E984
|
|
||||||
sub_810E984: @ 810E984
|
|
||||||
push {r4-r6,lr}
|
|
||||||
mov r6, r9
|
|
||||||
mov r5, r8
|
|
||||||
push {r5,r6}
|
|
||||||
sub sp, 0x10
|
|
||||||
ldr r6, [sp, 0x28]
|
|
||||||
ldr r4, [sp, 0x2C]
|
|
||||||
mov r8, r4
|
|
||||||
ldr r4, [sp, 0x30]
|
|
||||||
mov r9, r4
|
|
||||||
lsls r2, 24
|
|
||||||
lsrs r2, 24
|
|
||||||
lsls r3, 24
|
|
||||||
lsrs r3, 24
|
|
||||||
lsls r6, 24
|
|
||||||
lsrs r6, 24
|
|
||||||
mov r4, r8
|
|
||||||
lsls r4, 24
|
|
||||||
lsrs r4, 24
|
|
||||||
mov r8, r4
|
|
||||||
mov r4, r9
|
|
||||||
lsls r4, 24
|
|
||||||
lsrs r4, 24
|
|
||||||
mov r9, r4
|
|
||||||
str r1, [sp]
|
|
||||||
mov r1, sp
|
|
||||||
strb r0, [r1, 0x4]
|
|
||||||
movs r0, 0x3
|
|
||||||
strb r0, [r1, 0x5]
|
|
||||||
mov r0, sp
|
|
||||||
strb r2, [r0, 0x6]
|
|
||||||
strb r3, [r0, 0x7]
|
|
||||||
strb r2, [r0, 0x8]
|
|
||||||
strb r3, [r0, 0x9]
|
|
||||||
mov r2, sp
|
|
||||||
ldrb r1, [r2, 0xC]
|
|
||||||
movs r5, 0xF
|
|
||||||
adds r0, r5, 0
|
|
||||||
ands r0, r1
|
|
||||||
movs r1, 0x20
|
|
||||||
orrs r0, r1
|
|
||||||
strb r0, [r2, 0xC]
|
|
||||||
ldrb r1, [r2, 0xD]
|
|
||||||
movs r4, 0x10
|
|
||||||
negs r4, r4
|
|
||||||
adds r0, r4, 0
|
|
||||||
ands r0, r1
|
|
||||||
strb r0, [r2, 0xD]
|
|
||||||
mov r1, sp
|
|
||||||
movs r0, 0x30
|
|
||||||
strb r0, [r1, 0xD]
|
|
||||||
movs r0, 0x3
|
|
||||||
movs r1, 0x4
|
|
||||||
bl GetFontAttribute
|
|
||||||
mov r1, sp
|
|
||||||
ands r5, r0
|
|
||||||
ldrb r0, [r1, 0xC]
|
|
||||||
ands r4, r0
|
|
||||||
orrs r4, r5
|
|
||||||
strb r4, [r1, 0xC]
|
|
||||||
movs r0, 0x3
|
|
||||||
movs r1, 0x2
|
|
||||||
bl GetFontAttribute
|
|
||||||
mov r1, sp
|
|
||||||
adds r6, r0
|
|
||||||
strb r6, [r1, 0xA]
|
|
||||||
movs r0, 0x3
|
|
||||||
movs r1, 0x3
|
|
||||||
bl GetFontAttribute
|
|
||||||
mov r1, sp
|
|
||||||
add r8, r0
|
|
||||||
mov r0, r8
|
|
||||||
strb r0, [r1, 0xB]
|
|
||||||
mov r0, sp
|
|
||||||
mov r1, r9
|
|
||||||
movs r2, 0
|
|
||||||
bl AddTextPrinter
|
|
||||||
add sp, 0x10
|
|
||||||
pop {r3,r4}
|
|
||||||
mov r8, r3
|
|
||||||
mov r9, r4
|
|
||||||
pop {r4-r6}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
thumb_func_end sub_810E984
|
|
||||||
|
|
||||||
thumb_func_start sub_810EA34
|
|
||||||
sub_810EA34: @ 810EA34
|
|
||||||
push {r4-r7,lr}
|
|
||||||
mov r7, r9
|
|
||||||
mov r6, r8
|
|
||||||
push {r6,r7}
|
|
||||||
sub sp, 0x14
|
|
||||||
mov r9, r3
|
|
||||||
ldr r3, [sp, 0x30]
|
|
||||||
ldr r4, [sp, 0x34]
|
|
||||||
ldr r6, [sp, 0x38]
|
|
||||||
ldr r5, [sp, 0x3C]
|
|
||||||
mov r8, r5
|
|
||||||
ldr r5, [sp, 0x40]
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r0, 24
|
|
||||||
lsls r1, 24
|
|
||||||
lsrs r1, 24
|
|
||||||
mov r7, r9
|
|
||||||
lsls r7, 24
|
|
||||||
lsrs r7, 24
|
|
||||||
mov r9, r7
|
|
||||||
lsls r3, 24
|
|
||||||
lsrs r3, 24
|
|
||||||
lsls r4, 24
|
|
||||||
lsrs r4, 24
|
|
||||||
lsls r6, 24
|
|
||||||
lsrs r6, 24
|
|
||||||
lsls r5, 24
|
|
||||||
lsrs r5, 24
|
|
||||||
str r4, [sp]
|
|
||||||
str r6, [sp, 0x4]
|
|
||||||
lsls r4, r5, 1
|
|
||||||
adds r4, r5
|
|
||||||
ldr r5, _0810EA98 @ =gUnknown_8453F8C
|
|
||||||
adds r4, r5
|
|
||||||
str r4, [sp, 0x8]
|
|
||||||
mov r4, r8
|
|
||||||
lsls r4, 24
|
|
||||||
asrs r4, 24
|
|
||||||
str r4, [sp, 0xC]
|
|
||||||
str r2, [sp, 0x10]
|
|
||||||
mov r2, r9
|
|
||||||
bl AddTextPrinterParameterized4
|
|
||||||
add sp, 0x14
|
|
||||||
pop {r3,r4}
|
|
||||||
mov r8, r3
|
|
||||||
mov r9, r4
|
|
||||||
pop {r4-r7}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810EA98: .4byte gUnknown_8453F8C
|
|
||||||
thumb_func_end sub_810EA34
|
|
||||||
|
|
||||||
thumb_func_start sub_810EA9C
|
|
||||||
sub_810EA9C: @ 810EA9C
|
|
||||||
push {lr}
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r0, 24
|
|
||||||
movs r2, 0xF0
|
|
||||||
lsls r2, 2
|
|
||||||
movs r1, 0
|
|
||||||
movs r3, 0xE
|
|
||||||
bl SetWindowBorderStyle
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
thumb_func_end sub_810EA9C
|
|
||||||
|
|
||||||
thumb_func_start sub_810EAB4
|
|
||||||
sub_810EAB4: @ 810EAB4
|
|
||||||
push {r4,lr}
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r1, r0, 24
|
|
||||||
ldr r0, _0810EAE4 @ =gUnknown_203ADD8
|
|
||||||
adds r4, r1, r0
|
|
||||||
ldrb r0, [r4]
|
|
||||||
cmp r0, 0xFF
|
|
||||||
bne _0810EADC
|
|
||||||
lsls r0, r1, 3
|
|
||||||
ldr r1, _0810EAE8 @ =gUnknown_8453FD0
|
|
||||||
adds r0, r1
|
|
||||||
bl AddWindow
|
|
||||||
strb r0, [r4]
|
|
||||||
ldrb r0, [r4]
|
|
||||||
ldr r2, _0810EAEC @ =0x000003a3
|
|
||||||
movs r1, 0x1
|
|
||||||
movs r3, 0xC
|
|
||||||
bl SetWindowBorderStyle
|
|
||||||
_0810EADC:
|
|
||||||
ldrb r0, [r4]
|
|
||||||
pop {r4}
|
|
||||||
pop {r1}
|
|
||||||
bx r1
|
|
||||||
.align 2, 0
|
|
||||||
_0810EAE4: .4byte gUnknown_203ADD8
|
|
||||||
_0810EAE8: .4byte gUnknown_8453FD0
|
|
||||||
_0810EAEC: .4byte 0x000003a3
|
|
||||||
thumb_func_end sub_810EAB4
|
|
||||||
|
|
||||||
thumb_func_start sub_810EAF0
|
|
||||||
sub_810EAF0: @ 810EAF0
|
|
||||||
push {r4,lr}
|
|
||||||
adds r4, r0, 0
|
|
||||||
lsls r4, 24
|
|
||||||
lsrs r4, 24
|
|
||||||
ldr r0, _0810EB1C @ =gUnknown_203ADD8
|
|
||||||
adds r4, r0
|
|
||||||
ldrb r0, [r4]
|
|
||||||
movs r1, 0
|
|
||||||
bl sub_810F4D8
|
|
||||||
ldrb r0, [r4]
|
|
||||||
bl ClearWindowTilemap
|
|
||||||
ldrb r0, [r4]
|
|
||||||
bl RemoveWindow
|
|
||||||
movs r0, 0xFF
|
|
||||||
strb r0, [r4]
|
|
||||||
pop {r4}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0810EB1C: .4byte gUnknown_203ADD8
|
|
||||||
thumb_func_end sub_810EAF0
|
|
||||||
|
|
||||||
thumb_func_start sub_810EB20
|
|
||||||
sub_810EB20: @ 810EB20
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r0, 24
|
|
||||||
ldr r1, _0810EB2C @ =gUnknown_203ADD8
|
|
||||||
adds r0, r1
|
|
||||||
ldrb r0, [r0]
|
|
||||||
bx lr
|
|
||||||
.align 2, 0
|
|
||||||
_0810EB2C: .4byte gUnknown_203ADD8
|
|
||||||
thumb_func_end sub_810EB20
|
|
||||||
|
|
||||||
thumb_func_start sub_810EB30
|
|
||||||
sub_810EB30: @ 810EB30
|
|
||||||
push {r4-r6,lr}
|
|
||||||
sub sp, 0x10
|
|
||||||
adds r4, r0, 0
|
|
||||||
adds r5, r1, 0
|
|
||||||
adds r6, r2, 0
|
|
||||||
lsls r4, 24
|
|
||||||
lsrs r4, 24
|
|
||||||
bl GetTextSpeedSetting
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r0, 24
|
|
||||||
movs r2, 0xEB
|
|
||||||
lsls r2, 2
|
|
||||||
movs r1, 0x2
|
|
||||||
str r1, [sp]
|
|
||||||
str r0, [sp, 0x4]
|
|
||||||
str r5, [sp, 0x8]
|
|
||||||
str r6, [sp, 0xC]
|
|
||||||
adds r0, r4, 0
|
|
||||||
movs r1, 0x5
|
|
||||||
movs r3, 0xB
|
|
||||||
bl DisplayMessageAndContinueTask
|
|
||||||
movs r0, 0
|
|
||||||
bl schedule_bg_copy_tilemap_to_vram
|
|
||||||
add sp, 0x10
|
|
||||||
pop {r4-r6}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
thumb_func_end sub_810EB30
|
|
||||||
|
|
||||||
.align 2, 0 @ Don't pad with nop.
|
|
||||||
+1
-10
@@ -3073,16 +3073,7 @@ gUnknown_8453094:: @ 8453094
|
|||||||
|
|
||||||
.section .rodata.8453F6C
|
.section .rodata.8453F6C
|
||||||
|
|
||||||
// item_pc.o
|
// mailbox_pc.o
|
||||||
gUnknown_8453F8C:: @ 8453F8C
|
|
||||||
.incbin "baserom.gba", 0x453F8C, 0xC
|
|
||||||
|
|
||||||
gUnknown_8453F98:: @ 8453F98
|
|
||||||
.incbin "baserom.gba", 0x453F98, 0x38
|
|
||||||
|
|
||||||
gUnknown_8453FD0:: @ 8453FD0
|
|
||||||
.incbin "baserom.gba", 0x453FD0, 0x18
|
|
||||||
|
|
||||||
gUnknown_8453FE8:: @ 8453FE8
|
gUnknown_8453FE8:: @ 8453FE8
|
||||||
.incbin "baserom.gba", 0x453FE8, 0x18
|
.incbin "baserom.gba", 0x453FE8, 0x18
|
||||||
|
|
||||||
|
|||||||
@@ -51,5 +51,6 @@ void sub_8120760(u8 taskId, u8 a1, s8 a2, s16 amount, TaskFunc followupFunc);
|
|||||||
void GetMonNickname(const struct Pokemon * mon, u8 * dest);
|
void GetMonNickname(const struct Pokemon * mon, u8 * dest);
|
||||||
void sub_81202F8(const u8 * src, u8 a1);
|
void sub_81202F8(const u8 * src, u8 a1);
|
||||||
bool8 sub_8120370(void);
|
bool8 sub_8120370(void);
|
||||||
|
void sub_811EA44(u8 a, u8 b, u8 c, u8 d, u8 messageId, TaskFunc task, MainCallback callback);
|
||||||
|
|
||||||
#endif // GUARD_PARTY_MENU_H
|
#endif // GUARD_PARTY_MENU_H
|
||||||
|
|||||||
@@ -155,6 +155,7 @@ extern const u8 gUnknown_84162FF[];
|
|||||||
extern const u8 gUnknown_841633F[];
|
extern const u8 gUnknown_841633F[];
|
||||||
extern const u8 gUnknown_8416655[];
|
extern const u8 gUnknown_8416655[];
|
||||||
extern const u8 gUnknown_841778A[];
|
extern const u8 gUnknown_841778A[];
|
||||||
|
extern const u8 gUnknown_84177AC[];
|
||||||
extern const u8 gUnknown_84177C5[];
|
extern const u8 gUnknown_84177C5[];
|
||||||
extern const u8 gUnknown_84178A7[];
|
extern const u8 gUnknown_84178A7[];
|
||||||
extern const u8 gUnknown_84178B5[];
|
extern const u8 gUnknown_84178B5[];
|
||||||
|
|||||||
+303
-2
@@ -24,6 +24,7 @@
|
|||||||
#include "string_util.h"
|
#include "string_util.h"
|
||||||
#include "strings.h"
|
#include "strings.h"
|
||||||
#include "task.h"
|
#include "task.h"
|
||||||
|
#include "text_window.h"
|
||||||
#include "constants/items.h"
|
#include "constants/items.h"
|
||||||
#include "constants/songs.h"
|
#include "constants/songs.h"
|
||||||
|
|
||||||
@@ -52,6 +53,7 @@ EWRAM_DATA u8 * gUnknown_203ADC0 = NULL;
|
|||||||
EWRAM_DATA struct ListMenuItem * gUnknown_203ADC4 = NULL;
|
EWRAM_DATA struct ListMenuItem * gUnknown_203ADC4 = NULL;
|
||||||
EWRAM_DATA void * gUnknown_203ADC8 = NULL;
|
EWRAM_DATA void * gUnknown_203ADC8 = NULL;
|
||||||
EWRAM_DATA struct ItemPcStaticResources gUnknown_203ADCC = {};
|
EWRAM_DATA struct ItemPcStaticResources gUnknown_203ADCC = {};
|
||||||
|
EWRAM_DATA u8 gUnknown_203ADD8[3] = {};
|
||||||
|
|
||||||
extern const struct CompressedSpriteSheet gUnknown_83D4240;
|
extern const struct CompressedSpriteSheet gUnknown_83D4240;
|
||||||
extern const struct CompressedSpritePalette gUnknown_83D4248;
|
extern const struct CompressedSpritePalette gUnknown_83D4248;
|
||||||
@@ -89,15 +91,19 @@ void sub_810E418(u8 taskId);
|
|||||||
void sub_810E4F4(u8 taskId);
|
void sub_810E4F4(u8 taskId);
|
||||||
void sub_810E548(u8 taskId);
|
void sub_810E548(u8 taskId);
|
||||||
void sub_810E578(u8 taskId);
|
void sub_810E578(u8 taskId);
|
||||||
void sub_810E5E0(u16 itemId);
|
void sub_810E5E0(u16 slotId);
|
||||||
void sub_810E6D8(u8 taskId);
|
void sub_810E6D8(u8 taskId);
|
||||||
void sub_810E79C(u8 taskId);
|
void sub_810E79C(u8 taskId);
|
||||||
|
void sub_810E7F8(void);
|
||||||
|
void sub_810E838(void);
|
||||||
|
void sub_810E848(u8 taskId);
|
||||||
void sub_810E8A0(u8 taskId);
|
void sub_810E8A0(u8 taskId);
|
||||||
void sub_810E8F0(void);
|
void sub_810E8F0(void);
|
||||||
void sub_810EA34(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIdx);
|
void sub_810EA34(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIdx);
|
||||||
void sub_810EA9C(u8 windowId);
|
void sub_810EA9C(u8 windowId);
|
||||||
u8 sub_810EAB4(u8 idx);
|
u8 sub_810EAB4(u8 idx);
|
||||||
void sub_810EAF0(u8 idx);
|
void sub_810EAF0(u8 idx);
|
||||||
|
void sub_810EB30(u8 taskId, const u8 * str, TaskFunc taskFunc);
|
||||||
|
|
||||||
const struct BgTemplate gUnknown_8453F6C[2] = {
|
const struct BgTemplate gUnknown_8453F6C[2] = {
|
||||||
{
|
{
|
||||||
@@ -119,6 +125,93 @@ const struct MenuAction gUnknown_8453F74[] = {
|
|||||||
{gFameCheckerText_Cancel, {.void_u8 = sub_810E8A0}}
|
{gFameCheckerText_Cancel, {.void_u8 = sub_810E8A0}}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const struct TextColor gUnknown_8453F8C[] = {
|
||||||
|
{0, 1, 2},
|
||||||
|
{0, 2, 3},
|
||||||
|
{0, 3, 2},
|
||||||
|
{0, 10, 2}
|
||||||
|
};
|
||||||
|
|
||||||
|
const struct WindowTemplate gUnknown_8453F98[] = {
|
||||||
|
{
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x07,
|
||||||
|
.tilemapTop = 0x01,
|
||||||
|
.width = 0x13,
|
||||||
|
.height = 0x0c,
|
||||||
|
.paletteNum = 0x0f,
|
||||||
|
.baseBlock = 0x02bf
|
||||||
|
}, {
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x05,
|
||||||
|
.tilemapTop = 0x0e,
|
||||||
|
.width = 0x19,
|
||||||
|
.height = 0x06,
|
||||||
|
.paletteNum = 0x0d,
|
||||||
|
.baseBlock = 0x0229
|
||||||
|
}, {
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x01,
|
||||||
|
.tilemapTop = 0x01,
|
||||||
|
.width = 0x05,
|
||||||
|
.height = 0x04,
|
||||||
|
.paletteNum = 0x0f,
|
||||||
|
.baseBlock = 0x0215
|
||||||
|
}, {
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x18,
|
||||||
|
.tilemapTop = 0x0f,
|
||||||
|
.width = 0x05,
|
||||||
|
.height = 0x04,
|
||||||
|
.paletteNum = 0x0f,
|
||||||
|
.baseBlock = 0x0201
|
||||||
|
}, {
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x16,
|
||||||
|
.tilemapTop = 0x0d,
|
||||||
|
.width = 0x07,
|
||||||
|
.height = 0x06,
|
||||||
|
.paletteNum = 0x0f,
|
||||||
|
.baseBlock = 0x01d7
|
||||||
|
}, {
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x02,
|
||||||
|
.tilemapTop = 0x0f,
|
||||||
|
.width = 0x1a,
|
||||||
|
.height = 0x04,
|
||||||
|
.paletteNum = 0x0b,
|
||||||
|
.baseBlock = 0x016f
|
||||||
|
}, DUMMY_WIN_TEMPLATE
|
||||||
|
};
|
||||||
|
|
||||||
|
const struct WindowTemplate gUnknown_8453FD0[] = {
|
||||||
|
{
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x06,
|
||||||
|
.tilemapTop = 0x0f,
|
||||||
|
.width = 0x0e,
|
||||||
|
.height = 0x04,
|
||||||
|
.paletteNum = 0x0c,
|
||||||
|
.baseBlock = 0x0137
|
||||||
|
}, {
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x06,
|
||||||
|
.tilemapTop = 0x0f,
|
||||||
|
.width = 0x10,
|
||||||
|
.height = 0x04,
|
||||||
|
.paletteNum = 0x0c,
|
||||||
|
.baseBlock = 0x0137
|
||||||
|
}, {
|
||||||
|
.bg = 0,
|
||||||
|
.tilemapLeft = 0x06,
|
||||||
|
.tilemapTop = 0x0f,
|
||||||
|
.width = 0x17,
|
||||||
|
.height = 0x04,
|
||||||
|
.paletteNum = 0x0c,
|
||||||
|
.baseBlock = 0x009b
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
void sub_810D3F4(u8 a0, MainCallback callback)
|
void sub_810D3F4(u8 a0, MainCallback callback)
|
||||||
{
|
{
|
||||||
u8 i;
|
u8 i;
|
||||||
@@ -781,7 +874,7 @@ void sub_810E3A4(u8 taskId)
|
|||||||
{
|
{
|
||||||
s16 * data = gTasks[taskId].data;
|
s16 * data = gTasks[taskId].data;
|
||||||
|
|
||||||
sub_810F4D8(4, 0);
|
sub_810F4D8(4, FALSE);
|
||||||
sub_810EAF0(0);
|
sub_810EAF0(0);
|
||||||
ClearWindowTilemap(4);
|
ClearWindowTilemap(4);
|
||||||
data[8] = 1;
|
data[8] = 1;
|
||||||
@@ -847,3 +940,211 @@ void sub_810E548(u8 taskId)
|
|||||||
sub_810E578(taskId);
|
sub_810E578(taskId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void sub_810E578(u8 taskId)
|
||||||
|
{
|
||||||
|
s16 * data = gTasks[taskId].data;
|
||||||
|
|
||||||
|
sub_810EAF0(2);
|
||||||
|
PutWindowTilemap(1);
|
||||||
|
DestroyListMenu(data[0], &gUnknown_203ADCC.field_4, &gUnknown_203ADCC.field_6);
|
||||||
|
sub_810DDA4();
|
||||||
|
sub_810DBF0();
|
||||||
|
sub_810D878();
|
||||||
|
data[0] = ListMenuInit(&gMultiuseListMenuTemplate, gUnknown_203ADCC.field_4, gUnknown_203ADCC.field_6);
|
||||||
|
schedule_bg_copy_tilemap_to_vram(0);
|
||||||
|
sub_810DFB0(taskId);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E5E0(u16 slotId)
|
||||||
|
{
|
||||||
|
u16 itemId = ItemPc_GetItemIdBySlotId(slotId);
|
||||||
|
|
||||||
|
CopyItemName(itemId, gStringVar1);
|
||||||
|
StringExpandPlaceholders(gStringVar4, gUnknown_84177AC);
|
||||||
|
AddTextPrinterParameterized(sub_810EAB4(1), 2, gStringVar4, 0, 2, 0, NULL);
|
||||||
|
ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, 3);
|
||||||
|
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||||
|
sub_810EA9C(3);
|
||||||
|
sub_810EA34(3, 0, gStringVar4, 8, 10, 1, 0, 0, 1);
|
||||||
|
schedule_bg_copy_tilemap_to_vram(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E670(s16 quantity)
|
||||||
|
{
|
||||||
|
FillWindowPixelRect(3, 0x11, 10, 10, 28, 12);
|
||||||
|
ConvertIntToDecimalStringN(gStringVar1, quantity, STR_CONV_MODE_LEADING_ZEROS, 3);
|
||||||
|
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||||
|
sub_810EA34(3, 0, gStringVar4, 8, 10, 1, 0, 0, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E6D8(u8 taskId)
|
||||||
|
{
|
||||||
|
s16 * data = gTasks[taskId].data;
|
||||||
|
|
||||||
|
if (sub_80BF848(&data[8], data[2]) == TRUE)
|
||||||
|
sub_810E670(data[8]);
|
||||||
|
else if (JOY_NEW(A_BUTTON))
|
||||||
|
{
|
||||||
|
PlaySE(SE_SELECT);
|
||||||
|
sub_810EAF0(1);
|
||||||
|
ClearWindowTilemap(3);
|
||||||
|
PutWindowTilemap(0);
|
||||||
|
sub_810DAB4(data[0], 1);
|
||||||
|
schedule_bg_copy_tilemap_to_vram(0);
|
||||||
|
sub_810DBD0();
|
||||||
|
sub_810E418(taskId);
|
||||||
|
}
|
||||||
|
else if (JOY_NEW(B_BUTTON))
|
||||||
|
{
|
||||||
|
PlaySE(SE_SELECT);
|
||||||
|
sub_810F4D8(3, FALSE);
|
||||||
|
sub_810EAF0(1);
|
||||||
|
ClearWindowTilemap(3);
|
||||||
|
PutWindowTilemap(0);
|
||||||
|
PutWindowTilemap(1);
|
||||||
|
sub_810DAB4(data[0], 1);
|
||||||
|
schedule_bg_copy_tilemap_to_vram(0);
|
||||||
|
sub_810DBD0();
|
||||||
|
sub_810DFB0(taskId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E79C(u8 taskId)
|
||||||
|
{
|
||||||
|
if (CalculatePlayerPartyCount() == 0)
|
||||||
|
{
|
||||||
|
sub_810F4D8(4, FALSE);
|
||||||
|
sub_810EAF0(0);
|
||||||
|
ClearWindowTilemap(4);
|
||||||
|
PutWindowTilemap(0);
|
||||||
|
sub_810EB30(taskId, gText_ThereIsNoPokemon, sub_810E848);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
gUnknown_203ADBC->field_00 = sub_810E7F8;
|
||||||
|
sub_810DC8C(taskId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E7F8(void)
|
||||||
|
{
|
||||||
|
sub_811EA44(0, 0, 6, 0, 6, sub_811FB28, sub_810E838);
|
||||||
|
gUnknown_203B0A0.unkC = ItemPc_GetItemIdBySlotId(sub_810DD54());
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E838(void)
|
||||||
|
{
|
||||||
|
sub_810D3F4(1, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E848(u8 taskId)
|
||||||
|
{
|
||||||
|
s16 * data = gTasks[taskId].data;
|
||||||
|
|
||||||
|
if (JOY_NEW(A_BUTTON))
|
||||||
|
{
|
||||||
|
PlaySE(SE_SELECT);
|
||||||
|
sub_810F260(5, 0);
|
||||||
|
ClearWindowTilemap(5);
|
||||||
|
PutWindowTilemap(1);
|
||||||
|
sub_810DAB4(data[0], 1);
|
||||||
|
schedule_bg_copy_tilemap_to_vram(0);
|
||||||
|
sub_810DFB0(taskId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E8A0(u8 taskId)
|
||||||
|
{
|
||||||
|
s16 * data = gTasks[taskId].data;
|
||||||
|
|
||||||
|
sub_810F4D8(4, FALSE);
|
||||||
|
sub_810EAF0(0);
|
||||||
|
ClearWindowTilemap(4);
|
||||||
|
PutWindowTilemap(0);
|
||||||
|
PutWindowTilemap(1);
|
||||||
|
sub_810DAB4(data[0], 1);
|
||||||
|
schedule_bg_copy_tilemap_to_vram(0);
|
||||||
|
sub_810DFB0(taskId);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E8F0(void)
|
||||||
|
{
|
||||||
|
u8 i;
|
||||||
|
|
||||||
|
InitWindows(gUnknown_8453F98);
|
||||||
|
DeactivateAllTextPrinters();
|
||||||
|
sub_815001C(0, 0x3C0, 0xE0);
|
||||||
|
sub_814FF2C(0, 0x3A3, 0xC0);
|
||||||
|
sub_814FEAC(0, 0x3AC, 0xB0);
|
||||||
|
LoadPalette(stdpal_get(2), 0xD0, 0x20);
|
||||||
|
LoadPalette(gTMCaseMainWindowPalette, 0xF0, 0x20);
|
||||||
|
for (i = 0; i < 3; i++)
|
||||||
|
{
|
||||||
|
FillWindowPixelBuffer(i, 0x00);
|
||||||
|
PutWindowTilemap(i);
|
||||||
|
}
|
||||||
|
schedule_bg_copy_tilemap_to_vram(0);
|
||||||
|
for (i = 0; i < 3; i++)
|
||||||
|
gUnknown_203ADD8[i] = 0xFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810E984(u8 windowId, const u8 * string, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed)
|
||||||
|
{
|
||||||
|
struct TextPrinterTemplate template;
|
||||||
|
|
||||||
|
template.currentChar = string;
|
||||||
|
template.windowId = windowId;
|
||||||
|
template.fontId = 3;
|
||||||
|
template.x = x;
|
||||||
|
template.y = y;
|
||||||
|
template.currentX = x;
|
||||||
|
template.currentY = y;
|
||||||
|
template.fgColor = 2;
|
||||||
|
template.bgColor = 0;
|
||||||
|
template.shadowColor = 3;
|
||||||
|
template.unk = GetFontAttribute(3, FONTATTR_UNKNOWN);
|
||||||
|
template.letterSpacing = letterSpacing + GetFontAttribute(3, FONTATTR_LETTER_SPACING);
|
||||||
|
template.lineSpacing = lineSpacing + GetFontAttribute(3, FONTATTR_LINE_SPACING);
|
||||||
|
AddTextPrinter(&template, speed, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810EA34(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIdx)
|
||||||
|
{
|
||||||
|
AddTextPrinterParameterized4(windowId, fontId, x, y, letterSpacing, lineSpacing, &gUnknown_8453F8C[colorIdx], speed, str);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810EA9C(u8 windowId)
|
||||||
|
{
|
||||||
|
SetWindowBorderStyle(windowId, FALSE, 0x3C0, 0x0E);
|
||||||
|
}
|
||||||
|
|
||||||
|
u8 sub_810EAB4(u8 idx)
|
||||||
|
{
|
||||||
|
if (gUnknown_203ADD8[idx] == 0xFF)
|
||||||
|
{
|
||||||
|
gUnknown_203ADD8[idx] = AddWindow(&gUnknown_8453FD0[idx]);
|
||||||
|
SetWindowBorderStyle(gUnknown_203ADD8[idx], TRUE, 0x3A3, 0x0C);
|
||||||
|
}
|
||||||
|
|
||||||
|
return gUnknown_203ADD8[idx];
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810EAF0(u8 idx)
|
||||||
|
{
|
||||||
|
sub_810F4D8(gUnknown_203ADD8[idx], 0);
|
||||||
|
ClearWindowTilemap(gUnknown_203ADD8[idx]);
|
||||||
|
RemoveWindow(gUnknown_203ADD8[idx]);
|
||||||
|
gUnknown_203ADD8[idx] = 0xFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
u8 sub_810EB20(u8 idx)
|
||||||
|
{
|
||||||
|
return gUnknown_203ADD8[idx];
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_810EB30(u8 taskId, const u8 * str, TaskFunc taskFunc)
|
||||||
|
{
|
||||||
|
DisplayMessageAndContinueTask(taskId, 5, 0x3AC, 0x0B, 2, GetTextSpeedSetting(), str, taskFunc);
|
||||||
|
schedule_bg_copy_tilemap_to_vram(0);
|
||||||
|
}
|
||||||
|
|||||||
+1
-3
@@ -1321,9 +1321,7 @@ gSpecialVar_ItemId: @ 203AD30
|
|||||||
.align 2
|
.align 2
|
||||||
.include "src/item_pc.o"
|
.include "src/item_pc.o"
|
||||||
|
|
||||||
gUnknown_203ADD8: @ 203ADD8
|
.align 2
|
||||||
.space 0x4
|
|
||||||
|
|
||||||
gUnknown_203ADDC: @ 203ADDC
|
gUnknown_203ADDC: @ 203ADDC
|
||||||
.space 0x4
|
.space 0x4
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user