mirror of
https://github.com/pret/pokeruby.git
synced 2026-10-07 17:30:43 -04:00
up to ContestAICmd_unk_67
This commit is contained in:
@@ -5,774 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start ContestAICmd_check_can_participate
|
||||
ContestAICmd_check_can_participate: @ 812A0BC
|
||||
push {lr}
|
||||
ldr r0, _0812A0DC @ =gAIScriptPtr
|
||||
ldr r0, [r0]
|
||||
ldrb r0, [r0, 0x1]
|
||||
bl sub_8128A7C
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl Contest_IsMonsTurnDisabled
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0812A0E4
|
||||
ldr r1, _0812A0E0 @ =gSharedMem + 0x192E4
|
||||
movs r0, 0
|
||||
b _0812A0E8
|
||||
.align 2, 0
|
||||
_0812A0DC: .4byte gAIScriptPtr
|
||||
_0812A0E0: .4byte gSharedMem + 0x192E4
|
||||
_0812A0E4:
|
||||
ldr r1, _0812A0F8 @ =gSharedMem + 0x192E4
|
||||
movs r0, 0x1
|
||||
_0812A0E8:
|
||||
strh r0, [r1, 0x18]
|
||||
ldr r1, _0812A0FC @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x2
|
||||
str r0, [r1]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A0F8: .4byte gSharedMem + 0x192E4
|
||||
_0812A0FC: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_check_can_participate
|
||||
|
||||
thumb_func_start ContestAICmd_unk_54
|
||||
ContestAICmd_unk_54: @ 812A100
|
||||
push {lr}
|
||||
bl ContestAICmd_check_can_participate
|
||||
ldr r0, _0812A12C @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
beq _0812A134
|
||||
ldr r3, _0812A130 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A13C
|
||||
.align 2, 0
|
||||
_0812A12C: .4byte gSharedMem + 0x192E4
|
||||
_0812A130: .4byte gAIScriptPtr
|
||||
_0812A134:
|
||||
ldr r1, _0812A140 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A13C:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A140: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_54
|
||||
|
||||
thumb_func_start ContestAICmd_unk_55
|
||||
ContestAICmd_unk_55: @ 812A144
|
||||
push {lr}
|
||||
bl ContestAICmd_check_can_participate
|
||||
ldr r0, _0812A170 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _0812A178
|
||||
ldr r3, _0812A174 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A180
|
||||
.align 2, 0
|
||||
_0812A170: .4byte gSharedMem + 0x192E4
|
||||
_0812A174: .4byte gAIScriptPtr
|
||||
_0812A178:
|
||||
ldr r1, _0812A184 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A180:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A184: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_55
|
||||
|
||||
thumb_func_start ContestAICmd_get_val_812A188
|
||||
ContestAICmd_get_val_812A188: @ 812A188
|
||||
push {r4,lr}
|
||||
ldr r4, _0812A1BC @ =gAIScriptPtr
|
||||
ldr r0, [r4]
|
||||
ldrb r0, [r0, 0x1]
|
||||
bl sub_8128A7C
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0812A1C0 @ =gSharedMem + 0x192E4
|
||||
lsls r1, r0, 3
|
||||
subs r1, r0
|
||||
lsls r1, 2
|
||||
adds r0, r2, 0
|
||||
subs r0, 0x84
|
||||
adds r1, r0
|
||||
ldrb r0, [r1, 0x15]
|
||||
lsls r0, 28
|
||||
lsrs r0, 31
|
||||
strh r0, [r2, 0x18]
|
||||
ldr r0, [r4]
|
||||
adds r0, 0x2
|
||||
str r0, [r4]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A1BC: .4byte gAIScriptPtr
|
||||
_0812A1C0: .4byte gSharedMem + 0x192E4
|
||||
thumb_func_end ContestAICmd_get_val_812A188
|
||||
|
||||
thumb_func_start ContestAICmd_unk_57
|
||||
ContestAICmd_unk_57: @ 812A1C4
|
||||
push {lr}
|
||||
bl ContestAICmd_get_val_812A188
|
||||
ldr r0, _0812A1F0 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
beq _0812A1F8
|
||||
ldr r3, _0812A1F4 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A200
|
||||
.align 2, 0
|
||||
_0812A1F0: .4byte gSharedMem + 0x192E4
|
||||
_0812A1F4: .4byte gAIScriptPtr
|
||||
_0812A1F8:
|
||||
ldr r1, _0812A204 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A200:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A204: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_57
|
||||
|
||||
thumb_func_start ContestAICmd_unk_58
|
||||
ContestAICmd_unk_58: @ 812A208
|
||||
push {lr}
|
||||
bl ContestAICmd_get_val_812A188
|
||||
ldr r0, _0812A234 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _0812A23C
|
||||
ldr r3, _0812A238 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A244
|
||||
.align 2, 0
|
||||
_0812A234: .4byte gSharedMem + 0x192E4
|
||||
_0812A238: .4byte gAIScriptPtr
|
||||
_0812A23C:
|
||||
ldr r1, _0812A248 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A244:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A248: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_58
|
||||
|
||||
thumb_func_start ContestAICmd_unk_59
|
||||
ContestAICmd_unk_59: @ 812A24C
|
||||
push {r4,r5,lr}
|
||||
ldr r5, _0812A28C @ =gAIScriptPtr
|
||||
ldr r0, [r5]
|
||||
ldrb r0, [r0, 0x1]
|
||||
bl sub_8128A7C
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r3, _0812A290 @ =gSharedMem + 0x192E4
|
||||
lsls r1, r0, 3
|
||||
subs r1, r0
|
||||
lsls r1, 2
|
||||
adds r4, r3, 0
|
||||
subs r4, 0x84
|
||||
adds r1, r4
|
||||
adds r0, r3, 0
|
||||
adds r0, 0x41
|
||||
ldrb r2, [r0]
|
||||
lsls r0, r2, 3
|
||||
subs r0, r2
|
||||
lsls r0, 2
|
||||
adds r0, r4
|
||||
ldrh r1, [r1, 0x4]
|
||||
ldrh r0, [r0, 0x4]
|
||||
subs r1, r0
|
||||
strh r1, [r3, 0x18]
|
||||
ldr r0, [r5]
|
||||
adds r0, 0x2
|
||||
str r0, [r5]
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A28C: .4byte gAIScriptPtr
|
||||
_0812A290: .4byte gSharedMem + 0x192E4
|
||||
thumb_func_end ContestAICmd_unk_59
|
||||
|
||||
thumb_func_start ContestAICmd_unk_5A
|
||||
ContestAICmd_unk_5A: @ 812A294
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_59
|
||||
ldr r0, _0812A2C0 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bge _0812A2C8
|
||||
ldr r3, _0812A2C4 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A2D0
|
||||
.align 2, 0
|
||||
_0812A2C0: .4byte gSharedMem + 0x192E4
|
||||
_0812A2C4: .4byte gAIScriptPtr
|
||||
_0812A2C8:
|
||||
ldr r1, _0812A2D4 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A2D0:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A2D4: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_5A
|
||||
|
||||
thumb_func_start ContestAICmd_unk_5B
|
||||
ContestAICmd_unk_5B: @ 812A2D8
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_59
|
||||
ldr r0, _0812A304 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
ble _0812A30C
|
||||
ldr r3, _0812A308 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A314
|
||||
.align 2, 0
|
||||
_0812A304: .4byte gSharedMem + 0x192E4
|
||||
_0812A308: .4byte gAIScriptPtr
|
||||
_0812A30C:
|
||||
ldr r1, _0812A318 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A314:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A318: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_5B
|
||||
|
||||
thumb_func_start ContestAICmd_unk_5C
|
||||
ContestAICmd_unk_5C: @ 812A31C
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_59
|
||||
ldr r0, _0812A348 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _0812A350
|
||||
ldr r3, _0812A34C @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A358
|
||||
.align 2, 0
|
||||
_0812A348: .4byte gSharedMem + 0x192E4
|
||||
_0812A34C: .4byte gAIScriptPtr
|
||||
_0812A350:
|
||||
ldr r1, _0812A35C @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A358:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A35C: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_5C
|
||||
|
||||
thumb_func_start ContestAICmd_unk_5D
|
||||
ContestAICmd_unk_5D: @ 812A360
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_59
|
||||
ldr r0, _0812A38C @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
beq _0812A394
|
||||
ldr r3, _0812A390 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A39C
|
||||
.align 2, 0
|
||||
_0812A38C: .4byte gSharedMem + 0x192E4
|
||||
_0812A390: .4byte gAIScriptPtr
|
||||
_0812A394:
|
||||
ldr r1, _0812A3A0 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A39C:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A3A0: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_5D
|
||||
|
||||
thumb_func_start ContestAICmd_unk_5E
|
||||
ContestAICmd_unk_5E: @ 812A3A4
|
||||
push {r4,lr}
|
||||
ldr r4, _0812A3D8 @ =gAIScriptPtr
|
||||
ldr r0, [r4]
|
||||
ldrb r0, [r0, 0x1]
|
||||
bl sub_8128A7C
|
||||
lsls r0, 24
|
||||
ldr r3, _0812A3DC @ =gSharedMem + 0x192E4
|
||||
ldr r2, _0812A3E0 @ =gUnknown_02038670
|
||||
lsrs r0, 23
|
||||
adds r0, r2
|
||||
adds r1, r3, 0
|
||||
adds r1, 0x41
|
||||
ldrb r1, [r1]
|
||||
lsls r1, 1
|
||||
adds r1, r2
|
||||
ldrh r0, [r0]
|
||||
ldrh r1, [r1]
|
||||
subs r0, r1
|
||||
strh r0, [r3, 0x18]
|
||||
ldr r0, [r4]
|
||||
adds r0, 0x2
|
||||
str r0, [r4]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A3D8: .4byte gAIScriptPtr
|
||||
_0812A3DC: .4byte gSharedMem + 0x192E4
|
||||
_0812A3E0: .4byte gUnknown_02038670
|
||||
thumb_func_end ContestAICmd_unk_5E
|
||||
|
||||
thumb_func_start ContestAICmd_unk_5F
|
||||
ContestAICmd_unk_5F: @ 812A3E4
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_5E
|
||||
ldr r0, _0812A410 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bge _0812A418
|
||||
ldr r3, _0812A414 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A420
|
||||
.align 2, 0
|
||||
_0812A410: .4byte gSharedMem + 0x192E4
|
||||
_0812A414: .4byte gAIScriptPtr
|
||||
_0812A418:
|
||||
ldr r1, _0812A424 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A420:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A424: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_5F
|
||||
|
||||
thumb_func_start ContestAICmd_unk_60
|
||||
ContestAICmd_unk_60: @ 812A428
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_5E
|
||||
ldr r0, _0812A454 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
ble _0812A45C
|
||||
ldr r3, _0812A458 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A464
|
||||
.align 2, 0
|
||||
_0812A454: .4byte gSharedMem + 0x192E4
|
||||
_0812A458: .4byte gAIScriptPtr
|
||||
_0812A45C:
|
||||
ldr r1, _0812A468 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A464:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A468: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_60
|
||||
|
||||
thumb_func_start ContestAICmd_unk_61
|
||||
ContestAICmd_unk_61: @ 812A46C
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_5E
|
||||
ldr r0, _0812A498 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _0812A4A0
|
||||
ldr r3, _0812A49C @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A4A8
|
||||
.align 2, 0
|
||||
_0812A498: .4byte gSharedMem + 0x192E4
|
||||
_0812A49C: .4byte gAIScriptPtr
|
||||
_0812A4A0:
|
||||
ldr r1, _0812A4AC @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A4A8:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A4AC: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_61
|
||||
|
||||
thumb_func_start ContestAICmd_unk_62
|
||||
ContestAICmd_unk_62: @ 812A4B0
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_5E
|
||||
ldr r0, _0812A4DC @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
beq _0812A4E4
|
||||
ldr r3, _0812A4E0 @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
ldrb r0, [r2, 0x1]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A4EC
|
||||
.align 2, 0
|
||||
_0812A4DC: .4byte gSharedMem + 0x192E4
|
||||
_0812A4E0: .4byte gAIScriptPtr
|
||||
_0812A4E4:
|
||||
ldr r1, _0812A4F0 @ =gAIScriptPtr
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x4
|
||||
str r0, [r1]
|
||||
_0812A4EC:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A4F0: .4byte gAIScriptPtr
|
||||
thumb_func_end ContestAICmd_unk_62
|
||||
|
||||
thumb_func_start ContestAICmd_unk_63
|
||||
ContestAICmd_unk_63: @ 812A4F4
|
||||
push {r4,lr}
|
||||
ldr r4, _0812A52C @ =gAIScriptPtr
|
||||
ldr r0, [r4]
|
||||
ldrb r0, [r0, 0x1]
|
||||
bl sub_8128A7C
|
||||
lsls r0, 24
|
||||
ldr r3, [r4]
|
||||
ldrb r1, [r3, 0x2]
|
||||
ldr r2, _0812A530 @ =gSharedMem + 0x19204
|
||||
lsrs r0, 23
|
||||
lsls r1, 3
|
||||
adds r0, r1
|
||||
adds r1, r2, 0
|
||||
adds r1, 0x1C
|
||||
adds r0, r1
|
||||
ldrh r0, [r0]
|
||||
adds r2, 0xE0
|
||||
ldr r1, _0812A534 @ =gContestMoves
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
strh r0, [r2, 0x18]
|
||||
adds r3, 0x3
|
||||
str r3, [r4]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0812A52C: .4byte gAIScriptPtr
|
||||
_0812A530: .4byte gSharedMem + 0x19204
|
||||
_0812A534: .4byte gContestMoves
|
||||
thumb_func_end ContestAICmd_unk_63
|
||||
|
||||
thumb_func_start ContestAICmd_unk_64
|
||||
ContestAICmd_unk_64: @ 812A538
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_63
|
||||
ldr r0, _0812A568 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
ldr r3, _0812A56C @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
cmp r0, r1
|
||||
bge _0812A570
|
||||
ldrb r1, [r2, 0x1]
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x4]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A574
|
||||
.align 2, 0
|
||||
_0812A568: .4byte gSharedMem + 0x192E4
|
||||
_0812A56C: .4byte gAIScriptPtr
|
||||
_0812A570:
|
||||
adds r0, r2, 0x5
|
||||
str r0, [r3]
|
||||
_0812A574:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end ContestAICmd_unk_64
|
||||
|
||||
thumb_func_start ContestAICmd_unk_65
|
||||
ContestAICmd_unk_65: @ 812A578
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_63
|
||||
ldr r0, _0812A5A8 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
ldr r3, _0812A5AC @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
cmp r0, r1
|
||||
ble _0812A5B0
|
||||
ldrb r1, [r2, 0x1]
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x4]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A5B4
|
||||
.align 2, 0
|
||||
_0812A5A8: .4byte gSharedMem + 0x192E4
|
||||
_0812A5AC: .4byte gAIScriptPtr
|
||||
_0812A5B0:
|
||||
adds r0, r2, 0x5
|
||||
str r0, [r3]
|
||||
_0812A5B4:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end ContestAICmd_unk_65
|
||||
|
||||
thumb_func_start ContestAICmd_unk_66
|
||||
ContestAICmd_unk_66: @ 812A5B8
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_63
|
||||
ldr r0, _0812A5E8 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
ldr r3, _0812A5EC @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
cmp r0, r1
|
||||
bne _0812A5F0
|
||||
ldrb r1, [r2, 0x1]
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x4]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A5F4
|
||||
.align 2, 0
|
||||
_0812A5E8: .4byte gSharedMem + 0x192E4
|
||||
_0812A5EC: .4byte gAIScriptPtr
|
||||
_0812A5F0:
|
||||
adds r0, r2, 0x5
|
||||
str r0, [r3]
|
||||
_0812A5F4:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end ContestAICmd_unk_66
|
||||
|
||||
thumb_func_start ContestAICmd_unk_67
|
||||
ContestAICmd_unk_67: @ 812A5F8
|
||||
push {lr}
|
||||
bl ContestAICmd_unk_63
|
||||
ldr r0, _0812A628 @ =gSharedMem + 0x192E4
|
||||
movs r1, 0x18
|
||||
ldrsh r0, [r0, r1]
|
||||
ldr r3, _0812A62C @ =gAIScriptPtr
|
||||
ldr r2, [r3]
|
||||
ldrb r1, [r2]
|
||||
cmp r0, r1
|
||||
beq _0812A630
|
||||
ldrb r1, [r2, 0x1]
|
||||
ldrb r0, [r2, 0x2]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x3]
|
||||
lsls r0, 16
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x4]
|
||||
lsls r0, 24
|
||||
orrs r1, r0
|
||||
str r1, [r3]
|
||||
b _0812A634
|
||||
.align 2, 0
|
||||
_0812A628: .4byte gSharedMem + 0x192E4
|
||||
_0812A62C: .4byte gAIScriptPtr
|
||||
_0812A630:
|
||||
adds r0, r2, 0x5
|
||||
str r0, [r3]
|
||||
_0812A634:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end ContestAICmd_unk_67
|
||||
|
||||
thumb_func_start ContestAICmd_unk_68
|
||||
ContestAICmd_unk_68: @ 812A638
|
||||
push {r4,lr}
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
extern u8 AreMovesContestCombo(u16, u16);
|
||||
extern bool8 sub_8128A7C(u8);
|
||||
extern bool8 sub_80B214C(u8);
|
||||
extern bool8 Contest_IsMonsTurnDisabled(u8);
|
||||
|
||||
enum
|
||||
{
|
||||
@@ -975,3 +976,207 @@ void ContestAICmd_unk_52(void)
|
||||
else
|
||||
gAIScriptPtr += 5;
|
||||
}
|
||||
|
||||
void ContestAICmd_check_can_participate(void)
|
||||
{
|
||||
if(Contest_IsMonsTurnDisabled(sub_8128A7C(gAIScriptPtr[1])))
|
||||
eContestAI->scriptResult = FALSE;
|
||||
else
|
||||
eContestAI->scriptResult = TRUE;
|
||||
|
||||
gAIScriptPtr += 2;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_54(void)
|
||||
{
|
||||
ContestAICmd_check_can_participate();
|
||||
|
||||
if((s16)eContestAI->scriptResult != 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_55(void)
|
||||
{
|
||||
ContestAICmd_check_can_participate();
|
||||
|
||||
if((s16)eContestAI->scriptResult == 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_get_val_812A188(void)
|
||||
{
|
||||
u8 var = sub_8128A7C(gAIScriptPtr[1]);
|
||||
|
||||
eContestAI->scriptResult = sContestantStatus[var].unk15_3;
|
||||
gAIScriptPtr += 2;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_57(void)
|
||||
{
|
||||
ContestAICmd_get_val_812A188();
|
||||
|
||||
if((s16)eContestAI->scriptResult != 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_58(void)
|
||||
{
|
||||
ContestAICmd_get_val_812A188();
|
||||
|
||||
if((s16)eContestAI->scriptResult == 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_59(void)
|
||||
{
|
||||
u8 var = sub_8128A7C(gAIScriptPtr[1]);
|
||||
|
||||
eContestAI->scriptResult = sContestantStatus[var].unk4 - sContestantStatus[eContestAI->unk41].unk4;
|
||||
gAIScriptPtr += 2;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_5A(void)
|
||||
{
|
||||
ContestAICmd_unk_59();
|
||||
|
||||
if((s16)eContestAI->scriptResult < 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_5B(void)
|
||||
{
|
||||
ContestAICmd_unk_59();
|
||||
|
||||
if((s16)eContestAI->scriptResult > 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_5C(void)
|
||||
{
|
||||
ContestAICmd_unk_59();
|
||||
|
||||
if((s16)eContestAI->scriptResult == 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_5D(void)
|
||||
{
|
||||
ContestAICmd_unk_59();
|
||||
|
||||
if((s16)eContestAI->scriptResult != 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_5E(void)
|
||||
{
|
||||
u8 var = sub_8128A7C(gAIScriptPtr[1]);
|
||||
|
||||
eContestAI->scriptResult = gUnknown_02038670[var] - gUnknown_02038670[eContestAI->unk41];
|
||||
gAIScriptPtr += 2;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_5F(void)
|
||||
{
|
||||
ContestAICmd_unk_5E();
|
||||
|
||||
if((s16)eContestAI->scriptResult < 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_60(void)
|
||||
{
|
||||
ContestAICmd_unk_5E();
|
||||
|
||||
if((s16)eContestAI->scriptResult > 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_61(void)
|
||||
{
|
||||
ContestAICmd_unk_5E();
|
||||
|
||||
if((s16)eContestAI->scriptResult == 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_62(void)
|
||||
{
|
||||
ContestAICmd_unk_5E();
|
||||
|
||||
if((s16)eContestAI->scriptResult != 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
|
||||
else
|
||||
gAIScriptPtr += 4;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_63(void)
|
||||
{
|
||||
u8 var = sub_8128A7C(gAIScriptPtr[1]);
|
||||
u8 var2 = gAIScriptPtr[2];
|
||||
u16 move = sContest.unk19220[var2][var];
|
||||
|
||||
eContestAI->scriptResult = gContestMoves[move].effect;
|
||||
gAIScriptPtr += 3;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_64(void)
|
||||
{
|
||||
ContestAICmd_unk_63();
|
||||
|
||||
if((s16)eContestAI->scriptResult < gAIScriptPtr[0])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
else
|
||||
gAIScriptPtr += 5;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_65(void)
|
||||
{
|
||||
ContestAICmd_unk_63();
|
||||
|
||||
if((s16)eContestAI->scriptResult > gAIScriptPtr[0])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
else
|
||||
gAIScriptPtr += 5;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_66(void)
|
||||
{
|
||||
ContestAICmd_unk_63();
|
||||
|
||||
if((s16)eContestAI->scriptResult == gAIScriptPtr[0])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
else
|
||||
gAIScriptPtr += 5;
|
||||
}
|
||||
|
||||
void ContestAICmd_unk_67(void)
|
||||
{
|
||||
ContestAICmd_unk_63();
|
||||
|
||||
if((s16)eContestAI->scriptResult != gAIScriptPtr[0])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
else
|
||||
gAIScriptPtr += 5;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user