mirror of
https://github.com/pret/pokediamond.git
synced 2026-10-01 07:30:30 -04:00
Decompile unk_0206B688 in poketool
This commit is contained in:
@@ -1,357 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "global.inc"
|
||||
|
||||
.section .rodata
|
||||
|
||||
.global UNK_020F8074
|
||||
UNK_020F8074: ; 0x020F8074
|
||||
.byte 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02, 0x02
|
||||
.byte 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02
|
||||
.byte 0x02, 0x02, 0x02, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02
|
||||
.byte 0x02, 0x02, 0x00, 0x02, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02
|
||||
.byte 0x02, 0x01, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01
|
||||
.byte 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x02, 0x01, 0x00, 0x02
|
||||
.byte 0x02, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02
|
||||
.byte 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x02
|
||||
.byte 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01
|
||||
.byte 0x01, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x02, 0x02
|
||||
.byte 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x02, 0x02, 0x01, 0x01
|
||||
.byte 0x01, 0x01, 0x01, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x00, 0x02, 0x00, 0x02, 0x01, 0x01, 0x01
|
||||
.byte 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x02
|
||||
.byte 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x02, 0x01, 0x02, 0x00, 0x00, 0x02, 0x02, 0x02
|
||||
.byte 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x02, 0x00, 0x00
|
||||
.byte 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x02, 0x02, 0x00
|
||||
.byte 0x01, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02
|
||||
.byte 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x01, 0x00
|
||||
.byte 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02
|
||||
.byte 0x02, 0x01, 0x01, 0x00, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01
|
||||
.byte 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x01, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x02, 0x02, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x02
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01
|
||||
.byte 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FUN_0206B688
|
||||
FUN_0206B688: ; 0x0206B688
|
||||
push {r3-r7, lr}
|
||||
add r5, r0, #0x0
|
||||
bl AcquireBoxMonLock
|
||||
add r7, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x5
|
||||
mov r2, #0x0
|
||||
bl GetBoxMonData
|
||||
add r4, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x4c
|
||||
mov r2, #0x0
|
||||
bl GetBoxMonData
|
||||
add r6, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl BoxMon_GetAlternateForme
|
||||
add r2, r0, #0x0
|
||||
add r0, r4, #0x0
|
||||
add r1, r6, #0x0
|
||||
bl FUN_0206B6D4
|
||||
add r4, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r1, r7, #0x0
|
||||
bl ReleaseBoxMonLock
|
||||
add r0, r4, #0x0
|
||||
pop {r3-r7, pc}
|
||||
|
||||
thumb_func_start FUN_0206B6C8
|
||||
FUN_0206B6C8: ; 0x0206B6C8
|
||||
push {r3, lr}
|
||||
bl FUN_020690E4
|
||||
bl FUN_0206B688
|
||||
pop {r3, pc}
|
||||
|
||||
thumb_func_start FUN_0206B6D4
|
||||
FUN_0206B6D4: ; 0x0206B6D4
|
||||
cmp r1, #0x1
|
||||
bne _0206B6E8
|
||||
ldr r1, _0206B748 ; =0x000001EA
|
||||
cmp r0, r1
|
||||
bne _0206B6E2
|
||||
add r1, #0xc
|
||||
b _0206B6E4
|
||||
_0206B6E2:
|
||||
add r1, #0xb
|
||||
_0206B6E4:
|
||||
add r0, r1, #0x0
|
||||
bx lr
|
||||
_0206B6E8:
|
||||
cmp r2, #0x0
|
||||
beq _0206B73A
|
||||
ldr r3, _0206B74C ; =0x00000182
|
||||
cmp r0, r3
|
||||
bne _0206B6F8
|
||||
add r3, #0x74
|
||||
add r0, r2, r3
|
||||
bx lr
|
||||
_0206B6F8:
|
||||
cmp r0, #0xc9
|
||||
bne _0206B702
|
||||
add r3, #0x78
|
||||
add r0, r2, r3
|
||||
bx lr
|
||||
_0206B702:
|
||||
add r1, r3, #0x0
|
||||
add r1, #0x1a
|
||||
cmp r0, r1
|
||||
bne _0206B710
|
||||
add r3, #0x93
|
||||
add r0, r2, r3
|
||||
bx lr
|
||||
_0206B710:
|
||||
add r1, r3, #0x0
|
||||
add r1, #0x1b
|
||||
cmp r0, r1
|
||||
bne _0206B71E
|
||||
add r3, #0x95
|
||||
add r0, r2, r3
|
||||
bx lr
|
||||
_0206B71E:
|
||||
add r1, r3, #0x0
|
||||
add r1, #0x24
|
||||
cmp r0, r1
|
||||
bne _0206B72C
|
||||
add r3, #0x97
|
||||
add r0, r2, r3
|
||||
bx lr
|
||||
_0206B72C:
|
||||
add r1, r3, #0x0
|
||||
add r1, #0x25
|
||||
cmp r0, r1
|
||||
bne _0206B73A
|
||||
add r3, #0x98
|
||||
add r0, r2, r3
|
||||
bx lr
|
||||
_0206B73A:
|
||||
ldr r1, _0206B750 ; =0x000001ED
|
||||
cmp r0, r1
|
||||
bls _0206B742
|
||||
mov r0, #0x0
|
||||
_0206B742:
|
||||
add r0, r0, #0x7
|
||||
bx lr
|
||||
nop
|
||||
_0206B748: .word 0x000001EA
|
||||
_0206B74C: .word 0x00000182
|
||||
_0206B750: .word 0x000001ED
|
||||
|
||||
thumb_func_start BoxMon_GetAlternateForme
|
||||
BoxMon_GetAlternateForme: ; 0x0206B754
|
||||
push {r4, lr}
|
||||
mov r1, #0xad
|
||||
mov r2, #0x0
|
||||
add r4, r0, #0x0
|
||||
bl GetBoxMonData
|
||||
ldr r2, _0206B7B8 ; =0x0000019D
|
||||
cmp r0, r2
|
||||
bhi _0206B784
|
||||
sub r1, r2, #0x1
|
||||
cmp r0, r1
|
||||
blo _0206B774
|
||||
beq _0206B7A4
|
||||
cmp r0, r2
|
||||
beq _0206B7A4
|
||||
b _0206B7B4
|
||||
_0206B774:
|
||||
cmp r0, #0xc9
|
||||
bhi _0206B77C
|
||||
beq _0206B79C
|
||||
b _0206B7B4
|
||||
_0206B77C:
|
||||
sub r2, #0x1b
|
||||
cmp r0, r2
|
||||
beq _0206B7A4
|
||||
b _0206B7B4
|
||||
_0206B784:
|
||||
add r1, r2, #0x0
|
||||
add r1, #0x9
|
||||
cmp r0, r1
|
||||
bhi _0206B794
|
||||
add r2, #0x9
|
||||
cmp r0, r2
|
||||
beq _0206B7A4
|
||||
b _0206B7B4
|
||||
_0206B794:
|
||||
add r2, #0xa
|
||||
cmp r0, r2
|
||||
beq _0206B7A4
|
||||
b _0206B7B4
|
||||
_0206B79C:
|
||||
add r0, r4, #0x0
|
||||
bl GetBoxMonUnownLetter
|
||||
pop {r4, pc}
|
||||
_0206B7A4:
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0x70
|
||||
mov r2, #0x0
|
||||
bl GetBoxMonData
|
||||
lsl r0, r0, #0x10
|
||||
lsr r0, r0, #0x10
|
||||
pop {r4, pc}
|
||||
_0206B7B4:
|
||||
mov r0, #0x0
|
||||
pop {r4, pc}
|
||||
.balign 4
|
||||
_0206B7B8: .word 0x0000019D
|
||||
|
||||
thumb_func_start FUN_0206B7BC
|
||||
FUN_0206B7BC: ; 0x0206B7BC
|
||||
cmp r2, #0x1
|
||||
bne _0206B7CE
|
||||
ldr r1, _0206B830 ; =0x000001EA
|
||||
cmp r0, r1
|
||||
bne _0206B7CA
|
||||
add r0, r1, #0x5
|
||||
b _0206B82A
|
||||
_0206B7CA:
|
||||
add r0, r1, #0x4
|
||||
b _0206B82A
|
||||
_0206B7CE:
|
||||
ldr r3, _0206B834 ; =0x000001ED
|
||||
cmp r0, r3
|
||||
bls _0206B7D8
|
||||
mov r0, #0x0
|
||||
b _0206B82A
|
||||
_0206B7D8:
|
||||
cmp r1, #0x0
|
||||
beq _0206B82A
|
||||
add r2, r3, #0x0
|
||||
sub r2, #0x6b
|
||||
cmp r0, r2
|
||||
bne _0206B7EA
|
||||
add r0, r3, #0x2
|
||||
add r0, r1, r0
|
||||
b _0206B82A
|
||||
_0206B7EA:
|
||||
cmp r0, #0xc9
|
||||
bne _0206B7F4
|
||||
add r0, r3, #0x5
|
||||
add r0, r1, r0
|
||||
b _0206B82A
|
||||
_0206B7F4:
|
||||
add r2, r3, #0x0
|
||||
sub r2, #0x51
|
||||
cmp r0, r2
|
||||
bne _0206B802
|
||||
add r3, #0x21
|
||||
add r0, r1, r3
|
||||
b _0206B82A
|
||||
_0206B802:
|
||||
add r2, r3, #0x0
|
||||
sub r2, #0x50
|
||||
cmp r0, r2
|
||||
bne _0206B810
|
||||
add r3, #0x23
|
||||
add r0, r1, r3
|
||||
b _0206B82A
|
||||
_0206B810:
|
||||
add r2, r3, #0x0
|
||||
sub r2, #0x47
|
||||
cmp r0, r2
|
||||
bne _0206B81E
|
||||
add r3, #0x25
|
||||
add r0, r1, r3
|
||||
b _0206B82A
|
||||
_0206B81E:
|
||||
add r2, r3, #0x0
|
||||
sub r2, #0x46
|
||||
cmp r0, r2
|
||||
bne _0206B82A
|
||||
add r3, #0x26
|
||||
add r0, r1, r3
|
||||
_0206B82A:
|
||||
ldr r1, _0206B838 ; =UNK_020F8074
|
||||
ldrb r0, [r1, r0]
|
||||
bx lr
|
||||
.balign 4
|
||||
_0206B830: .word 0x000001EA
|
||||
_0206B834: .word 0x000001ED
|
||||
_0206B838: .word UNK_020F8074
|
||||
|
||||
thumb_func_start FUN_0206B83C
|
||||
FUN_0206B83C: ; 0x0206B83C
|
||||
push {r3-r7, lr}
|
||||
add r5, r0, #0x0
|
||||
bl AcquireBoxMonLock
|
||||
add r4, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl BoxMon_GetAlternateForme
|
||||
add r6, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x5
|
||||
mov r2, #0x0
|
||||
bl GetBoxMonData
|
||||
add r7, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x4c
|
||||
mov r2, #0x0
|
||||
bl GetBoxMonData
|
||||
str r0, [sp, #0x0]
|
||||
add r0, r5, #0x0
|
||||
add r1, r4, #0x0
|
||||
bl ReleaseBoxMonLock
|
||||
ldr r2, [sp, #0x0]
|
||||
add r0, r7, #0x0
|
||||
add r1, r6, #0x0
|
||||
bl FUN_0206B7BC
|
||||
pop {r3-r7, pc}
|
||||
.balign 4
|
||||
|
||||
thumb_func_start FUN_0206B87C
|
||||
FUN_0206B87C: ; 0x0206B87C
|
||||
push {r3, lr}
|
||||
bl FUN_020690E4
|
||||
bl FUN_0206B83C
|
||||
pop {r3, pc}
|
||||
|
||||
thumb_func_start FUN_0206B888
|
||||
FUN_0206B888: ; 0x0206B888
|
||||
mov r0, #0x0
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_0206B88C
|
||||
FUN_0206B88C: ; 0x0206B88C
|
||||
mov r0, #0x2
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_0206B890
|
||||
FUN_0206B890: ; 0x0206B890
|
||||
mov r0, #0x4
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_0206B894
|
||||
FUN_0206B894: ; 0x0206B894
|
||||
mov r0, #0x6
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_0206B898
|
||||
FUN_0206B898: ; 0x0206B898
|
||||
mov r0, #0x1
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_0206B89C
|
||||
FUN_0206B89C: ; 0x0206B89C
|
||||
mov r0, #0x3
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_0206B8A0
|
||||
FUN_0206B8A0: ; 0x0206B8A0
|
||||
mov r0, #0x5
|
||||
bx lr
|
||||
@@ -0,0 +1,185 @@
|
||||
#include "global.h"
|
||||
#include "pokemon.h"
|
||||
#include "unk_0206B688.h"
|
||||
|
||||
#pragma thumb on
|
||||
|
||||
u16 BoxMon_GetAlternateForme(struct BoxPokemon * boxmon);
|
||||
u32 FUN_0206B6D4(u32 species, u32 is_egg, u32 forme);
|
||||
|
||||
u32 FUN_0206B688(struct BoxPokemon * boxmon)
|
||||
{
|
||||
BOOL decry = AcquireBoxMonLock(boxmon);
|
||||
u32 species = GetBoxMonData(boxmon, MON_DATA_SPECIES, NULL);
|
||||
u32 is_egg = GetBoxMonData(boxmon, MON_DATA_IS_EGG, NULL);
|
||||
u32 forme = BoxMon_GetAlternateForme(boxmon);
|
||||
u32 ret = FUN_0206B6D4(species, is_egg, forme);
|
||||
ReleaseBoxMonLock(boxmon, decry);
|
||||
return ret;
|
||||
}
|
||||
|
||||
u32 FUN_0206B6C8(struct Pokemon * pokemon)
|
||||
{
|
||||
return FUN_0206B688(FUN_020690E4(pokemon));
|
||||
}
|
||||
|
||||
u32 FUN_0206B6D4(u32 species, u32 is_egg, u32 forme)
|
||||
{
|
||||
if (is_egg == TRUE)
|
||||
{
|
||||
if (species == SPECIES_MANAPHY)
|
||||
return 502;
|
||||
else
|
||||
return 501;
|
||||
}
|
||||
if (forme != 0)
|
||||
{
|
||||
if (species == SPECIES_DEOXYS)
|
||||
return 502 + forme;
|
||||
if (species == SPECIES_UNOWN)
|
||||
return 506 + forme;
|
||||
if (species == SPECIES_BURMY)
|
||||
return 533 + forme;
|
||||
if (species == SPECIES_WORMADAM)
|
||||
return 535 + forme;
|
||||
if (species == SPECIES_SHELLOS)
|
||||
return 537 + forme;
|
||||
if (species == SPECIES_GASTRODON)
|
||||
return 538 + forme;
|
||||
}
|
||||
return (species <= SPECIES_ARCEUS ? species : 0) + 7;
|
||||
}
|
||||
|
||||
u16 BoxMon_GetAlternateForme(struct BoxPokemon * boxmon)
|
||||
{
|
||||
u32 species = GetBoxMonData(boxmon, MON_DATA_SPECIES2, NULL);
|
||||
switch (species)
|
||||
{
|
||||
case SPECIES_UNOWN:
|
||||
return GetBoxMonUnownLetter(boxmon);
|
||||
case SPECIES_DEOXYS:
|
||||
case SPECIES_BURMY:
|
||||
case SPECIES_WORMADAM:
|
||||
case SPECIES_SHELLOS:
|
||||
case SPECIES_GASTRODON:
|
||||
return (u16) GetBoxMonData(boxmon, MON_DATA_FORME, NULL);
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
const u8 UNK_020F8074[] = {
|
||||
0, 1, 1, 1, 0, 0, 0, 0, 2, 2, 1, 1, 0, 1, 2, 2,
|
||||
0, 0, 0, 2, 1, 0, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2,
|
||||
2, 2, 2, 0, 0, 2, 1, 0, 0, 2, 2, 1, 0, 0, 0, 0,
|
||||
0, 2, 2, 2, 1, 1, 1, 2, 1, 2, 0, 0, 0, 0, 0, 2,
|
||||
2, 2, 0, 2, 0, 1, 1, 1, 2, 2, 1, 1, 1, 0, 0, 0,
|
||||
0, 0, 0, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
|
||||
2, 1, 2, 2, 0, 0, 0, 1, 1, 1, 2, 2, 1, 2, 2, 1,
|
||||
1, 0, 0, 1, 0, 0, 0, 0, 2, 2, 0, 1, 2, 1, 0, 2,
|
||||
2, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2, 0, 1,
|
||||
0, 0, 0, 0, 0, 2, 2, 0, 1, 1, 1, 1, 1, 1, 2, 2,
|
||||
2, 2, 2, 2, 2, 0, 0, 1, 0, 2, 2, 0, 0, 0, 1, 2,
|
||||
2, 0, 0, 2, 0, 0, 1, 2, 2, 1, 1, 1, 1, 2, 2, 1,
|
||||
1, 1, 0, 0, 2, 2, 2, 0, 0, 0, 0, 1, 0, 2, 2, 2,
|
||||
0, 0, 2, 0, 0, 1, 2, 0, 0, 2, 0, 0, 2, 2, 0, 0,
|
||||
0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 2, 1, 2, 2, 1, 1,
|
||||
1, 1, 1, 0, 2, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 2, 0, 2, 1, 1, 1,
|
||||
1, 1, 1, 0, 2, 2, 0, 0, 1, 1, 1, 2, 0, 1, 1, 2,
|
||||
2, 1, 1, 1, 1, 0, 2, 2, 2, 1, 2, 0, 0, 2, 2, 2,
|
||||
2, 2, 2, 0, 0, 1, 0, 0, 0, 0, 2, 0, 1, 2, 0, 0,
|
||||
2, 0, 1, 0, 1, 0, 2, 1, 1, 1, 1, 1, 1, 0, 0, 0,
|
||||
2, 1, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 2, 0, 0,
|
||||
1, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 2, 2, 0, 0, 0,
|
||||
0, 1, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 2, 2, 0,
|
||||
1, 0, 0, 1, 1, 1, 1, 0, 0, 2, 2, 0, 0, 0, 0, 2,
|
||||
2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0,
|
||||
0, 0, 0, 0, 1, 0, 0, 0, 2, 2, 2, 2, 2, 0, 1, 0,
|
||||
2, 0, 2, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 2,
|
||||
2, 1, 1, 0, 2, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1,
|
||||
0, 2, 1, 0, 2, 1, 1, 0, 2, 2, 0, 1, 0, 2, 2, 0,
|
||||
0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 2,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
|
||||
0, 1, 0, 0, 0, 0, 0, 0
|
||||
};
|
||||
|
||||
u32 FUN_0206B7BC(u32 species, u32 forme, u32 is_egg)
|
||||
{
|
||||
if (is_egg == TRUE)
|
||||
{
|
||||
if (species == SPECIES_MANAPHY)
|
||||
species = 495;
|
||||
else
|
||||
species = 494;
|
||||
}
|
||||
else if (species > SPECIES_ARCEUS)
|
||||
species = 0;
|
||||
else if (forme != 0)
|
||||
{
|
||||
if (species == SPECIES_DEOXYS)
|
||||
species = 495 + forme;
|
||||
else if (species == SPECIES_UNOWN)
|
||||
species = 498 + forme;
|
||||
else if (species == SPECIES_BURMY)
|
||||
species = 526 + forme;
|
||||
else if (species == SPECIES_WORMADAM)
|
||||
species = 528 + forme;
|
||||
else if (species == SPECIES_SHELLOS)
|
||||
species = 530 + forme;
|
||||
else if (species == SPECIES_GASTRODON)
|
||||
species = 531 + forme;
|
||||
}
|
||||
return UNK_020F8074[species];
|
||||
}
|
||||
|
||||
u32 FUN_0206B83C(struct BoxPokemon * boxmon)
|
||||
{
|
||||
BOOL decry = AcquireBoxMonLock(boxmon);
|
||||
u32 forme = BoxMon_GetAlternateForme(boxmon);
|
||||
u32 species = GetBoxMonData(boxmon, MON_DATA_SPECIES, NULL);
|
||||
u32 is_egg = GetBoxMonData(boxmon, MON_DATA_IS_EGG, NULL);
|
||||
ReleaseBoxMonLock(boxmon, decry);
|
||||
return FUN_0206B7BC(species, forme, is_egg);
|
||||
}
|
||||
|
||||
u32 FUN_0206B87C(struct Pokemon * pokemon)
|
||||
{
|
||||
return FUN_0206B83C(FUN_020690E4(pokemon));
|
||||
}
|
||||
|
||||
u32 FUN_0206B888(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 FUN_0206B88C(void)
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
|
||||
u32 FUN_0206B890(void)
|
||||
{
|
||||
return 4;
|
||||
}
|
||||
|
||||
u32 FUN_0206B894(void)
|
||||
{
|
||||
return 6;
|
||||
}
|
||||
|
||||
u32 FUN_0206B898(void)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
u32 FUN_0206B89C(void)
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
|
||||
u32 FUN_0206B8A0(void)
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
@@ -263,6 +263,7 @@ void FUN_02069038(u32 a0, u32 a1, u32 a2, s32 a3, u32 a4, u32 a5, u32 a6);
|
||||
void FUN_020690AC(struct SomeDrawPokemonStruct * a0, u32 a1);
|
||||
u32 FUN_020690C4(void);
|
||||
u32 FUN_020690C8(void);
|
||||
u8 GetBoxMonUnownLetter(struct BoxPokemon * boxmon);
|
||||
u8 GetMonUnownLetter(struct Pokemon * pokemon);
|
||||
struct BoxPokemon * FUN_020690E4(struct Pokemon * pokemon);
|
||||
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
#ifndef POKEDIAMOND_UNK_0206B688_H
|
||||
#define POKEDIAMOND_UNK_0206B688_H
|
||||
|
||||
#include "pokemon.h"
|
||||
|
||||
u32 FUN_0206B688(struct BoxPokemon * boxmon);
|
||||
u32 FUN_0206B6C8(struct Pokemon * pokemon);
|
||||
u32 FUN_0206B6D4(u32 species, u32 is_egg, u32 forme);
|
||||
u16 BoxMon_GetAlternateForme(struct BoxPokemon * boxmon);
|
||||
u32 FUN_0206B7BC(u32 species, u32 forme, u32 is_egg);
|
||||
u32 FUN_0206B83C(struct BoxPokemon * boxmon);
|
||||
u32 FUN_0206B87C(struct Pokemon * pokemon);
|
||||
u32 FUN_0206B888(void);
|
||||
u32 FUN_0206B88C(void);
|
||||
u32 FUN_0206B890(void);
|
||||
u32 FUN_0206B894(void);
|
||||
u32 FUN_0206B898(void);
|
||||
u32 FUN_0206B89C(void);
|
||||
u32 FUN_0206B8A0(void);
|
||||
|
||||
#endif //POKEDIAMOND_UNK_0206B688_H
|
||||
Reference in New Issue
Block a user