summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-06-27 20:17:39 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-06-27 20:17:39 -0400
commit25355e8530142e6ad88f4173c3c3dc9d881d7fa8 (patch)
tree702b9b02fa7be4df1bb9e4e3173e2cc70152883c
parent3661177dc197119b53ff4a677359d27272c816e0 (diff)
sub_810B998 and ALL the data
-rwxr-xr-xasm/pokeblock.s89
-rw-r--r--data/pokeblock.s125
-rwxr-xr-x[-rw-r--r--]include/battle.h1
-rwxr-xr-x[-rw-r--r--]include/decoration.h2
-rwxr-xr-x[-rw-r--r--]include/graphics.h8
-rwxr-xr-x[-rw-r--r--]include/menu.h6
-rwxr-xr-xinclude/pokeblock.h5
-rwxr-xr-x[-rw-r--r--]include/strings.h15
-rwxr-xr-xld_script.txt1
-rwxr-xr-x[-rw-r--r--]src/decoration.c8
-rwxr-xr-xsrc/pokeblock.c173
-rw-r--r--src/pokemon_3.c6
12 files changed, 211 insertions, 228 deletions
diff --git a/asm/pokeblock.s b/asm/pokeblock.s
index eb173c3ba..4fc58f296 100755
--- a/asm/pokeblock.s
+++ b/asm/pokeblock.s
@@ -6,91 +6,6 @@
.text
- thumb_func_start sub_810B998
-sub_810B998: @ 810B998
- push {lr}
- ldr r0, _0810B9B0 @ =0x02000000
- ldr r1, _0810B9B4 @ =0x0001ffff
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x4
- bhi _0810BA48
- lsls r0, 2
- ldr r1, _0810B9B8 @ =_0810B9BC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0810B9B0: .4byte 0x02000000
-_0810B9B4: .4byte 0x0001ffff
-_0810B9B8: .4byte _0810B9BC
- .align 2, 0
-_0810B9BC:
- .4byte _0810B9D0
- .4byte _0810B9E4
- .4byte _0810B9F8
- .4byte _0810BA08
- .4byte _0810BA28
-_0810B9D0:
- ldr r0, _0810B9DC @ =gMenuPokeblock_Gfx
- ldr r1, _0810B9E0 @ =0x06008000
- bl LZDecompressVram
- b _0810BA0E
- .align 2, 0
-_0810B9DC: .4byte gMenuPokeblock_Gfx
-_0810B9E0: .4byte 0x06008000
-_0810B9E4:
- ldr r0, _0810B9F0 @ =gMenuPokeblock_Tilemap
- ldr r1, _0810B9F4 @ =gBGTilemapBuffers + 0x1000
- bl sub_800D238
- b _0810BA0E
- .align 2, 0
-_0810B9F0: .4byte gMenuPokeblock_Tilemap
-_0810B9F4: .4byte gBGTilemapBuffers + 0x1000
-_0810B9F8:
- ldr r0, _0810BA04 @ =gMenuPokeblock_Pal
- movs r1, 0
- movs r2, 0xC0
- bl LoadCompressedPalette
- b _0810BA0E
- .align 2, 0
-_0810BA04: .4byte gMenuPokeblock_Pal
-_0810BA08:
- ldr r0, _0810BA1C @ =gUnknown_083F7F74
- bl LoadCompressedObjectPic
-_0810BA0E:
- ldr r1, _0810BA20 @ =0x02000000
- ldr r0, _0810BA24 @ =0x0001ffff
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0810BA48
- .align 2, 0
-_0810BA1C: .4byte gUnknown_083F7F74
-_0810BA20: .4byte 0x02000000
-_0810BA24: .4byte 0x0001ffff
-_0810BA28:
- ldr r0, _0810BA3C @ =gUnknown_083F7F7C
- bl LoadCompressedObjectPalette
- ldr r0, _0810BA40 @ =0x02000000
- ldr r1, _0810BA44 @ =0x0001ffff
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- movs r0, 0x1
- b _0810BA4A
- .align 2, 0
-_0810BA3C: .4byte gUnknown_083F7F7C
-_0810BA40: .4byte 0x02000000
-_0810BA44: .4byte 0x0001ffff
-_0810BA48:
- movs r0, 0
-_0810BA4A:
- pop {r1}
- bx r1
- thumb_func_end sub_810B998
-
thumb_func_start sub_810BA50
sub_810BA50: @ 810BA50
push {r4,r5,lr}
@@ -2213,7 +2128,7 @@ sub_810CAE4: @ 810CAE4
lsrs r0, 24
movs r6, 0
movs r4, 0
- ldr r1, _0810CB40 @ =gUnknown_083F7E28
+ ldr r1, _0810CB40 @ =gPokeblockFlavorCompatibilityTable
mov r9, r1
lsls r1, r0, 2
adds r7, r1, r0
@@ -2252,7 +2167,7 @@ _0810CB2A:
pop {r1}
bx r1
.align 2, 0
-_0810CB40: .4byte gUnknown_083F7E28
+_0810CB40: .4byte gPokeblockFlavorCompatibilityTable
thumb_func_end sub_810CAE4
thumb_func_start sub_810CB44
diff --git a/data/pokeblock.s b/data/pokeblock.s
deleted file mode 100644
index 6d0b1890d..000000000
--- a/data/pokeblock.s
+++ /dev/null
@@ -1,125 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
-gUnknown_083F7E28:: @ 83F7E28
- .byte 0, 0, 0, 0, 0
- .byte 1, 0, 0, 0, -1
- .byte 1, 0, -1, 0, 0
- .byte 1, -1, 0, 0, 0
- .byte 1, 0, 0, -1, 0
- .byte -1, 0, 0, 0, 1
- .byte 0, 0, 0, 0, 0
- .byte 0, 0, -1, 0, 1
- .byte 0, -1, 0, 0, 1
- .byte 0, 0, 0, -1, 1
- .byte -1, 0, 1, 0, 0
- .byte 0, 0, 1, 0, -1
- .byte 0, 0, 0, 0, 0
- .byte 0, -1, 1, 0, 0
- .byte 0, 0, 1, -1, 0
- .byte -1, 1, 0, 0, 0
- .byte 0, 1, 0, 0, -1
- .byte 0, 1, -1, 0, 0
- .byte 0, 0, 0, 0, 0
- .byte 0, 1, 0, -1, 0
- .byte -1, 0, 0, 1, 0
- .byte 0, 0, 0, 1, -1
- .byte 0, 0, -1, 1, 0
- .byte 0, -1, 0, 1, 0
- .byte 0, 0, 0, 0, 0
-
- .align 2
-gUnknown_083F7EA8:: @ 83F7EA8
- .4byte sub_80A5B40, c2_exit_to_overworld_2_switch
- .4byte sub_802E424, c2_exit_to_overworld_2_switch
-
- .align 2
-gPokeblockNames:: @ 83F7EB8
- .4byte NULL
- .4byte ContestStatsText_RedPokeBlock
- .4byte ContestStatsText_BluePokeBlock
- .4byte ContestStatsText_PinkPokeBlock
- .4byte ContestStatsText_GreenPokeBlock
- .4byte ContestStatsText_YellowPokeBlock
- .4byte ContestStatsText_PurplePokeBlock
- .4byte ContestStatsText_IndigoPokeBlock
- .4byte ContestStatsText_BrownPokeBlock
- .4byte ContestStatsText_LiteBluePokeBlock
- .4byte ContestStatsText_OlivePokeBlock
- .4byte ContestStatsText_GrayPokeBlock
- .4byte ContestStatsText_BlackPokeBlock
- .4byte ContestStatsText_WhitePokeBlock
- .4byte ContestStatsText_GoldPokeBlock
-
- .align 2
-gUnknown_083F7EF4:: @ 83F7EF4
- .4byte OtherText_Use, sub_810C508
- .4byte OtherText_Toss, sub_810C5C0
- .4byte gOtherText_CancelNoTerminator, sub_810C748
- .4byte OtherText_Use, sub_810C788
- .4byte OtherText_Use, sub_810C854
-
-gUnknown_083F7F1C:: @ 83F7F1C
- .byte 0, 1, 2
-
-gUnknown_083F7F1F:: @ 83F7F1F
- .byte 3, 2
-
-gUnknown_083F7F21:: @ 83F7F21
- .byte 4, 2
-
- .align 2
-gUnknown_083F7F24:: @ 83F7F24
- .4byte sub_810C610
- .4byte sub_810C668
-
-@ unreferenced
- .byte 0x16, 0x17, 0x18, 0x21, 0x2F
-
- .align 2
-gOamData_83F7F34:: @ 83F7F34
- .2byte 0x0000
- .2byte 0xC000
- .2byte 0x0800
-
- .align 2
-gSpriteAnim_83F7F3C:: @ 83F7F3C
- obj_image_anim_frame 0, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_83F7F44:: @ 83F7F44
- .4byte gSpriteAnim_83F7F3C
-
- .align 2
-gSpriteAffineAnim_83F7F48:: @ 83F7F48
- obj_rot_scal_anim_frame 0x0, 0x0, -2, 2
- obj_rot_scal_anim_frame 0x0, 0x0, 2, 4
- obj_rot_scal_anim_frame 0x0, 0x0, -2, 4
- obj_rot_scal_anim_frame 0x0, 0x0, 2, 2
- obj_rot_scal_anim_end
-
- .align 2
-gSpriteAffineAnimTable_83F7F70:: @ 83F7F70
- .4byte gSpriteAffineAnim_83F7F48
-
- .align 2
-gUnknown_083F7F74:: @ 83F7F74
- obj_tiles gMenuPokeblockDevice_Gfx, 2048, 0x39d0
-
- .align 2
-gUnknown_083F7F7C:: @ 83F7F7C
- obj_pal gMenuPokeblockDevice_Pal, 0x39d0
-
- .align 2
-gSpriteTemplate_83F7F84:: @ 83F7F84
- spr_template 14800, 14800, gOamData_83F7F34, gSpriteAnimTable_83F7F44, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
-gUnknown_083F7F9C:: @ 83F7F9C
- .byte 1, 20, 0, 0, 0, 0, 20, 0
- .byte 2, 0, 20, 0, 0, 0, 20, 0
- .byte 3, 0, 0, 20, 0, 0, 20, 0
- .byte 4, 0, 0, 0, 20, 0, 20, 0
- .byte 5, 0, 0, 0, 0, 20, 20, 0
diff --git a/include/battle.h b/include/battle.h
index d93860094..a480ca95e 100644..100755
--- a/include/battle.h
+++ b/include/battle.h
@@ -308,6 +308,7 @@ void c3_0802FDF4(u8);
void sub_802E3E4(u8, int);
void nullsub_8(u8);
void sub_802E414(void);
+void sub_802E424(void);
// asm/battle_7.o
void move_anim_start_t4(u8 a, u8 b, u8 c, u8 d);
diff --git a/include/decoration.h b/include/decoration.h
index 2595d491a..7a6d8ef5a 100644..100755
--- a/include/decoration.h
+++ b/include/decoration.h
@@ -274,7 +274,7 @@ extern const u8 *const gUnknown_083EC5E4[];
extern const u8 *const gUnknown_083EC624[];
extern u8 gUnknown_020388F7[];
extern const struct MenuAction2 gUnknown_083EC604[];
-extern const struct MenuAction3 gUnknown_083EC634[];
+extern const struct YesNoFuncTable gUnknown_083EC634[];
extern const u8 gUnknown_083EC65A[];
extern const u8 gUnknown_083EC97C[];
extern const u8 gUnknown_083EC984[];
diff --git a/include/graphics.h b/include/graphics.h
index c3fe20996..36b11fd0a 100644..100755
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -2435,4 +2435,12 @@ extern const u8 gMonFrontPic_UnownQuestionMark[];
extern const u8 gMonBackPic_UnownQuestionMark[];
extern const u8 gMonIcon_UnownQuestionMark[];
+// src/pokeblock.c
+extern const u8 gMenuPokeblock_Gfx[];
+extern const u8 gMenuPokeblock_Tilemap[];
+extern const u8 gMenuPokeblock_Pal[];
+
+extern const u8 gMenuPokeblockDevice_Gfx[];
+extern const u8 gMenuPokeblockDevice_Pal[];
+
#endif // GUARD_GRAPHICS_H
diff --git a/include/menu.h b/include/menu.h
index 9eeebce60..7d4bc731b 100644..100755
--- a/include/menu.h
+++ b/include/menu.h
@@ -15,12 +15,6 @@ struct MenuAction2
void (*func)(u8);
};
-struct MenuAction3
-{
- void (*func1)(u8);
- void (*func2)(u8);
-};
-
extern const struct MenuAction gMenuYesNoItems[];
extern struct Window gMenuWindow;
diff --git a/include/pokeblock.h b/include/pokeblock.h
index 353c3d050..958ccec5f 100755
--- a/include/pokeblock.h
+++ b/include/pokeblock.h
@@ -1,6 +1,11 @@
#ifndef GUARD_POKEBLOCK_H
#define GUARD_POKEBLOCK_H
+struct YesNoCBTable {
+ void (*yesFunc)(void);
+ void (*noFunc)(void);
+};
+
extern u8 ewram[];
extern u8 gUnknown_02039244;
extern u8 gUnknown_02039248[2];
diff --git a/include/strings.h b/include/strings.h
index 89a78e478..a1fcc30cb 100644..100755
--- a/include/strings.h
+++ b/include/strings.h
@@ -902,4 +902,19 @@ extern const u8 gSystemText_NoSaveFileNoTime[];
extern const u8 gSystemText_ClockAdjustmentUsable[];
extern const u8 gSystemText_Saving[];
+extern const u8 ContestStatsText_RedPokeBlock[];
+extern const u8 ContestStatsText_BluePokeBlock[];
+extern const u8 ContestStatsText_PinkPokeBlock[];
+extern const u8 ContestStatsText_GreenPokeBlock[];
+extern const u8 ContestStatsText_YellowPokeBlock[];
+extern const u8 ContestStatsText_PurplePokeBlock[];
+extern const u8 ContestStatsText_IndigoPokeBlock[];
+extern const u8 ContestStatsText_BrownPokeBlock[];
+extern const u8 ContestStatsText_LiteBluePokeBlock[];
+extern const u8 ContestStatsText_OlivePokeBlock[];
+extern const u8 ContestStatsText_GrayPokeBlock[];
+extern const u8 ContestStatsText_BlackPokeBlock[];
+extern const u8 ContestStatsText_WhitePokeBlock[];
+extern const u8 ContestStatsText_GoldPokeBlock[];
+
#endif
diff --git a/ld_script.txt b/ld_script.txt
index 8ea76638d..6c4894d1e 100755
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -440,7 +440,6 @@ SECTIONS {
src/starter_choose.o(.rodata);
src/wallclock.o(.rodata);
src/pokeblock.o(.rodata);
- data/pokeblock.o(.rodata);
data/fldeff_flash.o(.rodata);
src/time_events.o(.rodata);
data/field_specials.o(.rodata);
diff --git a/src/decoration.c b/src/decoration.c
index 9eba54ad7..e829cb072 100644..100755
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -1396,7 +1396,7 @@ const u8 *const gUnknown_083EC624[] = {
gMenuText_GoBackToPrev
};
-const struct MenuAction3 gUnknown_083EC634[] = {
+const struct YesNoFuncTable gUnknown_083EC634[] = {
{sub_80FF5BC, sub_80FF058},
{sub_81017A0, sub_80FF058},
{sub_81017A0, sub_80FF058},
@@ -1871,16 +1871,16 @@ void sub_80FE948(u8 taskId)
gUnknown_020388F5 = gUnknown_020388F2 + gUnknown_020388F4;
if (gUnknown_020388F5 == gUnknown_020388D5)
{
- gUnknown_083EC634[gTasks[taskId].data[11]].func2(taskId);
+ gUnknown_083EC634[gTasks[taskId].data[11]].noFunc(taskId);
} else
{
- gUnknown_083EC634[gTasks[taskId].data[11]].func1(taskId);
+ gUnknown_083EC634[gTasks[taskId].data[11]].yesFunc(taskId);
}
} else if (gMain.newKeys & B_BUTTON)
{
HandleDestroyMenuCursors();
PlaySE(SE_SELECT);
- gUnknown_083EC634[gTasks[taskId].data[11]].func2(taskId);
+ gUnknown_083EC634[gTasks[taskId].data[11]].noFunc(taskId);
}
}
}
diff --git a/src/pokeblock.c b/src/pokeblock.c
index 76a06c5ea..7b67eb408 100755
--- a/src/pokeblock.c
+++ b/src/pokeblock.c
@@ -5,15 +5,158 @@
#include "global.h"
#include "rom4.h"
#include "sprite.h"
+#include "strings.h"
#include "task.h"
#include "unknown_task.h"
#include "text.h"
#include "main.h"
#include "menu.h"
#include "palette.h"
+#include "graphics.h"
+#include "decompress.h"
#include "menu_helpers.h"
+#include "battle.h"
+#include "item_menu.h"
#include "pokeblock.h"
+// rodata
+
+const s8 gPokeblockFlavorCompatibilityTable[][5] = {
+ // Cool, Beauty, Cute, Smart, Tough
+ { 0, 0, 0, 0, 0}, // Hardy
+ { 1, 0, 0, 0, -1}, // Lonely
+ { 1, 0, -1, 0, 0}, // Brave
+ { 1, -1, 0, 0, 0}, // Adamant
+ { 1, 0, 0, -1, 0}, // Naughty
+ { -1, 0, 0, 0, 1}, // Bold
+ { 0, 0, 0, 0, 0}, // Docile
+ { 0, 0, -1, 0, 1}, // Relaxed
+ { 0, -1, 0, 0, 1}, // Impish
+ { 0, 0, 0, -1, 1}, // Lax
+ { -1, 0, 1, 0, 0}, // Timid
+ { 0, 0, 1, 0, -1}, // Hasty
+ { 0, 0, 0, 0, 0}, // Serious
+ { 0, -1, 1, 0, 0}, // Jolly
+ { 0, 0, 1, -1, 0}, // Naive
+ { -1, 1, 0, 0, 0}, // Modest
+ { 0, 1, 0, 0, -1}, // Mild
+ { 0, 1, -1, 0, 0}, // Quiet
+ { 0, 0, 0, 0, 0}, // Bashful
+ { 0, 1, 0, -1, 0}, // Rash
+ { -1, 0, 0, 1, 0}, // Calm
+ { 0, 0, 0, 1, -1}, // Gentle
+ { 0, 0, -1, 1, 0}, // Sassy
+ { 0, -1, 0, 1, 0}, // Careful
+ { 0, 0, 0, 0, 0} // Quirky
+};
+
+void (*const gUnknown_083F7EA8[])(void) = {
+ sub_80A5B40,
+ c2_exit_to_overworld_2_switch,
+ sub_802E424,
+ c2_exit_to_overworld_2_switch
+};
+
+const u8 *const gPokeblockNames[] = {
+ NULL,
+ ContestStatsText_RedPokeBlock,
+ ContestStatsText_BluePokeBlock,
+ ContestStatsText_PinkPokeBlock,
+ ContestStatsText_GreenPokeBlock,
+ ContestStatsText_YellowPokeBlock,
+ ContestStatsText_PurplePokeBlock,
+ ContestStatsText_IndigoPokeBlock,
+ ContestStatsText_BrownPokeBlock,
+ ContestStatsText_LiteBluePokeBlock,
+ ContestStatsText_OlivePokeBlock,
+ ContestStatsText_GrayPokeBlock,
+ ContestStatsText_BlackPokeBlock,
+ ContestStatsText_WhitePokeBlock,
+ ContestStatsText_GoldPokeBlock
+};
+
+void sub_810C508(u8);
+void sub_810C5C0(u8);
+void sub_810C748(u8);
+void sub_810C788(u8);
+void sub_810C854(u8);
+
+const struct MenuAction2 gUnknown_083F7EF4[] = {
+ OtherText_Use, sub_810C508,
+ OtherText_Toss, sub_810C5C0,
+ gOtherText_CancelNoTerminator, sub_810C748,
+ OtherText_Use, sub_810C788,
+ OtherText_Use, sub_810C854,
+};
+
+const u8 gUnknown_083F7F1C[] = {0, 1, 2};
+const u8 gUnknown_083F7F1F[] = {3, 2};
+const u8 gUnknown_083F7F21[] = {4, 2};
+
+void sub_810C610(u8);
+void sub_810C668(u8);
+
+const struct YesNoFuncTable gUnknown_083F7F24[] = {sub_810C610, sub_810C668};
+
+const u8 UnreferencedData_083F7F2C[] = {0x16, 0x17, 0x18, 0x21, 0x2f};
+
+const struct OamData gOamData_83F7F34 = {
+ .size = 3,
+ .priority = 2
+};
+
+const union AnimCmd gSpriteAnim_83F7F3C[] = {
+ ANIMCMD_FRAME(.imageValue = 0, .duration = 0),
+ ANIMCMD_END
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F7F44[] = {
+ gSpriteAnim_83F7F3C
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_83F7F48[] = {
+ AFFINEANIMCMD_FRAME(0, 0, -2, 2),
+ AFFINEANIMCMD_FRAME(0, 0, 2, 4),
+ AFFINEANIMCMD_FRAME(0, 0, -2, 4),
+ AFFINEANIMCMD_FRAME(0, 0, 2, 2),
+ AFFINEANIMCMD_END
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_83F7F70[] = {
+ gSpriteAffineAnim_83F7F48
+};
+
+const struct CompressedSpriteSheet gUnknown_083F7F74 = {
+ gMenuPokeblockDevice_Gfx,
+ 0x800,
+ 0x39d0
+};
+
+const struct CompressedSpritePalette gUnknown_083F7F7C = {
+ gMenuPokeblockDevice_Pal,
+ 0x39d0
+};
+
+const struct SpriteTemplate gSpriteTemplate_83F7F84 = {
+ 0x39d0,
+ 0x39d0,
+ &gOamData_83F7F34,
+ gSpriteAnimTable_83F7F44,
+ NULL,
+ gDummySpriteAffineAnimTable,
+ SpriteCallbackDummy
+};
+
+const u8 gUnknown_083F7F9C[][8] = {
+ { 1, 20, 0, 0, 0, 0, 20, 0},
+ { 2, 0, 20, 0, 0, 0, 20, 0},
+ { 3, 0, 0, 20, 0, 0, 20, 0},
+ { 4, 0, 0, 0, 20, 0, 20, 0},
+ { 5, 0, 0, 0, 0, 20, 20, 0}
+};
+
+// text
+
static void sub_810B674(void)
{
AnimateSprites();
@@ -34,7 +177,7 @@ static void sub_810B68C(void)
DmaCopy16(3, src, dest, sizeof gBGTilemapBuffers[2]);
}
-bool8 sub_810B998(void);
+static bool8 sub_810B998(void);
u8 sub_810BA50(s16, s16, u8);
void sub_810BC98(void);
void sub_810BD08(void);
@@ -168,3 +311,31 @@ void sub_810B96C(void)
}
} while (sub_80F9344() != TRUE);
}
+
+static bool8 sub_810B998(void)
+{
+ switch (ewram[0x1ffff])
+ {
+ case 0:
+ LZDecompressVram(gMenuPokeblock_Gfx, (void *)VRAM + 0x8000);
+ ewram[0x1ffff]++;
+ break;
+ case 1:
+ sub_800D238(gMenuPokeblock_Tilemap, gBGTilemapBuffers[2]);
+ ewram[0x1ffff]++;
+ break;
+ case 2:
+ LoadCompressedPalette(gMenuPokeblock_Pal, 0, 0xc0);
+ ewram[0x1ffff]++;
+ break;
+ case 3:
+ LoadCompressedObjectPic(&gUnknown_083F7F74);
+ ewram[0x1ffff]++;
+ break;
+ case 4:
+ LoadCompressedObjectPalette(&gUnknown_083F7F7C);
+ ewram[0x1ffff] = 0;
+ return TRUE;
+ }
+ return FALSE;
+}
diff --git a/src/pokemon_3.c b/src/pokemon_3.c
index cb8eb2a46..9a2a5d8e4 100644
--- a/src/pokemon_3.c
+++ b/src/pokemon_3.c
@@ -70,7 +70,7 @@ extern u32 gTMHMLearnsets[][2];
extern u8 gBattleMonForms[];
extern const u8 BattleText_Wally[];
extern const u16 gHMMoves[];
-extern s8 gUnknown_083F7E28[];
+extern s8 gPokeblockFlavorCompatibilityTable[];
extern u8 gLastUsedAbility;
extern const u8 BattleText_PreventedSwitch[];
extern u16 gBattlePartyID[];
@@ -1238,13 +1238,13 @@ bool8 sub_8040A3C(u16 species)
s8 sub_8040A54(struct Pokemon *mon, u8 a2)
{
u8 nature = GetNature(mon);
- return gUnknown_083F7E28[nature * 5 + a2];
+ return gPokeblockFlavorCompatibilityTable[nature * 5 + a2];
}
s8 sub_8040A7C(u32 personality, u8 a2)
{
u8 nature = GetNatureFromPersonality(personality);
- return gUnknown_083F7E28[nature * 5 + a2];
+ return gPokeblockFlavorCompatibilityTable[nature * 5 + a2];
}
bool8 IsTradedMon(struct Pokemon *mon)