last ov01 splitting move for now

This commit is contained in:
PikalaxALT 2022-03-24 13:20:41 -04:00
parent 0e79196363
commit 7e78d40be6
32 changed files with 20326 additions and 20242 deletions

View File

@ -418,7 +418,7 @@ sub_0205C500: ; 0x0205C500
bl PlayerAvatar_SetState
add r0, r5, #0
add r1, r6, #0
bl sub_0205C720
bl PlayerAvatar_SetGender
add r0, r5, #0
mov r1, #0
bl PlayerAvatar_SetTransitionFlags
@ -725,17 +725,17 @@ PlayerAvatar_GetTransitionFlags: ; 0x0205C71C
bx lr
thumb_func_end PlayerAvatar_GetTransitionFlags
thumb_func_start sub_0205C720
sub_0205C720: ; 0x0205C720
thumb_func_start PlayerAvatar_SetGender
PlayerAvatar_SetGender: ; 0x0205C720
str r1, [r0, #0x1c]
bx lr
thumb_func_end sub_0205C720
thumb_func_end PlayerAvatar_SetGender
thumb_func_start sub_0205C724
sub_0205C724: ; 0x0205C724
thumb_func_start PlayerAvatar_GetGender
PlayerAvatar_GetGender: ; 0x0205C724
ldr r0, [r0, #0x1c]
bx lr
thumb_func_end sub_0205C724
thumb_func_end PlayerAvatar_GetGender
thumb_func_start sub_0205C728
sub_0205C728: ; 0x0205C728

View File

@ -690,17 +690,17 @@
.word \arg1
.endm
.macro scrcmd_113 arg0, arg1
.macro show_money_box arg0, arg1
.short 113
.short \arg0
.short \arg1
.endm
.macro scrcmd_114
.macro hide_money_box
.short 114
.endm
.macro scrcmd_115
.macro update_money_box
.short 115
.endm

View File

@ -2090,8 +2090,8 @@ ov01_021EEA44: ; 0x021EEA44
bx lr
thumb_func_end ov01_021EEA44
thumb_func_start ov01_021EEA90
ov01_021EEA90: ; 0x021EEA90
thumb_func_start Fsys_ShowMoneyBox
Fsys_ShowMoneyBox: ; 0x021EEA90
push {r4, r5, r6, r7, lr}
sub sp, #0x14
add r5, r0, #0
@ -2156,17 +2156,17 @@ ov01_021EEA90: ; 0x021EEA90
bl String_dtor
add r0, r5, #0
add r1, r4, #0
bl ov01_021EEB4C
bl MoneyBoxSys_Update
add r0, r4, #0
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
_021EEB30: .word 0x000003D9
_021EEB34: .word 0x000001B3
thumb_func_end ov01_021EEA90
thumb_func_end Fsys_ShowMoneyBox
thumb_func_start ov01_021EEB38
ov01_021EEB38: ; 0x021EEB38
thumb_func_start MoneyBoxSys_Delete
MoneyBoxSys_Delete: ; 0x021EEB38
push {r4, lr}
add r4, r0, #0
mov r1, #0
@ -2175,10 +2175,10 @@ ov01_021EEB38: ; 0x021EEB38
mov r1, #1
bl WindowArray_dtor
pop {r4, pc}
thumb_func_end ov01_021EEB38
thumb_func_end MoneyBoxSys_Delete
thumb_func_start ov01_021EEB4C
ov01_021EEB4C: ; 0x021EEB4C
thumb_func_start MoneyBoxSys_Update
MoneyBoxSys_Update: ; 0x021EEB4C
push {r4, r5, r6, r7, lr}
sub sp, #0x14
add r7, r0, #0
@ -2252,7 +2252,7 @@ ov01_021EEB4C: ; 0x021EEB4C
pop {r4, r5, r6, r7, pc}
nop
_021EEBFC: .word 0x000001B3
thumb_func_end ov01_021EEB4C
thumb_func_end MoneyBoxSys_Update
thumb_func_start ov01_021EEC00
ov01_021EEC00: ; 0x021EEC00

View File

@ -54,7 +54,7 @@ _021F1B34: .word sPlayerAvatarBitUpdateFuncs
ov01_021F1B38: ; 0x021F1B38
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #0
bl sub_0205C898
@ -83,7 +83,7 @@ _021F1B6C:
ov01_021F1B78: ; 0x021F1B78
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #1
bl sub_0205C898
@ -116,7 +116,7 @@ ov01_021F1BC0: ; 0x021F1BC0
push {r3, r4, r5, r6, lr}
sub sp, #4
add r5, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #2
bl sub_0205C898
@ -163,7 +163,7 @@ _021F1BF6:
ov01_021F1C30: ; 0x021F1C30
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #3
bl sub_0205C898
@ -201,7 +201,7 @@ _021F1C78: .word sub_0205CA4C
ov01_021F1C7C: ; 0x021F1C7C
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #5
bl sub_0205C898
@ -216,7 +216,7 @@ ov01_021F1C7C: ; 0x021F1C7C
ov01_021F1C98: ; 0x021F1C98
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #7
bl sub_0205C898
@ -231,7 +231,7 @@ ov01_021F1C98: ; 0x021F1C98
ov01_021F1CB4: ; 0x021F1CB4
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #8
bl sub_0205C898
@ -246,7 +246,7 @@ ov01_021F1CB4: ; 0x021F1CB4
ov01_021F1CD0: ; 0x021F1CD0
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #9
bl sub_0205C898
@ -261,7 +261,7 @@ ov01_021F1CD0: ; 0x021F1CD0
ov01_021F1CEC: ; 0x021F1CEC
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #0xa
bl sub_0205C898
@ -276,7 +276,7 @@ ov01_021F1CEC: ; 0x021F1CEC
ov01_021F1D08: ; 0x021F1D08
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #0xb
bl sub_0205C898
@ -291,7 +291,7 @@ ov01_021F1D08: ; 0x021F1D08
ov01_021F1D24: ; 0x021F1D24
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #0xc
bl sub_0205C898
@ -306,7 +306,7 @@ ov01_021F1D24: ; 0x021F1D24
ov01_021F1D40: ; 0x021F1D40
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #6
bl sub_0205C898
@ -321,7 +321,7 @@ ov01_021F1D40: ; 0x021F1D40
ov01_021F1D5C: ; 0x021F1D5C
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #0xd
bl sub_0205C898
@ -336,7 +336,7 @@ ov01_021F1D5C: ; 0x021F1D5C
ov01_021F1D78: ; 0x021F1D78
push {r4, lr}
add r4, r0, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #0xe
bl sub_0205C898
@ -978,7 +978,7 @@ _021F2274:
cmp r0, #0xa
ble _021F2324
ldr r0, [r4, #0x20]
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #0
bl sub_0205C898
@ -1017,7 +1017,7 @@ _021F22C2:
mov r1, #1
bl ov01_021FE9F4
ldr r0, [r4, #0x20]
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #2
bl sub_0205C898
@ -1146,7 +1146,7 @@ _021F23D0:
b _021F24F0
_021F23DC:
ldr r0, [r4, #0xc]
bl sub_0205C724
bl PlayerAvatar_GetGender
add r1, r0, #0
mov r0, #0
bl sub_0205C898
@ -2773,7 +2773,7 @@ ov01_021F3040: ; 0x021F3040
str r2, [r4]
str r1, [r4, #8]
ldr r0, [r0, #0x40]
bl sub_0205C724
bl PlayerAvatar_GetGender
str r0, [r4, #4]
pop {r4, pc}
thumb_func_end ov01_021F3040

File diff suppressed because it is too large Load Diff

413
asm/overlay_01_021FCE98.s Normal file
View File

@ -0,0 +1,413 @@
#include "constants/sndseq.h"
#include "constants/moves.h"
#include "constants/std_script.h"
#include "constants/species.h"
#include "constants/sprites.h"
#include "constants/maps.h"
#include "constants/mmodel.h"
#include "constants/items.h"
#include "msgdata/msg/msg_0096_D31R0201.h"
#include "msgdata/msg/msg_0066_D23R0102.h"
.include "asm/macros.inc"
.include "global.inc"
.text
thumb_func_start ov01_021FCE98
ov01_021FCE98: ; 0x021FCE98
push {r3, r4, r5, r6, r7, lr}
str r0, [sp]
bl TaskManager_GetSys
add r6, r0, #0
ldr r0, [sp]
bl TaskManager_GetEnv
add r7, r0, #0
ldr r0, [sp]
bl TaskManager_GetStatePtr
add r4, r0, #0
ldr r0, [r4]
ldr r5, [r7, #4]
cmp r0, #7
bls _021FCEBC
b _021FCFDE
_021FCEBC:
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_021FCEC8: ; jump table
.short _021FCED8 - _021FCEC8 - 2 ; case 0
.short _021FCEF4 - _021FCEC8 - 2 ; case 1
.short _021FCF4E - _021FCEC8 - 2 ; case 2
.short _021FCF6A - _021FCEC8 - 2 ; case 3
.short _021FCF80 - _021FCEC8 - 2 ; case 4
.short _021FCFAE - _021FCEC8 - 2 ; case 5
.short _021FCFBC - _021FCEC8 - 2 ; case 6
.short _021FCFCE - _021FCEC8 - 2 ; case 7
_021FCED8:
ldr r6, [r5]
add r0, r5, #0
bl FreeToHeap
mov r0, #0xb
mov r1, #0xc
bl AllocFromHeapAtEnd
str r0, [r7, #4]
str r6, [r0, #8]
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
b _021FCFDE
_021FCEF4:
bl GetHoneySweetScentWorkSize
add r7, r0, #0
mov r0, #0xb
add r1, r7, #0
bl AllocFromHeapAtEnd
str r0, [r5, #4]
mov r1, #0
add r2, r7, #0
bl memset
ldr r0, [r6, #0x40]
bl PlayerAvatar_GetState
sub r0, r0, #1
cmp r0, #1 ; walking or biking?
bhi _021FCF20
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
b _021FCFDE
_021FCF20:
add r0, r6, #0
bl ov01_022062CC
ldr r1, [r5, #8]
cmp r1, r0
bne _021FCF46
add r0, r6, #0
bl sub_02069FB0
cmp r0, #0
beq _021FCF46
ldr r0, [sp]
ldr r1, _021FCFE4 ; =ov01_02205A60
mov r2, #0
bl TaskManager_Call
mov r0, #4
str r0, [r4]
b _021FCFDE
_021FCF46:
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
b _021FCFDE
_021FCF4E:
ldr r0, [r6, #0x40]
bl PlayerAvatar_GetGender
add r3, r0, #0
ldr r2, [r7]
add r0, r6, #0
mov r1, #0
bl ov02_02249458
str r0, [r5]
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
b _021FCFDE
_021FCF6A:
ldr r0, [r5]
bl ov02_0224953C
cmp r0, #0
beq _021FCFDE
ldr r0, [r5]
bl ov02_02249548
mov r0, #6
str r0, [r4]
b _021FCFDE
_021FCF80:
add r0, r6, #0
mov r1, #0xc
bl ov02_02250780
cmp r0, #0
beq _021FCF9C
mov r0, #0x42
lsl r0, r0, #2
ldr r0, [r6, r0]
mov r1, #1
mov r5, #2
bl FsysUnkSub108_AddMonMood
b _021FCF9E
_021FCF9C:
mov r5, #1
_021FCF9E:
add r0, r6, #0
add r1, r5, #0
bl ov02_022507B4
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
b _021FCFDE
_021FCFAE:
add r0, r6, #0
bl ov01_021FCFEC
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
b _021FCFDE
_021FCFBC:
ldr r0, [sp]
ldr r1, _021FCFE8 ; =Task_HoneyOrSweetScent
ldr r2, [r5, #4]
bl TaskManager_Call
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
b _021FCFDE
_021FCFCE:
add r0, r5, #0
bl FreeToHeap
add r0, r7, #0
bl FreeToHeap
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
_021FCFDE:
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
nop
_021FCFE4: .word ov01_02205A60
_021FCFE8: .word Task_HoneyOrSweetScent
thumb_func_end ov01_021FCE98
thumb_func_start ov01_021FCFEC
ov01_021FCFEC: ; 0x021FCFEC
push {r3, r4, r5, lr}
add r5, r0, #0
mov r0, #4
mov r1, #0xd4
bl AllocFromHeapAtEnd
add r4, r0, #0
mov r0, #4
add r1, r5, #0
add r2, r4, #0
bl ov01_021FD064
ldr r0, [r5, #0x10]
ldr r1, _021FD010 ; =ov01_021FD014
add r2, r4, #0
bl TaskManager_Call
pop {r3, r4, r5, pc}
.balign 4, 0
_021FD010: .word ov01_021FD014
thumb_func_end ov01_021FCFEC
thumb_func_start ov01_021FD014
ov01_021FD014: ; 0x021FD014
push {r3, r4, r5, lr}
add r4, r0, #0
bl TaskManager_GetEnv
add r5, r0, #0
add r0, r4, #0
bl TaskManager_GetStatePtr
add r4, r0, #0
ldr r0, [r4]
cmp r0, #0
beq _021FD032
cmp r0, #1
beq _021FD050
b _021FD060
_021FD032:
add r0, r5, #0
add r0, #0x20
mov r1, #3
bl ov01_021FD154
cmp r0, #0
beq _021FD046
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
_021FD046:
add r5, #0x5c
add r0, r5, #0
bl ov01_021FBF68
b _021FD060
_021FD050:
add r0, r5, #0
bl ov01_021FD128
add r0, r5, #0
bl FreeToHeap
mov r0, #1
pop {r3, r4, r5, pc}
_021FD060:
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end ov01_021FD014
thumb_func_start ov01_021FD064
ov01_021FD064: ; 0x021FD064
push {r3, r4, r5, r6, lr}
sub sp, #0x14
add r4, r2, #0
add r5, r0, #0
add r6, r1, #0
add r0, r4, #0
add r1, r5, #0
mov r2, #0x20
bl GF_ExpHeap_FndInitAllocator
add r0, r4, #0
add r0, #0x10
mov r1, #0x86
mov r2, #0x17
add r3, r5, #0
bl ov01_021FBCD8
add r0, r4, #0
add r1, r4, #0
str r5, [sp]
add r0, #0x20
add r1, #0x10
mov r2, #0x86
mov r3, #0x15
str r4, [sp, #4]
bl ov01_021FBE44
add r0, r4, #0
add r1, r4, #0
str r5, [sp]
add r0, #0x34
add r1, #0x10
mov r2, #0x86
mov r3, #0x16
str r4, [sp, #4]
bl ov01_021FBE44
add r0, r4, #0
add r1, r4, #0
str r5, [sp]
add r0, #0x48
add r1, #0x10
mov r2, #0x86
mov r3, #0x14
str r4, [sp, #4]
bl ov01_021FBE44
add r0, r4, #0
add r1, r4, #0
add r0, #0x5c
add r1, #0x10
bl ov01_021FBF2C
add r0, r4, #0
add r1, r4, #0
add r0, #0x5c
add r1, #0x20
bl ov01_021FBF50
add r0, r4, #0
add r1, r4, #0
add r0, #0x5c
add r1, #0x34
bl ov01_021FBF50
add r0, r4, #0
add r1, r4, #0
add r0, #0x5c
add r1, #0x48
bl ov01_021FBF50
add r0, r4, #0
add r0, #0x20
mov r1, #3
mov r2, #0
bl ov01_021FD190
add r0, r6, #0
bl FollowingPokemon_GetMapObject
add r1, sp, #8
bl MapObject_GetPositionVec
add r0, r4, #0
ldr r1, [sp, #8]
ldr r2, [sp, #0xc]
ldr r3, [sp, #0x10]
add r0, #0x5c
bl ov01_021FC00C
add r4, #0x5c
add r0, r4, #0
mov r1, #1
bl ov01_021FC004
add sp, #0x14
pop {r3, r4, r5, r6, pc}
.balign 4, 0
thumb_func_end ov01_021FD064
thumb_func_start ov01_021FD128
ov01_021FD128: ; 0x021FD128
push {r4, lr}
add r4, r0, #0
add r1, r4, #0
add r0, #0x48
bl ov01_021FBE80
add r0, r4, #0
add r0, #0x34
add r1, r4, #0
bl ov01_021FBE80
add r0, r4, #0
add r0, #0x20
add r1, r4, #0
bl ov01_021FBE80
add r4, #0x10
add r0, r4, #0
bl ov01_021FBDA8
pop {r4, pc}
.balign 4, 0
thumb_func_end ov01_021FD128
thumb_func_start ov01_021FD154
ov01_021FD154: ; 0x021FD154
push {r3, r4, r5, r6, r7, lr}
mov r5, #0
add r6, r1, #0
add r7, r0, #0
add r4, r5, #0
cmp r6, #0
bls _021FD184
_021FD162:
mov r0, #0x14
mul r0, r4
mov r1, #1
add r0, r7, r0
lsl r1, r1, #0xc
bl ov01_021FBEE4
cmp r0, #0
beq _021FD17A
add r0, r5, #1
lsl r0, r0, #0x18
lsr r5, r0, #0x18
_021FD17A:
add r0, r4, #1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
cmp r4, r6
blo _021FD162
_021FD184:
cmp r5, r6
bne _021FD18C
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
_021FD18C:
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end ov01_021FD154
thumb_func_start ov01_021FD190
ov01_021FD190: ; 0x021FD190
push {r3, r4, r5, r6, r7, lr}
add r5, r1, #0
add r6, r0, #0
add r7, r2, #0
mov r4, #0
cmp r5, #0
bls _021FD1B4
_021FD19E:
mov r0, #0x14
mul r0, r4
add r0, r6, r0
add r1, r7, #0
bl ov01_021FBF20
add r0, r4, #1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
cmp r4, r5
blo _021FD19E
_021FD1B4:
pop {r3, r4, r5, r6, r7, pc}
.balign 4, 0
thumb_func_end ov01_021FD190

12017
asm/overlay_01_021FD1B8.s Normal file

File diff suppressed because it is too large Load Diff

6734
asm/overlay_01_022031C0.s Normal file

File diff suppressed because it is too large Load Diff

View File

@ -13920,7 +13920,7 @@ ov02_0224C4B4: ; 0x0224C4B4
add r5, r1, #0
ldr r0, [r5, #0x40]
add r4, r2, #0
bl sub_0205C724
bl PlayerAvatar_GetGender
add r3, r0, #0
ldr r2, [r4, #0x28]
add r0, r5, #0

View File

@ -147,9 +147,9 @@ gScriptCmdTable:
.word ScrCmd_AddMoney ; 110
.word ScrCmd_SubMoneyImmediate ; 111
.word ScrCmd_HasEnoughMoneyImmediate ; 112
.word ScrCmd_113 ; 113
.word ScrCmd_114 ; 114
.word ScrCmd_115 ; 115
.word ScrCmd_ShowMoneyBox ; 113
.word ScrCmd_HideMoneyBox ; 114
.word ScrCmd_UpdateMoneyBox ; 115
.word ScrCmd_116 ; 116
.word ScrCmd_117 ; 117
.word ScrCmd_118 ; 118
@ -6013,7 +6013,7 @@ ScrCmd_183: ; 0x02043724
add r0, #0x80
ldr r0, [r0]
ldr r0, [r0, #0x40]
bl sub_0205C724
bl PlayerAvatar_GetGender
add r3, r0, #0
add r0, r5, #0
add r0, #0x80

84
asm/scrcmd_moneybox.s Normal file
View File

@ -0,0 +1,84 @@
#include "constants/sndseq.h"
#include "constants/moves.h"
#include "constants/std_script.h"
#include "constants/species.h"
#include "constants/sprites.h"
#include "constants/maps.h"
#include "constants/mmodel.h"
#include "constants/items.h"
#include "msgdata/msg/msg_0096_D31R0201.h"
#include "msgdata/msg/msg_0066_D23R0102.h"
.include "asm/macros.inc"
.include "global.inc"
.text
thumb_func_start ScrCmd_ShowMoneyBox
ScrCmd_ShowMoneyBox: ; 0x02203138
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r5, [r1]
bl ScriptReadHalfword
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r6, r0, #0
add r0, r4, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r7, r0, #0
add r0, r5, #0
mov r1, #0x28
bl FieldSysGetAttrAddr
lsl r1, r6, #0x18
lsl r2, r7, #0x18
add r4, #0x80
add r5, r0, #0
ldr r0, [r4]
lsr r1, r1, #0x18
lsr r2, r2, #0x18
bl Fsys_ShowMoneyBox
str r0, [r5]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end ScrCmd_ShowMoneyBox
thumb_func_start ScrCmd_HideMoneyBox
ScrCmd_HideMoneyBox: ; 0x02203188
push {r3, lr}
add r0, #0x80
ldr r0, [r0]
mov r1, #0x28
bl FieldSysGetAttrAddr
ldr r0, [r0]
bl MoneyBoxSys_Delete
mov r0, #0
pop {r3, pc}
.balign 4, 0
thumb_func_end ScrCmd_HideMoneyBox
thumb_func_start ScrCmd_UpdateMoneyBox
ScrCmd_UpdateMoneyBox: ; 0x022031A0
push {r4, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0]
mov r1, #0x28
bl FieldSysGetAttrAddr
add r1, r0, #0
add r4, #0x80
ldr r0, [r4]
ldr r1, [r1]
bl MoneyBoxSys_Update
mov r0, #0
pop {r4, pc}
.balign 4, 0
thumb_func_end ScrCmd_UpdateMoneyBox

915
asm/scrcmd_move_tutor.s Normal file
View File

@ -0,0 +1,915 @@
#include "constants/sndseq.h"
#include "constants/moves.h"
#include "constants/std_script.h"
#include "constants/species.h"
#include "constants/sprites.h"
#include "constants/maps.h"
#include "constants/mmodel.h"
#include "constants/items.h"
#include "msgdata/msg/msg_0096_D31R0201.h"
#include "msgdata/msg/msg_0066_D23R0102.h"
.include "asm/macros.inc"
.include "global.inc"
.text
thumb_func_start ScrCmd_652
ScrCmd_652: ; 0x02202B00
push {r3, r4, r5, r6, r7, lr}
add r5, r0, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r6, r0, #0
add r0, r5, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r7, r0, #0
add r0, r5, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0
ldr r0, [r5]
ldr r0, [r0, #0xc]
bl SavArray_PlayerParty_get
add r1, r6, #0
bl GetPartyMonByIndex
add r1, r7, #0
mov r2, #0
bl MonGetTutorCompat
cmp r0, #0
bne _02202B60
mov r0, #0
strh r0, [r4]
b _02202B74
_02202B60:
cmp r0, #7
bhi _02202B6A
mov r0, #1
strh r0, [r4]
b _02202B74
_02202B6A:
mov r1, #6
bl _s32_div_f
add r0, r0, #1
strh r0, [r4]
_02202B74:
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end ScrCmd_652
thumb_func_start ScrCmd_TutorMoveTeachInSlot
ScrCmd_TutorMoveTeachInSlot: ; 0x02202B78
push {r3, r4, r5, r6, r7, lr}
add r5, r0, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r4, r0, #0
add r0, r5, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r6, r0, #0
add r0, r5, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r5, #0x80
add r7, r0, #0
ldr r0, [r5]
ldr r0, [r0, #0xc]
bl SavArray_PlayerParty_get
add r1, r4, #0
add r2, r6, #0
add r3, r7, #0
bl PartyMonSetMoveInSlot
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
.balign 4, 0
thumb_func_end ScrCmd_TutorMoveTeachInSlot
thumb_func_start ScrCmd_TutorMoveGetPrice
ScrCmd_TutorMoveGetPrice: ; 0x02202BD0
push {r3, r4, r5, lr}
add r5, r0, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r4, r0, #0
add r0, r5, #0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0
ldr r0, [r5]
bl GetVarPointer
ldr r2, _02202C20 ; =sTutorMoves
add r5, r0, #0
mov r1, #0
_02202BFC:
ldrh r0, [r2]
cmp r4, r0
bne _02202C0E
ldr r0, _02202C24 ; =sTutorMoves + 2
lsl r1, r1, #2
ldrb r0, [r0, r1]
strh r0, [r5]
mov r0, #0
pop {r3, r4, r5, pc}
_02202C0E:
add r1, r1, #1
add r2, r2, #4
cmp r1, #0x34
blo _02202BFC
bl GF_AssertFail
mov r0, #0
strh r0, [r5]
pop {r3, r4, r5, pc}
.balign 4, 0
_02202C20: .word sTutorMoves
_02202C24: .word sTutorMoves + 2
thumb_func_end ScrCmd_TutorMoveGetPrice
thumb_func_start ScrCmd_656
ScrCmd_656: ; 0x02202C28
push {r4, r5, r6, lr}
add r5, r0, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r6, r0, #0
add r0, r5, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0
ldr r0, [r5]
ldr r0, [r0, #0xc]
bl SavArray_PlayerParty_get
add r1, r6, #0
bl GetPartyMonByIndex
mov r1, #3
mov r2, #0
bl MonGetTutorCompat
cmp r0, #0
beq _02202C72
mov r0, #1
b _02202C74
_02202C72:
mov r0, #0
_02202C74:
strh r0, [r4]
mov r0, #0
pop {r4, r5, r6, pc}
.balign 4, 0
thumb_func_end ScrCmd_656
thumb_func_start SpeciesAndFormeToWazaOshieIndex
SpeciesAndFormeToWazaOshieIndex: ; 0x02202C7C
; Convert species and forme into
; naix for tutor compat
ldr r2, _02202D3C ; =SPECIES_ROTOM
cmp r0, r2
bgt _02202CA0
bge _02202D02
add r3, r2, #0
sub r3, #SPECIES_ROTOM - SPECIES_DEOXYS
cmp r0, r3
bgt _02202C96
add r3, r2, #0
sub r3, #SPECIES_ROTOM - SPECIES_DEOXYS
cmp r0, r3
beq _02202CBC
b _02202D32
_02202C96:
add r3, r2, #0
sub r3, #SPECIES_ROTOM - SPECIES_WORMADAM
cmp r0, r3
beq _02202CDA
b _02202D32
_02202CA0:
add r3, r2, #0
add r3, #8
cmp r0, r3
bgt _02202CB2
add r3, r2, #0
add r3, #8
cmp r0, r3
beq _02202CEE
b _02202D32
_02202CB2:
add r3, r2, #0
add r3, #0xd
cmp r0, r3
beq _02202CF8
b _02202D32
_02202CBC:
cmp r1, #1
bne _02202CC6
add r0, r2, #0
add r0, #0xf
b _02202D32
_02202CC6:
cmp r1, #2
bne _02202CD0
add r0, r2, #0
add r0, #0x10
b _02202D32
_02202CD0:
cmp r1, #3
bne _02202D32
add r0, r2, #0
add r0, #0x11
b _02202D32
_02202CDA:
cmp r1, #1
bne _02202CE4
add r0, r2, #0
add r0, #0x12
b _02202D32
_02202CE4:
cmp r1, #2
bne _02202D32
add r0, r2, #0
add r0, #0x13
b _02202D32
_02202CEE:
cmp r1, #1
bne _02202D32
add r0, r2, #0
add r0, #0x14
b _02202D32
_02202CF8:
cmp r1, #1
bne _02202D32
add r0, r2, #0
add r0, #0x15
b _02202D32
_02202D02:
cmp r1, #1
bne _02202D0C
add r0, r2, #0
add r0, #0x16
b _02202D32
_02202D0C:
cmp r1, #2
bne _02202D16
add r0, r2, #0
add r0, #0x17
b _02202D32
_02202D16:
cmp r1, #3
bne _02202D20
add r0, r2, #0
add r0, #0x18
b _02202D32
_02202D20:
cmp r1, #4
bne _02202D2A
add r0, r2, #0
add r0, #0x19
b _02202D32
_02202D2A:
cmp r1, #5
bne _02202D32
add r0, r2, #0
add r0, #0x1a
_02202D32:
sub r0, r0, #1
lsl r0, r0, #0x10
lsr r0, r0, #0x10
bx lr
nop
_02202D3C: .word SPECIES_ROTOM
thumb_func_end SpeciesAndFormeToWazaOshieIndex
thumb_func_start MonGetTutorCompat
MonGetTutorCompat: ; 0x02202D40
push {r4, r5, r6, r7, lr}
sub sp, #0xc
add r6, r0, #0
str r1, [sp]
add r7, r2, #0
mov r4, #0
add r5, sp, #4
; Get the poke's current moveset
_02202D4E:
add r1, r4, #0
add r0, r6, #0
add r1, #0x36
mov r2, #0
bl GetMonData
strh r0, [r5]
add r4, r4, #1
add r5, r5, #2
cmp r4, #4
blt _02202D4E
; Get species and forme, then
; get tutor compat flags
add r0, r6, #0
mov r1, #5
mov r2, #0
bl GetMonData
add r4, r0, #0
add r0, r6, #0
mov r1, #0x70
mov r2, #0
bl GetMonData
add r1, r0, #0
lsl r0, r4, #0x10
lsl r1, r1, #0x18
lsr r0, r0, #0x10
lsr r1, r1, #0x18
bl SpeciesAndFormeToWazaOshieIndex
add r1, r0, #0
mov r0, #0xb
bl WazaOshieGet
mov r6, #0
mov ip, r0
ldr r1, _02202DFC ; =sTutorMoves
add r0, r6, #0
_02202D98:
; waza_oshie.bin entries are 64-bit
; flag arrays
asr r2, r0, #2
lsr r2, r2, #0x1d
add r2, r0, r2
asr r3, r2, #3
mov r2, ip
ldrb r5, [r2, r3]
lsr r4, r0, #0x1f
lsl r3, r0, #0x1d
sub r3, r3, r4
mov r2, #0x1d
ror r3, r2
add r2, r4, r3
add r3, r5, #0
asr r3, r2
mov r2, #1
tst r2, r3
beq _02202DE6
ldrb r3, [r1, #3]
ldr r2, [sp]
cmp r2, r3
bne _02202DE6
ldrh r4, [r1]
mov r5, #0
add r3, sp, #4
_02202DC8:
ldrh r2, [r3]
cmp r2, r4
beq _02202DD6
add r5, r5, #1
add r3, r3, #2
cmp r5, #4
blt _02202DC8
_02202DD6:
cmp r5, #4
blt _02202DE6
cmp r7, #0
beq _02202DE0
strb r0, [r7, r6]
_02202DE0:
add r2, r6, #1
lsl r2, r2, #0x10
lsr r6, r2, #0x10
_02202DE6:
add r0, r0, #1
add r1, r1, #4
cmp r0, #0x34
blo _02202D98
mov r0, ip
bl FreeToHeap
add r0, r6, #0
add sp, #0xc
pop {r4, r5, r6, r7, pc}
nop
_02202DFC: .word sTutorMoves
thumb_func_end MonGetTutorCompat
thumb_func_start WazaOshieGet
WazaOshieGet: ; 0x02202E00
push {r3, r4, r5, lr}
sub sp, #0x48
add r5, r0, #0
add r0, sp, #0
add r4, r1, #0
bl FS_InitFile
ldr r1, _02202E60 ; =ov01_02209AF4
add r0, sp, #0
bl FS_OpenFile
cmp r0, #0
bne _02202E24
bl GF_AssertFail
add sp, #0x48
mov r0, #0
pop {r3, r4, r5, pc}
_02202E24:
ldr r1, [sp, #0x28]
ldr r0, [sp, #0x24]
sub r1, r1, r0
ldr r0, _02202E64 ; =505 * 8
cmp r1, r0
beq _02202E34
bl GF_AssertFail
_02202E34:
add r0, r5, #0
mov r1, #8
bl AllocFromHeapAtEnd
add r5, r0, #0
add r0, sp, #0
lsl r1, r4, #3
mov r2, #0
bl FS_SeekFile
add r0, sp, #0
add r1, r5, #0
mov r2, #8
bl FS_ReadFile
add r0, sp, #0
bl FS_CloseFile
add r0, r5, #0
add sp, #0x48
pop {r3, r4, r5, pc}
nop
_02202E60: .word ov01_02209AF4
_02202E64: .word 505 * 8
thumb_func_end WazaOshieGet
thumb_func_start ScrCmd_MoveTutorChooseMove
ScrCmd_MoveTutorChooseMove: ; 0x02202E68
push {r4, r5, r6, r7, lr}
sub sp, #0x6c
str r0, [sp, #0x14]
add r0, #0x80
ldr r0, [r0]
str r0, [sp, #0x28]
bl ov01_021F6B20
str r0, [sp, #0x24]
ldr r0, [sp, #0x28]
mov r1, #0x10
bl FieldSysGetAttrAddr
add r4, r0, #0
ldr r0, [sp, #0x14]
bl ScriptReadHalfword
add r1, r0, #0
ldr r0, [sp, #0x14]
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r5, r0, #0
ldr r0, [sp, #0x14]
bl ScriptReadHalfword
add r1, r0, #0
ldr r0, [sp, #0x14]
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r7, r0, #0
ldr r0, [sp, #0x14]
bl ScriptReadHalfword
add r1, r0, #0
ldr r0, [sp, #0x14]
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r6, r0, #0
ldr r0, [sp, #0x14]
bl ScriptReadHalfword
ldr r1, [sp, #0x14]
str r0, [sp, #0x20]
str r0, [r1, #0x64]
add r0, r1, #0
add r0, #0x80
ldr r0, [r0]
ldr r0, [r0, #0xc]
bl SavArray_PlayerParty_get
add r1, r5, #0
bl GetPartyMonByIndex
add r1, r7, #0
add r2, sp, #0x38
bl MonGetTutorCompat
str r0, [sp, #0x34]
cmp r0, #7
bgt _02202EF2
mov r5, #0
str r5, [sp, #0x2c]
b _02202F10
_02202EF2:
mov r1, #6
add r5, r6, #0
mul r5, r1
cmp r0, r5
ble _02202F0C
sub r0, r0, r5
str r0, [sp, #0x34]
cmp r0, #6
ble _02202F06
str r1, [sp, #0x34]
_02202F06:
mov r0, #1
str r0, [sp, #0x2c]
b _02202F10
_02202F0C:
str r1, [sp, #0x34]
mov r5, #0
_02202F10:
ldr r0, [sp, #0x28]
ldr r1, [sp, #0x20]
bl GetVarPointer
add r6, r0, #0
ldr r0, [sp, #0x14]
mov r1, #1
add r0, #0x80
ldr r0, [r0]
bl FieldSysGetAttrAddr
mov r1, #1
str r1, [sp]
str r6, [sp, #4]
ldr r2, [r4]
mov r3, #0
str r2, [sp, #8]
str r0, [sp, #0xc]
ldr r0, [sp, #0x14]
add r2, r1, #0
ldr r0, [r0, #0x78]
str r0, [sp, #0x10]
ldr r0, [sp, #0x28]
bl ov01_021EDF78
ldr r1, [sp, #0x24]
ldr r2, _02203048 ; =0x000002EE
str r0, [r1]
mov r0, #0
mov r1, #0x1b
mov r3, #0x20
bl NewMsgDataFromNarc
str r0, [sp, #0x1c]
mov r0, #0x10
mov r1, #0x20
bl String_ctor
add r7, r0, #0
ldr r1, [sp, #0x2c]
ldr r0, [sp, #0x34]
add r0, r0, r1
cmp r0, #4
blt _02202F6C
mov r0, #1
b _02202F6E
_02202F6C:
mov r0, #0
_02202F6E:
lsl r0, r0, #0x10
lsr r0, r0, #0x10
str r0, [sp, #0x18]
mov r0, #0
str r0, [sp, #0x30]
ldr r0, [sp, #0x34]
cmp r0, #0
ble _02202FE2
add r0, sp, #0x38
add r5, r0, r5
_02202F82:
ldrb r1, [r5]
ldr r0, [sp, #0x1c]
lsl r2, r1, #2
ldr r1, _0220304C ; =sTutorMoves
ldrh r1, [r1, r2]
add r2, r7, #0
bl ReadMsgDataIntoString
mov r0, #1
str r0, [sp]
mov r0, #2
str r0, [sp, #4]
ldr r0, [r4]
mov r1, #0
add r2, r7, #0
mov r3, #2
bl BufferString
mov r0, #1
str r0, [sp]
str r0, [sp, #4]
ldrb r2, [r5]
ldr r0, [r4]
mov r1, #1
lsl r3, r2, #2
ldr r2, _0220304C ; =sTutorMoves
add r2, r2, r3
ldrb r2, [r2, #2]
mov r3, #2
bl BufferIntegerAsString
ldrb r3, [r5]
ldr r0, [sp, #0x24]
ldr r1, [sp, #0x18]
lsl r6, r3, #2
ldr r3, _0220304C ; =sTutorMoves
ldr r0, [r0]
ldrh r3, [r3, r6]
mov r2, #0xff
bl MoveTutorMenu_SetListItem
ldr r0, [sp, #0x30]
add r5, r5, #1
add r1, r0, #1
ldr r0, [sp, #0x34]
str r1, [sp, #0x30]
cmp r1, r0
blt _02202F82
_02202FE2:
add r0, r7, #0
bl String_dtor
ldr r0, [sp, #0x1c]
bl DestroyMsgData
ldr r0, [sp, #0x2c]
cmp r0, #0
beq _02203002
ldr r0, [sp, #0x24]
ldr r3, _02203050 ; =0x0000FFFD
ldr r0, [r0]
mov r1, #2
mov r2, #0xff
bl MoveTutorMenu_SetListItem
_02203002:
ldr r0, [sp, #0x24]
ldr r3, _02203054 ; =0x0000FFFE
ldr r0, [r0]
mov r1, #3
mov r2, #0xff
bl MoveTutorMenu_SetListItem
ldr r1, [sp, #0x14]
ldr r0, [sp, #0x28]
ldr r1, [r1, #0x64]
lsl r1, r1, #0x10
lsr r1, r1, #0x10
bl GetVarPointer
add r3, r0, #0
ldr r0, [sp, #0x28]
mov r1, #3
mov r2, #7
bl ov01_021F6ABC
ldr r0, [sp, #0x14]
ldr r1, _02203058 ; =ov01_0220305C
bl SetupNativeScript
ldr r1, [sp, #0x14]
ldr r0, [sp, #0x28]
ldr r1, [r1, #0x64]
lsl r1, r1, #0x10
lsr r1, r1, #0x10
bl GetVarPointer
mov r0, #1
add sp, #0x6c
pop {r4, r5, r6, r7, pc}
nop
_02203048: .word 0x000002EE
_0220304C: .word sTutorMoves
_02203050: .word 0x0000FFFD
_02203054: .word 0x0000FFFE
_02203058: .word ov01_0220305C
thumb_func_end ScrCmd_MoveTutorChooseMove
thumb_func_start ov01_0220305C
ov01_0220305C: ; 0x0220305C
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0x80
ldr r6, [r0]
add r0, r6, #0
bl ov01_021F6B20
ldr r1, [r5, #0x64]
add r4, r0, #0
lsl r1, r1, #0x10
add r0, r6, #0
lsr r1, r1, #0x10
bl GetVarPointer
ldrh r1, [r0]
ldr r0, _02203090 ; =0x0000EEEE
cmp r1, r0
bne _02203084
mov r0, #0
pop {r4, r5, r6, pc}
_02203084:
ldr r0, [r4]
bl ov01_021EDF00
mov r0, #1
pop {r4, r5, r6, pc}
nop
_02203090: .word 0x0000EEEE
thumb_func_end ov01_0220305C
thumb_func_start ScrCmd_742
ScrCmd_742: ; 0x02203094
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r6, r0, #0
add r0, r4, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0]
bl VarGet
add r5, r0, #0
add r0, r4, #0
bl ScriptReadHalfword
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0]
bl GetVarPointer
add r7, r0, #0
mov r0, #0
add r4, #0x80
strh r0, [r7]
ldr r0, [r4]
ldr r0, [r0, #0xc]
bl SavArray_PlayerParty_get
add r1, r6, #0
bl GetPartyMonByIndex
add r6, r0, #0
mov r0, #0xb
mov r1, #0x2c
bl AllocFromHeapAtEnd
add r4, r0, #0
add r0, r6, #0
mov r1, #5
mov r2, #0
bl GetMonData
str r0, [sp]
add r0, r6, #0
mov r1, #0x70
mov r2, #0
bl GetMonData
add r1, r0, #0
ldr r0, [sp]
add r2, r4, #0
bl Species_LoadLearnsetTable
mov r2, #0
cmp r0, #0
ble _0220312E
add r3, r4, #0
_0220311A:
ldrh r1, [r3]
cmp r5, r1
bne _02203126
mov r0, #1
strh r0, [r7]
b _0220312E
_02203126:
add r2, r2, #1
add r3, r3, #2
cmp r2, r0
blt _0220311A
_0220312E:
add r0, r4, #0
bl FreeToHeap
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end ScrCmd_742
.rodata
sTutorMoves: ; 0x022093E0
.short MOVE_DIVE
.byte 40, 0
.short MOVE_MUD_SLAP
.byte 32, 1
.short MOVE_FURY_CUTTER
.byte 32, 0
.short MOVE_ICY_WIND
.byte 48, 0
.short MOVE_ROLLOUT
.byte 32, 1
.short MOVE_THUNDER_PUNCH
.byte 64, 0
.short MOVE_FIRE_PUNCH
.byte 64, 0
.short MOVE_SUPERPOWER
.byte 48, 1
.short MOVE_ICE_PUNCH
.byte 64, 0
.short MOVE_IRON_HEAD
.byte 40, 1
.short MOVE_AQUA_TAIL
.byte 40, 1
.short MOVE_OMINOUS_WIND
.byte 48, 0
.short MOVE_GASTRO_ACID
.byte 32, 1
.short MOVE_SNORE
.byte 32, 2
.short MOVE_SPITE
.byte 40, 2
.short MOVE_AIR_CUTTER
.byte 48, 0
.short MOVE_HELPING_HAND
.byte 40, 2
.short MOVE_ENDEAVOR
.byte 64, 1
.short MOVE_OUTRAGE
.byte 48, 1
.short MOVE_ANCIENT_POWER
.byte 40, 1
.short MOVE_SYNTHESIS
.byte 40, 2
.short MOVE_SIGNAL_BEAM
.byte 40, 1
.short MOVE_ZEN_HEADBUTT
.byte 64, 0
.short MOVE_VACUUM_WAVE
.byte 48, 0
.short MOVE_EARTH_POWER
.byte 40, 1
.short MOVE_GUNK_SHOT
.byte 32, 1
.short MOVE_TWISTER
.byte 40, 1
.short MOVE_SEED_BOMB
.byte 40, 1
.short MOVE_IRON_DEFENSE
.byte 40, 1
.short MOVE_MAGNET_RISE
.byte 40, 2
.short MOVE_LAST_RESORT
.byte 48, 2
.short MOVE_BOUNCE
.byte 32, 1
.short MOVE_TRICK
.byte 48, 0
.short MOVE_HEAT_WAVE
.byte 48, 1
.short MOVE_KNOCK_OFF
.byte 40, 0
.short MOVE_SUCKER_PUNCH
.byte 40, 0
.short MOVE_SWIFT
.byte 40, 2
.short MOVE_UPROAR
.byte 48, 2
.short MOVE_SUPER_FANG
.byte 40, 1
.short MOVE_PAIN_SPLIT
.byte 64, 1
.short MOVE_STRING_SHOT
.byte 32, 2
.short MOVE_TAILWIND
.byte 48, 2
.short MOVE_GRAVITY
.byte 32, 2
.short MOVE_WORRY_SEED
.byte 32, 2
.short MOVE_MAGIC_COAT
.byte 32, 2
.short MOVE_ROLE_PLAY
.byte 48, 2
.short MOVE_HEAL_BELL
.byte 48, 2
.short MOVE_LOW_KICK
.byte 32, 1
.short MOVE_SKY_ATTACK
.byte 64, 1
.short MOVE_BLOCK
.byte 32, 2
.short MOVE_BUG_BITE
.byte 32, 0
.short MOVE_HEADBUTT
.byte 0, 3
.data
.balign 4, 0
ov01_02209AF4: ; 0x02209AF4
.asciz "fielddata/wazaoshie/waza_oshie.bin"

View File

@ -544,7 +544,7 @@ _02067D44:
ldr r0, [r4]
bne _02067D70
ldr r0, [r0, #0x40]
bl sub_0205C724
bl PlayerAvatar_GetGender
add r3, r0, #0
ldr r0, [r4]
ldr r2, [r4, #0x10]
@ -553,7 +553,7 @@ _02067D44:
b _02067D82
_02067D70:
ldr r0, [r0, #0x40]
bl sub_0205C724
bl PlayerAvatar_GetGender
add r3, r0, #0
ldr r0, [r4]
ldr r2, [r4, #0x10]

View File

@ -133,7 +133,7 @@ scr_seq_D37R0102_001:
lockall
faceplayer
goto_if_set FLAG_DAILY_GOT_HAIRCUT, _0331
scrcmd_113 20, 2
show_money_box 20, 2
npc_msg msg_0117_D37R0102_00010
touchscreen_menu_hide
getmenuchoice VAR_SPECIAL_RESULT
@ -149,7 +149,7 @@ _01F5:
npc_msg msg_0117_D37R0102_00011
wait_button
closemsg
scrcmd_114
hide_money_box
fade_screen 6, 1, 0, RGB_BLACK
wait_fade
party_select_ui
@ -163,9 +163,9 @@ _01F5:
get_partymon_species VAR_SPECIAL_x8005, VAR_SPECIAL_RESULT
compare VAR_SPECIAL_RESULT, 0
goto_if_eq _0319
scrcmd_113 20, 2
show_money_box 20, 2
submoneyimmediate 500
scrcmd_115
update_money_box
npc_msg msg_0117_D37R0102_00012
wait_button
closemsg
@ -173,7 +173,7 @@ _01F5:
wait_fade
play_fanfare SEQ_ME_ASA
wait_fanfare
scrcmd_114
hide_money_box
fade_screen 6, 1, 1, RGB_WHITE
wait_fade
npc_msg msg_0117_D37R0102_00013
@ -218,7 +218,7 @@ _030C:
npc_msg msg_0117_D37R0102_00014
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -233,7 +233,7 @@ _0324:
npc_msg msg_0117_D37R0102_00015
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -249,7 +249,7 @@ scr_seq_D37R0102_002:
lockall
faceplayer
goto_if_set FLAG_DAILY_GOT_HAIRCUT, _04BD
scrcmd_113 20, 2
show_money_box 20, 2
npc_msg msg_0117_D37R0102_00017
touchscreen_menu_hide
getmenuchoice VAR_SPECIAL_RESULT
@ -265,7 +265,7 @@ _0375:
npc_msg msg_0117_D37R0102_00018
wait_button
closemsg
scrcmd_114
hide_money_box
fade_screen 6, 1, 0, RGB_BLACK
wait_fade
party_select_ui
@ -279,9 +279,9 @@ _0375:
get_partymon_species VAR_SPECIAL_x8005, VAR_SPECIAL_RESULT
compare VAR_SPECIAL_RESULT, 0
goto_if_eq _04A5
scrcmd_113 20, 2
show_money_box 20, 2
submoneyimmediate 300
scrcmd_115
update_money_box
npc_msg msg_0117_D37R0102_00019
wait_button
closemsg
@ -289,7 +289,7 @@ _0375:
wait_fade
play_fanfare SEQ_ME_ASA
wait_fanfare
scrcmd_114
hide_money_box
fade_screen 6, 1, 1, RGB_WHITE
wait_fade
npc_msg msg_0117_D37R0102_00020
@ -336,7 +336,7 @@ _0498:
npc_msg msg_0117_D37R0102_00021
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -351,7 +351,7 @@ _04B0:
npc_msg msg_0117_D37R0102_00022
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -377,7 +377,7 @@ scr_seq_D37R0102_003:
lockall
faceplayer
goto_if_set FLAG_UNK_AB7, _0895
scrcmd_113 20, 2
show_money_box 20, 2
npc_msg msg_0117_D37R0102_00001
setvar VAR_TEMP_x4003, 0
setvar VAR_TEMP_x4004, 0
@ -509,7 +509,7 @@ _0796:
goto_if_eq _087D
submoneyimmediate 4600
_07C6:
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
buffer_item_name 0, VAR_SPECIAL_x8004
getitempocket VAR_SPECIAL_x8004, VAR_SPECIAL_RESULT
@ -562,7 +562,7 @@ _087D:
_0886:
touchscreen_menu_show
scrcmd_114
hide_money_box
npc_msg msg_0117_D37R0102_00009
wait_button_or_walk_away
closemsg

View File

@ -513,7 +513,7 @@ _0728:
buffer_int 1, VAR_SPECIAL_RESULT
npc_msg msg_0135_D47R0101_00000
_0736:
scrcmd_113 20, 2
show_money_box 20, 2
touchscreen_menu_hide
getmenuchoice VAR_SPECIAL_RESULT
touchscreen_menu_show
@ -534,7 +534,7 @@ _0773:
npc_msg msg_0135_D47R0101_00002
play_se SEQ_SE_DP_REGI
submoneyimmediate 500
scrcmd_115
update_money_box
npc_msg msg_0135_D47R0101_00004
buffer_players_name 0
setvar VAR_SPECIAL_RESULT, 30
@ -544,7 +544,7 @@ _0773:
wait_fanfare
npc_msg msg_0135_D47R0101_00006
closemsg
scrcmd_114
hide_money_box
scrcmd_600
apply_movement obj_player, _08C4
wait_movement
@ -571,7 +571,7 @@ _0773:
end
_0846:
scrcmd_114
hide_money_box
npc_msg msg_0135_D47R0101_00003
wait_button_or_walk_away
closemsg
@ -579,7 +579,7 @@ _0846:
end
_0853:
scrcmd_114
hide_money_box
compare VAR_UNK_4057, 6
goto_if_lt _086B
npc_msg msg_0135_D47R0101_00013
@ -594,7 +594,7 @@ _086E:
end
_0876:
scrcmd_114
hide_money_box
compare VAR_UNK_4057, 6
goto_if_lt _088E
npc_msg msg_0135_D47R0101_00011
@ -900,7 +900,7 @@ _0C84:
end
_0C8F:
scrcmd_113 20, 2
show_money_box 20, 2
touchscreen_menu_hide
getmenuchoice VAR_SPECIAL_RESULT
touchscreen_menu_show
@ -921,7 +921,7 @@ _0CCC:
npc_msg msg_0135_D47R0101_00055
play_se SEQ_SE_DP_REGI
submoneyimmediate 500
scrcmd_115
update_money_box
npc_msg msg_0135_D47R0101_00057
buffer_players_name 0
setvar VAR_SPECIAL_RESULT, 30
@ -931,7 +931,7 @@ _0CCC:
wait_fanfare
npc_msg msg_0135_D47R0101_00059
closemsg
scrcmd_114
hide_money_box
scrcmd_600
apply_movement obj_player, _08C4
wait_movement
@ -958,7 +958,7 @@ _0CCC:
end
_0D9F:
scrcmd_114
hide_money_box
npc_msg msg_0135_D47R0101_00003
wait_button_or_walk_away
closemsg
@ -966,7 +966,7 @@ _0D9F:
end
_0DAC:
scrcmd_114
hide_money_box
compare VAR_UNK_4057, 6
goto_if_lt _0DC4
npc_msg msg_0135_D47R0101_00013
@ -981,7 +981,7 @@ _0DC7:
end
_0DCF:
scrcmd_114
hide_money_box
compare VAR_UNK_4057, 6
goto_if_lt _0DE7
npc_msg msg_0135_D47R0101_00011

View File

@ -775,7 +775,7 @@ scr_seq_D49_019:
setvar VAR_TEMP_x4007, 0
goto_if_unset FLAG_UNK_997, _095F
_0A1D:
scrcmd_113 21, 1
show_money_box 21, 1
scrcmd_741 VAR_TEMP_x4007, VAR_SPECIAL_x8000, VAR_SPECIAL_x8001, VAR_SPECIAL_x8002
apply_movement obj_D49_shopm1_2, _0BEC
wait_movement
@ -799,10 +799,10 @@ _0A3A:
closemsg
fade_screen 6, 1, 0, RGB_BLACK
wait_fade
scrcmd_114
hide_money_box
scrcmd_740 VAR_SPECIAL_x8000, VAR_SPECIAL_x8003
scrcmd_150
scrcmd_113 21, 1
show_money_box 21, 1
fade_screen 6, 1, 1, RGB_BLACK
wait_fade
compare VAR_SPECIAL_x8003, 0
@ -812,12 +812,12 @@ _0A3A:
_0AD0:
submoneyvar VAR_SPECIAL_x8001
scrcmd_115
update_money_box
_0AD6:
npc_msg msg_0137_D49_00035
_0AD9:
closemsg
scrcmd_114
hide_money_box
apply_movement obj_D49_shopm1_2, _0BF4
wait_movement
releaseall

View File

@ -495,7 +495,7 @@ scr_seq_D49R0101_014:
copyvar VAR_TEMP_x4005, VAR_SPECIAL_x8000
compare VAR_TEMP_x4005, 0
goto_if_ne _072E
scrcmd_113 20, 2
show_money_box 20, 2
goto _0759
.byte 0x16, 0x00, 0x1a, 0x00, 0x00, 0x00
_072E:
@ -640,7 +640,7 @@ _08F8:
call_if_eq _08CC
compare VAR_TEMP_x4005, 0
goto_if_ne _097D
scrcmd_115
update_money_box
goto _098D
_097D:
@ -691,7 +691,7 @@ _0A35:
closemsg
compare VAR_TEMP_x4005, 0
goto_if_ne _0A52
scrcmd_114
hide_money_box
goto _0A54
_0A52:
@ -706,7 +706,7 @@ _0A5C:
closemsg
compare VAR_TEMP_x4005, 0
goto_if_ne _0A75
scrcmd_114
hide_money_box
goto _0A77
_0A75:

View File

@ -34,7 +34,7 @@ _002C:
end
_0058:
scrcmd_113 20, 2
show_money_box 20, 2
npc_msg msg_0397_R39R0101_00001
touchscreen_menu_hide
menu_init 1, 1, 0, 1, VAR_SPECIAL_RESULT
@ -54,11 +54,11 @@ _0058:
goto_if_eq _00F7
goto_if_no_item_space ITEM_MOOMOO_MILK, VAR_TEMP_x4000, _0104
submoneyvar VAR_TEMP_x4001
scrcmd_115
update_money_box
npc_msg msg_0397_R39R0101_00002
callstd std_give_item_verbose
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -66,7 +66,7 @@ _00F7:
npc_msg msg_0397_R39R0101_00003
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -74,7 +74,7 @@ _0104:
npc_msg msg_0397_R39R0101_00004
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -82,7 +82,7 @@ _0111:
npc_msg msg_0397_R39R0101_00005
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end

View File

@ -191,7 +191,7 @@ scr_seq_0265_001:
play_se SEQ_SE_DP_SELECT
lockall
faceplayer
scrcmd_113 20, 2
show_money_box 20, 2
get_day_care_state VAR_SPECIAL_RESULT
compare VAR_SPECIAL_RESULT, 1
goto_if_eq _042E
@ -208,7 +208,7 @@ scr_seq_0265_001:
npc_msg msg_0439_00026
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -221,7 +221,7 @@ _0290:
goto_if_eq _041F
npc_msg msg_0439_00022
closemsg
scrcmd_114
hide_money_box
fade_screen 6, 1, 0, RGB_BLACK
wait_fade
setvar VAR_SPECIAL_RESULT, 0
@ -268,13 +268,13 @@ _0374:
wait_button_or_walk_away
closemsg
wait_cry
scrcmd_114
hide_money_box
releaseall
end
_038B:
scrcmd_150
scrcmd_113 20, 2
show_money_box 20, 2
fade_screen 6, 1, 1, RGB_BLACK
wait_fade
return
@ -282,7 +282,7 @@ _038B:
_03A1:
call _038B
touchscreen_menu_show
scrcmd_114
hide_money_box
callstd std_bag_is_full_griseous_orb
end
@ -292,7 +292,7 @@ _03B1:
npc_msg msg_0439_00040
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -303,7 +303,7 @@ _03CE:
npc_msg msg_0439_00029
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -321,7 +321,7 @@ _03FB:
npc_msg msg_0439_00036
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -331,7 +331,7 @@ _040A:
npc_msg msg_0439_00038
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -340,7 +340,7 @@ _041F:
npc_msg msg_0439_00039
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -348,7 +348,7 @@ _042E:
npc_msg msg_0439_00025
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -419,7 +419,7 @@ _0544:
npc_msg msg_0439_00027
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -431,7 +431,7 @@ _0566:
fade_screen 6, 1, 1, RGB_BLACK
wait_fade
submoneyvar VAR_SPECIAL_x8004
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
wait_se SEQ_SE_DP_REGI
npc_msg msg_0439_00034
@ -459,7 +459,7 @@ _05DC:
npc_msg msg_0439_00032
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
.byte 0x00, 0x3e, 0x00, 0x03, 0x00
@ -481,7 +481,7 @@ _0620:
npc_msg msg_0439_00029
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
.byte 0x49, 0x00, 0xdc, 0x05, 0x60, 0x00, 0x2d, 0x00, 0x2a, 0x71, 0x01, 0x35, 0x00, 0x72, 0x00, 0x61

View File

@ -32,7 +32,7 @@ scr_seq_T07R0106_003:
play_se SEQ_SE_DP_SELECT
lockall
npc_msg msg_0499_T07R0106_00003
scrcmd_113 20, 2
show_money_box 20, 2
goto _005E
_005E:
@ -105,7 +105,7 @@ _011C:
call_if_eq _010C
compare VAR_SPECIAL_x8000, 2
call_if_eq _0114
scrcmd_115
update_money_box
buffer_item_name 0, VAR_SPECIAL_x8001
play_se SEQ_SE_DP_JIHANKI
buffer_item_name 0, VAR_SPECIAL_x8001
@ -132,14 +132,14 @@ _01F0:
_01F9:
callstd std_bag_is_full
closemsg
scrcmd_114
hide_money_box
releaseall
end
_0205:
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
.balign 4, 0

View File

@ -303,7 +303,7 @@ _0428:
npc_msg msg_0508_T07R0401_00002
touchscreen_menu_hide
scrcmd_116 0, 20, 2
scrcmd_113 20, 7
show_money_box 20, 7
_043E:
menu_init_std_gmm 1, 1, 0, 1, VAR_SPECIAL_RESULT
menu_item_add 127, 255, 0
@ -327,7 +327,7 @@ _048B:
submoneyimmediate 1000
give_coins 50
scrcmd_118 0
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
wait_se SEQ_SE_DP_REGI
npc_msg msg_0508_T07R0401_00003
@ -344,7 +344,7 @@ _04D7:
submoneyimmediate 10000
give_coins 500
scrcmd_118 0
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
wait_se SEQ_SE_DP_REGI
npc_msg msg_0508_T07R0401_00003
@ -361,7 +361,7 @@ _0531:
closemsg
touchscreen_menu_show
scrcmd_117
scrcmd_114
hide_money_box
script_overlay_cmd 3, 1
releaseall
end

View File

@ -150,7 +150,7 @@ _01E5:
npc_msg msg_0589_T25R0601_00003
npc_msg msg_0589_T25R0601_00008
touchscreen_menu_hide
scrcmd_113 20, 2
show_money_box 20, 2
menu_init_std_gmm 1, 1, 0, 1, VAR_SPECIAL_RESULT
menu_item_add 213, 470, 0
menu_item_add 214, 472, 1
@ -189,7 +189,7 @@ _0276:
call_if_eq _03A5
compare VAR_SPECIAL_x8000, 3
call_if_eq _03AD
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
giveitem VAR_SPECIAL_x8001, 1, VAR_SPECIAL_RESULT
buffer_item_name 0, VAR_SPECIAL_x8001
@ -201,7 +201,7 @@ _031F:
wait_button_or_walk_away
closemsg
touchscreen_menu_show
scrcmd_114
hide_money_box
releaseall
end

View File

@ -91,7 +91,7 @@ scr_seq_T25R1006_004:
play_se SEQ_SE_DP_SELECT
lockall
faceplayer
scrcmd_113 20, 2
show_money_box 20, 2
npc_msg msg_0597_T25R1006_00010
touchscreen_menu_hide
getmenuchoice VAR_SPECIAL_RESULT
@ -105,7 +105,7 @@ _0156:
compare VAR_SPECIAL_RESULT, 0
goto_if_eq _04D2
submoneyimmediate 300
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
wait_se SEQ_SE_DP_REGI
npc_msg msg_0597_T25R1006_00011
@ -178,7 +178,7 @@ _0294:
goto_if_eq _04B0
callstd std_obtain_item_verbose
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -237,7 +237,7 @@ _038B:
goto_if_eq _04B0
callstd std_obtain_item_verbose
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -296,7 +296,7 @@ _0482:
goto_if_eq _04B0
callstd std_obtain_item_verbose
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -304,7 +304,7 @@ _04A3:
npc_msg msg_0597_T25R1006_00014
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -312,13 +312,13 @@ _04B0:
npc_msg msg_0597_T25R1006_00015
closemsg
addmoney 300
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
wait_se SEQ_SE_DP_REGI
npc_msg msg_0597_T25R1006_00017
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -326,7 +326,7 @@ _04D2:
npc_msg msg_0597_T25R1006_00016
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
@ -518,7 +518,7 @@ scr_seq_T25R1006_003:
play_se SEQ_SE_DP_SELECT
lockall
npc_msg msg_0597_T25R1006_00005
scrcmd_113 20, 2
show_money_box 20, 2
goto _0717
_0717:
@ -591,7 +591,7 @@ _07D5:
call_if_eq _07C5
compare VAR_SPECIAL_x8000, 2
call_if_eq _07CD
scrcmd_115
update_money_box
buffer_item_name 0, VAR_SPECIAL_x8001
play_se SEQ_SE_DP_JIHANKI
buffer_item_name 0, VAR_SPECIAL_x8001
@ -618,14 +618,14 @@ _08A9:
_08B2:
callstd std_bag_is_full
closemsg
scrcmd_114
hide_money_box
releaseall
end
_08BE:
wait_button_or_walk_away
closemsg
scrcmd_114
hide_money_box
releaseall
end
.balign 4, 0

View File

@ -477,7 +477,7 @@ _069B:
npc_msg msg_0599_T25R1101_00002
touchscreen_menu_hide
scrcmd_116 0, 20, 2
scrcmd_113 20, 7
show_money_box 20, 7
_06B1:
menu_init_std_gmm 1, 1, 0, 1, VAR_SPECIAL_RESULT
menu_item_add 127, 255, 0
@ -501,7 +501,7 @@ _06FE:
submoneyimmediate 1000
give_coins 50
scrcmd_118 0
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
wait_se SEQ_SE_DP_REGI
npc_msg msg_0599_T25R1101_00003
@ -518,7 +518,7 @@ _074A:
submoneyimmediate 10000
give_coins 500
scrcmd_118 0
scrcmd_115
update_money_box
play_se SEQ_SE_DP_REGI
wait_se SEQ_SE_DP_REGI
npc_msg msg_0599_T25R1101_00003
@ -536,7 +536,7 @@ _07A4:
closemsg
touchscreen_menu_show
scrcmd_117
scrcmd_114
hide_money_box
script_overlay_cmd 3, 1
releaseall
end

View File

@ -2768,9 +2768,9 @@
.public ScrCmd_107
.public ScrCmd_108
.public ScrCmd_109
.public ScrCmd_113
.public ScrCmd_114
.public ScrCmd_115
.public ScrCmd_ShowMoneyBox
.public ScrCmd_HideMoneyBox
.public ScrCmd_UpdateMoneyBox
.public ScrCmd_116
.public ScrCmd_117
.public ScrCmd_118
@ -5669,9 +5669,9 @@
.public ov01_021EE934
.public ov01_021EE974
.public ov01_021EEA44
.public ov01_021EEA90
.public ov01_021EEB38
.public ov01_021EEB4C
.public Fsys_ShowMoneyBox
.public MoneyBoxSys_Delete
.public MoneyBoxSys_Update
.public ov01_021EEC00
.public ov01_021EEC68
.public ov01_021EEC7C
@ -29322,7 +29322,7 @@
.public PlayerAvatar_OrrTransitionFlags
.public PlayerAvatar_SetTransitionFlags
.public PlayerAvatar_GetTransitionFlags
.public sub_0205C724
.public PlayerAvatar_GetGender
.public sub_0205C744
.public sub_0205C748
.public sub_0205C74C

View File

@ -23,7 +23,7 @@ FIELD_PLAYER_AVATAR *sub_0205C408(MapObjectMan *man, struct FlypointsPlayerSub *
void sub_0205C4CC(FIELD_PLAYER_AVATAR *avatar);
void sub_0205C4C4(FIELD_PLAYER_AVATAR *avatar);
void PlayerAvatar_SetState(FIELD_PLAYER_AVATAR *avatar, int state);
int sub_0205C724(FIELD_PLAYER_AVATAR *avatar);
int PlayerAvatar_GetGender(FIELD_PLAYER_AVATAR *avatar);
LocalMapObject *PlayerAvatar_GetMapObject(FIELD_PLAYER_AVATAR *avatar);
BOOL sub_0205CABC(FIELD_PLAYER_AVATAR *avatar);

View File

@ -136,9 +136,9 @@ BOOL ScrCmd_109(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_AddMoney(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_SubMoneyImmediate(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_HasEnoughMoneyImmediate(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_113(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_114(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_115(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_ShowMoneyBox(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_HideMoneyBox(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_UpdateMoneyBox(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_116(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_117(SCRIPTCONTEXT* ctx);
BOOL ScrCmd_118(SCRIPTCONTEXT* ctx);

View File

@ -467,6 +467,11 @@ Overlay field
Object asm/overlay_01_data_02208BFC.o
Object asm/overlay_01_021FC66C.o
Object asm/overlay_01_021FCD2C.o
Object asm/overlay_01_021FCE98.o
Object asm/overlay_01_021FD1B8.o ### still needs split ###
Object asm/scrcmd_move_tutor.o
Object asm/scrcmd_moneybox.o
Object asm/overlay_01_022031C0.o ### still needs split ###
}
Overlay OVY_2
{

View File

@ -113,9 +113,9 @@ extern BOOL ScrCmd_109(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_AddMoney(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_SubMoneyImmediate(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_HasEnoughMoneyImmediate(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_113(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_114(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_115(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_ShowMoneyBox(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_HideMoneyBox(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_UpdateMoneyBox(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_116(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_117(SCRIPTCONTEXT *ctx);
extern BOOL ScrCmd_118(SCRIPTCONTEXT *ctx);
@ -968,9 +968,9 @@ const ScrCmdFunc gScriptCmdTable[] = {
ScrCmd_AddMoney,
ScrCmd_SubMoneyImmediate,
ScrCmd_HasEnoughMoneyImmediate,
ScrCmd_113,
ScrCmd_114,
ScrCmd_115,
ScrCmd_ShowMoneyBox,
ScrCmd_HideMoneyBox,
ScrCmd_UpdateMoneyBox,
ScrCmd_116,
ScrCmd_117,
ScrCmd_118,

View File

@ -717,7 +717,7 @@ static void sub_02053AA0(TaskManager *taskManager) {
GF_ASSERT(0);
return;
}
env->unk4 = ov02_0224B418(fsys, sub_0205C724(fsys->playerAvatar));
env->unk4 = ov02_0224B418(fsys, PlayerAvatar_GetGender(fsys->playerAvatar));
TaskManager_Call(taskManager, sub_02053AE4, env);
}

View File

@ -2,7 +2,7 @@
case $OSTYPE in
darwin*)
echo "" | gcut -f1 || { echo "This script requires GNU coreutils, install it via homebrew (brew install coreutils)"; exit 1; }
echo "" | gcut -f1 &>/dev/null || { echo "This script requires GNU coreutils, install it via homebrew (brew install coreutils)"; exit 1; }
CUT=gcut
;;
*)
@ -181,7 +181,7 @@ case "$mode" in
ovtoff=$(getword "$baserom" "$ovt")
vma=$(getword "$baserom" "$((ovtoff+32*overlay+4))")
size=$(getword "$baserom" "$((ovtoff+32*overlay+8))")
[[ -f $basefile ]] || {
[[ $basefile -nt $baserom ]] || {
fileid=$(getword "$baserom" "$((ovtoff+32*overlay+24))")
param=$(getword "$baserom" "$((ovtoff+32*overlay+28))")
fatoff=$(getword "$baserom" 72)
@ -209,7 +209,7 @@ case "$mode" in
vma=$(getword "$baserom" "$((romtab+8))")
size=$(getword "$baserom" "$((romtab+12))")
[[ -f $basefile ]] || {
[[ $basefile -nt "$baserom" ]] || {
dd if="$baserom" of="$basefile" bs=1 skip="$fileoff" count="$size" 2>/dev/null
[[ $proc == armv5te ]] && {
_start_ModuleParams=$(getword "$baserom" $((fileoff+size+4)))
@ -241,7 +241,7 @@ case "$mode" in
buildfile=${fsdir}/${filepath}
[[ -f "${buildfile}" ]] || { echo file not found: "${buildfile}"; exit 1; }
basefile=${MYDIR}/.files/${filepath}
[[ -f "${basefile}" ]] || {
[[ "${basefile}" -nt "$baserom" ]] || {
mkdir -p $(dirname $basefile)
"${MYDIR}"/ntrextractfile "${baserom}" "${filepath}" >"${basefile}"
}

View File

@ -701,18 +701,18 @@
]
},
{
"name": "scrcmd_113",
"name": "show_money_box",
"args": [
2,
2
]
},
{
"name": "scrcmd_114",
"name": "hide_money_box",
"args": []
},
{
"name": "scrcmd_115",
"name": "update_money_box",
"args": []
},
{