diff options
Diffstat (limited to 'src/easy_chat.c')
-rw-r--r-- | src/easy_chat.c | 1145 |
1 files changed, 917 insertions, 228 deletions
diff --git a/src/easy_chat.c b/src/easy_chat.c index 6a103dd7b..3c436246d 100644 --- a/src/easy_chat.c +++ b/src/easy_chat.c @@ -1,5 +1,3 @@ - -// Includes #include "global.h" #include "alloc.h" #include "bard_music.h" @@ -33,6 +31,7 @@ #include "constants/event_objects.h" #include "constants/flags.h" #include "constants/songs.h" +#include "constants/species.h" #define EZCHAT_TASK_STATE 0 #define EZCHAT_TASK_KIND 1 @@ -41,123 +40,6 @@ #define EZCHAT_TASK_UNK06 6 #define EZCHAT_TASK_SIZE 7 -struct EasyChatScreenTemplate -{ - u8 unk_00; - u8 numColumns; - u8 numRows; - u8 unk_03_0:7; - u8 unk_03_7:1; - const u8 *titleText; - const u8 *instructionsText1; - const u8 *instructionsText2; - const u8 *confirmText1; - const u8 *confirmText2; -}; - -struct EasyChatScreen -{ - /*0x00*/ u8 kind; - /*0x01*/ u8 templateId; - /*0x02*/ u8 numColumns; - /*0x03*/ u8 numRows; - /*0x04*/ u8 state; - /*0x05*/ s8 mainCursorColumn; - /*0x06*/ s8 mainCursorRow; - /*0x07*/ u8 unk_07; - /*0x08*/ u8 unk_08; - /*0x09*/ u8 unk_09; - /*0x0A*/ s8 unk_0a; - /*0x0B*/ s8 unk_0b; - /*0x0C*/ u8 unk_0c; - /*0x0D*/ u8 unk_0d; - /*0x0E*/ u8 unk_0e; - /*0x0F*/ u8 unk_0f; - /*0x10*/ s8 unk_10; - /*0x11*/ s8 unk_11; - /*0x12*/ u8 sizeParam; - /*0x13*/ u8 unk_13; - /*0x14*/ u8 unk_14[0x20]; - /*0x34*/ const u8 *titleText; - /*0x38*/ u16 *words; - /*0x3C*/ u16 ecWordBuffer[9]; -}; - -struct Unk203A11C -{ - u16 unk0; - u16 windowId; - u16 unk4; - u8 unk6; - u8 unk7; - s8 unk8; - u8 unk9; - u8 unkA; - u8 unkB[0xC1]; - u8 unkCC[0x202]; - u16 unk2CE; - int unk2D0; - int unk2D4; - struct Sprite *unk2D8; - struct Sprite *unk2DC; - struct Sprite *unk2E0; - struct Sprite *unk2E4; - struct Sprite *unk2E8; - struct Sprite *unk2EC; - struct Sprite *unk2F0; - struct Sprite *unk2F4; - struct Sprite *unk2F8; - struct Sprite *unk2FC; - u16 unk300[BG_SCREEN_SIZE / 2]; - u16 unkB00[BG_SCREEN_SIZE / 2]; -}; - -struct Unk08597C30 -{ - u8 unk0_0:5; - u8 unk0_5:3; - u8 unk1; - u8 unk2; - u8 unk3; -}; - -struct EasyChatWordInfo -{ - const u8 *text; - int alphabeticalOrder; - int enabled; -}; - -typedef union -{ - const u16 *valueList; - const struct EasyChatWordInfo *words; -} EasyChatGroupWordData; - -struct EasyChatGroup -{ - EasyChatGroupWordData wordData; - u16 numWords; - u16 numEnabledWords; -}; - -struct Unk203A120 -{ - u16 unk0; - u16 unk2[EC_NUM_GROUPS]; - u16 unk2E[27]; - u16 unk64[27][270]; - u8 filler3958[0x2C]; - u16 unk3984[0x10E]; - u16 unk3BA0; -}; /*size = 0x3BA4*/ - -struct EasyChatWordsByLetter -{ - const u16 *words; - int numWords; -}; - EWRAM_DATA struct EasyChatScreen *gEasyChatScreen = NULL; EWRAM_DATA struct Unk203A11C *gUnknown_0203A11C = 0; EWRAM_DATA struct Unk203A120 *gUnknown_0203A120 = 0; @@ -169,7 +51,6 @@ static void sub_811A2FC(u8); static void sub_811A4D0(MainCallback); static bool32 sub_811A88C(u16); static void sub_811A8A4(u16); -void sub_811A8F0(void); static bool8 EasyChat_AllocateResources(u8, u16 *, u8); static void EasyChat_FreeResources(void); static u16 sub_811AAAC(void); @@ -185,11 +66,11 @@ static u16 sub_811B0BC(void); static u16 sub_811B0E8(void); static u16 sub_811B0F8(void); static u16 sub_811B150(void); -u16 sub_811B1B4(void); -u8 sub_811BA68(void); +static u16 sub_811B1B4(void); +static u8 sub_811BA68(void); static u8 sub_811BCC8(u8); static void sub_811BDF0(u8 *); -void sub_811BF78(void); +static void sub_811BF78(void); static bool8 sub_811BF8C(void); static bool8 sub_811BFA4(void); static void sub_811C13C(void); @@ -198,9 +79,9 @@ static bool8 sub_811C170(void); static bool8 sub_811F28C(void); static void sub_811F2B8(void); static u8 sub_811F3AC(void); -int sub_811BA3C(void); -int sub_811B184(void); -int sub_811B264(void); +static int sub_811BA3C(void); +static int sub_811B184(void); +static int sub_811B264(void); static int sub_811B32C(void); static int sub_811B2B0(void); static int sub_811B33C(void); @@ -217,16 +98,16 @@ static void sub_811B454(void); static int sub_811BD64(void); static int sub_811BDB0(void); static int sub_811BD2C(void); -int sub_811BCF4(void); +static int sub_811BCF4(void); static u16 sub_811B8E8(void); static u8 sub_811F3B8(u8); static void sub_811F548(int, u16); static int sub_811B908(void); static u16 sub_811F5B0(void); static void sub_811B488(u16); -u16 sub_811B940(void); +static u16 sub_811B940(void); static u16 sub_811F578(u16); -int sub_811BF88(int); +static int sub_811BF88(int); static u16 sub_811B8C8(void); static int sub_811B568(u32); static int sub_811B634(u32); @@ -253,6 +134,7 @@ static void sub_811D2C8(void); static void sub_811D684(void); static void sub_811DE90(void); static void sub_811DEC4(void); +static void sub_811DF28(struct Sprite *); static void sub_811DE5C(u8, u8, u8, u8); static void sub_811E5D4(void); static void sub_811E720(void); @@ -322,7 +204,7 @@ static void sub_811D7C8(void); static int sub_811DE48(void); static void sub_811D7EC(void); static void sub_811D830(void); -void sub_811D058(u8, u8, const u8 *, u8, u8, u8, u8, u8, u8); +static void sub_811D058(u8, u8, const u8 *, u8, u8, u8, u8, u8, u8); static void sub_811DD84(void); static void sub_811D6F4(void); static void sub_811D758(void); @@ -344,49 +226,856 @@ static u8 *CopyEasyChatWordPadded(u8 *, u16, u16); static u8 sub_811F860(u16); static u16 sub_811F5C4(u16); static u16 sub_811F6B8(u16); -bool8 sub_811F764(u16, u8); +static bool8 sub_811F764(u16, u8); static int sub_811F838(u16); +static void sub_811A8CC(void); +static void sub_811A8F0(void); +static void sub_811A914(void); +static void sub_811A938(void); -extern const struct { +struct Unk8597530 +{ u16 word; MainCallback callback; -} gUnknown_08597530[4]; - -extern const struct EasyChatScreenTemplate gEasyChatScreenTemplates[21]; -extern const u8 gUnknown_08597748[][7]; -extern const u16 gUnknown_08597764[]; -extern const u16 gUnknown_0859776C[][2]; -extern const struct BgTemplate gUnknown_08597C54[4]; -extern const struct WindowTemplate gUnknown_08597C64[]; -extern const u32 gUnknown_08597B54[]; -extern const struct Unk08597C30 gUnknown_08597C30[]; -extern const u16 gUnknown_08597B14[]; -extern const u16 gUnknown_08597B34[]; -extern const u16 gUnknown_08597C1C[]; -extern const u16 gUnknown_08597C24[]; -extern const struct WindowTemplate gUnknown_08597C84; -extern const u8 gUnknown_08597C8C[4]; -extern const u8 *const gUnknown_08597C90[4]; -extern const struct SpriteSheet gUnknown_08597CA0[]; -extern const struct SpritePalette gUnknown_08597CC0[]; -extern const struct CompressedSpriteSheet gUnknown_08597CE8[]; -extern const struct SpriteTemplate gUnknown_08597D18; -extern const struct SpriteTemplate gUnknown_08597D68; -extern const struct SpriteTemplate gUnknown_08597DF0; -extern const struct SpriteTemplate gUnknown_08597DD0; -extern const struct SpriteTemplate gUnknown_08597E48; -extern const struct SpriteTemplate gUnknown_08597E30; -extern const u8 gUnknown_08597D08[]; -extern const u8 gUnknown_08597E60[][4]; -extern const u8 *const gUnknown_08597E6C[][4]; -extern const struct EasyChatGroup gEasyChatGroups[]; -extern const u16 gUnknown_0859E62C[]; -extern const u16 gUnknown_0859E634[]; -extern const u16 gUnknown_0859E640[]; -extern const u16 gUnknown_0859E64C[]; -extern const u8 *const gEasyChatGroupNamePointers[]; -extern const struct EasyChatWordsByLetter gEasyChatWordsByLetterPointers[]; -extern const u16 gUnknown_0859E658[1]; +}; + +static const struct Unk8597530 sUnknown_08597530[] = { + { + .word = 26, + .callback = sub_811A8CC, + }, + { + .word = 25, + .callback = sub_811A8F0, + }, + { + .word = 28, + .callback = sub_811A914, + }, + { + .word = 27, + .callback = sub_811A938, + }, +}; +static const struct EasyChatScreenTemplate gEasyChatScreenTemplates[] = { + { + .unk_00 = 0, + .numColumns = 2, + .numRows = 2, + .unk_03_0 = 0, + .unk_03_7 = 0, + .titleText = gText_Profile, + .instructionsText1 = gText_CombineFourWordsOrPhrases, + .instructionsText2 = gText_AndMakeYourProfile, + .confirmText1 = gText_YourProfile, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 1, + .numColumns = 2, + .numRows = 3, + .unk_03_0 = 1, + .unk_03_7 = 0, + .titleText = gText_AtTheBattlesStart, + .instructionsText1 = gText_CombineSixWordsOrPhrases, + .instructionsText2 = gText_AndMakeAMessage, + .confirmText1 = gText_YourFeelingAtTheBattlesStart, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 2, + .numColumns = 2, + .numRows = 3, + .unk_03_0 = 1, + .unk_03_7 = 0, + .titleText = gText_UponWinningABattle, + .instructionsText1 = gText_CombineSixWordsOrPhrases, + .instructionsText2 = gText_AndMakeAMessage, + .confirmText1 = gText_WhatYouSayIfYouWin, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 3, + .numColumns = 2, + .numRows = 3, + .unk_03_0 = 1, + .unk_03_7 = 0, + .titleText = gText_UponLosingABattle, + .instructionsText1 = gText_CombineSixWordsOrPhrases, + .instructionsText2 = gText_AndMakeAMessage, + .confirmText1 = gText_WhatYouSayIfYouLose, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 4, + .numColumns = 2, + .numRows = 5, + .unk_03_0 = 2, + .unk_03_7 = 0, + .titleText = NULL, + .instructionsText1 = gText_CombineNineWordsOrPhrases, + .instructionsText2 = gText_AndMakeAMessage2, + .confirmText1 = gText_TheMailMessage, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 5, + .numColumns = 2, + .numRows = 2, + .unk_03_0 = 5, + .unk_03_7 = 0, + .titleText = gText_Interview, + .instructionsText1 = gText_CombineFourWordsOrPhrases, + .instructionsText2 = gText_LetsReplyToTheInterview, + .confirmText1 = gText_TheAnswer, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 6, + .numColumns = 2, + .numRows = 3, + .unk_03_0 = 1, + .unk_03_7 = 0, + .titleText = gText_TheBardsSong, + .instructionsText1 = gText_ChangeJustOneWordOrPhrase, + .instructionsText2 = gText_AndImproveTheBardsSong, + .confirmText1 = gText_TheBardsSong2, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 7, + .numColumns = 1, + .numRows = 1, + .unk_03_0 = 4, + .unk_03_7 = 0, + .titleText = gText_Interview, + .instructionsText1 = gText_FindWordsThatDescribeYour, + .instructionsText2 = gText_FeelingsRightNow, + .confirmText1 = gText_TheAnswer, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 9, + .numColumns = 2, + .numRows = 1, + .unk_03_0 = 3, + .unk_03_7 = 0, + .titleText = gText_WhatsHipAndHappening, + .instructionsText1 = gText_CombineTwoWordsOrPhrases, + .instructionsText2 = gText_AndMakeATrendySaying, + .confirmText1 = gText_TheTrendySaying, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 16, + .numColumns = 2, + .numRows = 5, + .unk_03_0 = 7, + .unk_03_7 = 1, + .titleText = NULL, + .instructionsText1 = gText_AfterYouHaveReadTheQuiz, + .instructionsText2 = gText_QuestionPressTheAButton, + .confirmText1 = NULL, + .confirmText2 = NULL, + }, + { + .unk_00 = 15, + .numColumns = 1, + .numRows = 1, + .unk_03_0 = 6, + .unk_03_7 = 1, + .titleText = gText_TheQuizAnswerIs, + .instructionsText1 = gText_OutOfTheListedChoices, + .instructionsText2 = gText_SelectTheAnswerToTheQuiz, + .confirmText1 = gText_TheAnswerColon, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 17, + .numColumns = 2, + .numRows = 5, + .unk_03_0 = 8, + .unk_03_7 = 1, + .titleText = NULL, + .instructionsText1 = gText_CombineNineWordsOrPhrases, + .instructionsText2 = gText_AndCreateAQuiz, + .confirmText1 = gText_IsThisQuizOK, + .confirmText2 = NULL, + }, + { + .unk_00 = 18, + .numColumns = 1, + .numRows = 1, + .unk_03_0 = 6, + .unk_03_7 = 1, + .titleText = gText_TheQuizAnswerIs, + .instructionsText1 = gText_PickAWordOrPhraseAnd, + .instructionsText2 = gText_SetTheQuizAnswer, + .confirmText1 = gText_IsThisQuizOK, + .confirmText2 = NULL, + }, + { + .unk_00 = 6, + .numColumns = 2, + .numRows = 3, + .unk_03_0 = 1, + .unk_03_7 = 0, + .titleText = gText_TheBardsSong, + .instructionsText1 = gText_ChangeJustOneWordOrPhrase, + .instructionsText2 = gText_AndImproveTheBardsSong, + .confirmText1 = gText_TheBardsSong2, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 19, + .numColumns = 2, + .numRows = 3, + .unk_03_0 = 1, + .unk_03_7 = 0, + .titleText = gText_ApprenticesPhrase, + .instructionsText1 = gText_FindWordsWhichFit, + .instructionsText2 = gText_TheTrainersImage, + .confirmText1 = gText_ApprenticePhrase, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 13, + .numColumns = 2, + .numRows = 1, + .unk_03_0 = 3, + .unk_03_7 = 0, + .titleText = gText_GoodSaying, + .instructionsText1 = gText_CombineTwoWordsOrPhrases2, + .instructionsText2 = gText_ToTeachHerAGoodSaying, + .confirmText1 = gText_TheAnswer, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 10, + .numColumns = 1, + .numRows = 1, + .unk_03_0 = 4, + .unk_03_7 = 0, + .titleText = gText_Interview, + .instructionsText1 = gText_FindWordsThatDescribeYour, + .instructionsText2 = gText_FeelingsRightNow, + .confirmText1 = gText_TheAnswer, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 12, + .numColumns = 1, + .numRows = 1, + .unk_03_0 = 4, + .unk_03_7 = 0, + .titleText = gText_Interview, + .instructionsText1 = gText_FindWordsThatDescribeYour, + .instructionsText2 = gText_FeelingsRightNow, + .confirmText1 = gText_TheAnswer, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 11, + .numColumns = 1, + .numRows = 1, + .unk_03_0 = 4, + .unk_03_7 = 0, + .titleText = gText_Interview, + .instructionsText1 = gText_FindWordsThatDescribeYour, + .instructionsText2 = gText_FeelingsRightNow, + .confirmText1 = gText_TheAnswer, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 14, + .numColumns = 1, + .numRows = 1, + .unk_03_0 = 4, + .unk_03_7 = 0, + .titleText = gText_FansQuestion, + .instructionsText1 = gText_FindWordsWhichFit, + .instructionsText2 = gText_TheTrainersImage, + .confirmText1 = gText_TheImage, + .confirmText2 = gText_IsAsShownOkay, + }, + { + .unk_00 = 20, + .numColumns = 2, + .numRows = 2, + .unk_03_0 = 0, + .unk_03_7 = 0, + .titleText = gText_Questionnaire, + .instructionsText1 = gText_CombineFourWordsOrPhrases, + .instructionsText2 = gText_AndFillOutTheQuestionnaire, + .confirmText1 = gText_TheAnswer, + .confirmText2 = gText_IsAsShownOkay, + }, +}; + +static const u8 sUnknown_08597748[][7] = { + { 1, 2, 3, 4, 5, 6, 0}, + { 7, 8, 9, 10, 11, 12, 0}, + {13, 14, 15, 16, 17, 18, 19}, + {20, 21, 22, 23, 24, 25, 26}, +}; + +static const u16 sMysteryGiftPhrase[] = { + EC_WORD_LINK, + EC_WORD_TOGETHER, + EC_WORD_WITH, + EC_WORD_ALL, +}; + +static const u16 sBerryMasterWifePhrases[][2] = { + {EC_WORD_GREAT, EC_WORD_BATTLE}, + {EC_WORD_CHALLENGE, EC_WORD_CONTEST}, + {EC_WORD_OVERWHELMING, EC_POKEMON(LATIAS)}, + {EC_WORD_COOL, EC_POKEMON(LATIOS)}, + {EC_WORD_SUPER, EC_WORD_HUSTLE}, +}; + +static const u16 sUnknown_08597780[] = INCBIN_U16("graphics/misc/interview_triangle_cursor.gbapal"); +static const u32 sUnknown_085977A0[] = INCBIN_U32("graphics/misc/interview_triangle_cursor.4bpp"); +static const u32 sUnknown_085977C0[] = INCBIN_U32("graphics/misc/interview_arrow.4bpp"); +static const u32 sUnknown_085978C0[] = INCBIN_U32("graphics/misc/interview_buttons.4bpp"); +static const u16 sUnknown_085979C0[] = INCBIN_U16("graphics/misc/interview_frame.gbapal"); +static const u32 sUnknown_085979E0[] = INCBIN_U32("graphics/misc/interview_frame.4bpp.lz"); +static const u16 sUnknown_08597B14[] = INCBIN_U16("graphics/misc/interview_frame_orange.gbapal"); +static const u16 sUnknown_08597B34[] = INCBIN_U16("graphics/misc/interview_frame_green.gbapal"); +static const u32 sUnknown_08597B54[] = INCBIN_U32("graphics/misc/interview_frame_2.4bpp.lz"); +static const u16 sUnknown_08597C1C[] = INCBIN_U16("graphics/misc/8597C1C.gbapal"); +static const u16 sUnknown_08597C24[] = INCBIN_U16("graphics/misc/8597C24.gbapal"); + +static const struct Unk08597C30 gUnknown_08597C30[] = { + { + .unk0_0 = 3, + .unk0_5 = 4, + .unk1 = 24, + .unk2 = 4, + .unk3 = 0, + }, + { + .unk0_0 = 3, + .unk0_5 = 3, + .unk1 = 24, + .unk2 = 6, + .unk3 = 0, + }, + { + .unk0_0 = 3, + .unk0_5 = 0, + .unk1 = 24, + .unk2 = 10, + .unk3 = 0, + }, + { + .unk0_0 = 3, + .unk0_5 = 5, + .unk1 = 24, + .unk2 = 2, + .unk3 = 0, + }, + { + .unk0_0 = 16, + .unk0_5 = 5, + .unk1 = 12, + .unk2 = 2, + .unk3 = 0, + }, + { + .unk0_0 = 3, + .unk0_5 = 4, + .unk1 = 24, + .unk2 = 4, + .unk3 = 0, + }, + { + .unk0_0 = 9, + .unk0_5 = 4, + .unk1 = 12, + .unk2 = 2, + .unk3 = 1, + }, + { + .unk0_0 = 5, + .unk0_5 = 3, + .unk1 = 0x14, + .unk2 = 10, + .unk3 = 3, + }, + { + .unk0_0 = 3, + .unk0_5 = 0, + .unk1 = 24, + .unk2 = 10, + .unk3 = 2, + }, +}; + +static const struct BgTemplate sEasyChatBgTemplates[] = { + { + .bg = 0, + .charBaseIndex = 0, + .mapBaseIndex = 28, + .screenSize = 0, + .paletteMode = 0, + .priority = 0, + .baseTile = 0, + }, + { + .bg = 1, + .charBaseIndex = 3, + .mapBaseIndex = 29, + .screenSize = 0, + .paletteMode = 0, + .priority = 1, + .baseTile = 0, + }, + { + .bg = 2, + .charBaseIndex = 0, + .mapBaseIndex = 30, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0x80, + }, + { + .bg = 3, + .charBaseIndex = 2, + .mapBaseIndex = 31, + .screenSize = 0, + .paletteMode = 0, + .priority = 3, + .baseTile = 0, + }, +}; + +static const struct WindowTemplate sEasyChatWindowTemplates[] = { + { + .bg = 1, + .tilemapLeft = 6, + .tilemapTop = 0, + .width = 18, + .height = 2, + .paletteNum = 10, + .baseBlock = 0x10, + }, + { + .bg = 0, + .tilemapLeft = 3, + .tilemapTop = 15, + .width = 24, + .height = 4, + .paletteNum = 15, + .baseBlock = 0xA, + }, + { + .bg = 2, + .tilemapLeft = 1, + .tilemapTop = 0, + .width = 28, + .height = 32, + .paletteNum = 3, + .baseBlock = 0, + }, + DUMMY_WIN_TEMPLATE, +}; + +static const struct WindowTemplate sEasyChatYesNoWindowTemplate = { + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 9, + .width = 5, + .height = 4, + .paletteNum = 15, + .baseBlock = 0x6A, +}; + +static const u8 sText_Clear17[] = _("{CLEAR 17}"); + +static const u8 *const sUnknown_08597C90[] = { + gUnknown_862B810, + gUnknown_862B832, + gUnknown_862B84B, + gUnknown_862B86C, +}; + +static const struct SpriteSheet sUnknown_08597CA0[] = { + { + .data = sUnknown_085977A0, + .size = 0x0020, + .tag = 0 + }, + { + .data = sUnknown_085977C0, + .size = 0x0100, + .tag = 2 + }, + { + .data = sUnknown_085978C0, + .size = 0x0100, + .tag = 3 + }, + {0} +}; + +static const struct SpritePalette sUnknown_08597CC0[] = { + { + .data = sUnknown_08597780, + .tag = 0, + }, + { + .data = gEasyChatCursor_Pal, + .tag = 1, + }, + { + .data = gEasyChatRightWindow_Pal, + .tag = 2, + }, + { + .data = sUnknown_085979C0, + .tag = 3, + }, + {0} +}; + +static const struct CompressedSpriteSheet sUnknown_08597CE8[] = { + { + .data = sUnknown_085979E0, + .size = 0x0800, + .tag = 5, + }, + { + .data = gEasyChatCursor_Gfx, + .size = 0x1000, + .tag = 1, + }, + { + .data = gEasyChatRightWindow_Gfx, + .size = 0x0800, + .tag = 6, + }, + { + .data = gEasyChatMode_Gfx, + .size = 0x1000, + .tag = 4, + }, +}; + +static const u8 sUnknown_08597D08[] = {0, 12, 24, 56, 68, 80, 92}; + +static const struct OamData sOamData_8597D10 = { + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .mosaic = 0, + .bpp = ST_OAM_4BPP, + .shape = ST_OAM_SQUARE, + .x = 0, + .matrixNum = 0, + .size = 0, + .tileNum = 0, + .priority = 3, + .paletteNum = 0, + .affineParam = 0, +}; + +static const struct SpriteTemplate sUnknown_08597D18 = { + .tileTag = 0, + .paletteTag = 0, + .oam = &sOamData_8597D10, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = sub_811DF28, +}; + +static const struct OamData sUnknown_08597D30 = { + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .mosaic = 0, + .bpp = ST_OAM_4BPP, + .shape = ST_OAM_H_RECTANGLE, + .x = 0, + .matrixNum = 0, + .size = 3, + .tileNum = 0, + .priority = 1, + .paletteNum = 0, + .affineParam = 0, +}; + +static const union AnimCmd sUnknown_08597D38[] = { + ANIMCMD_FRAME(0, 0), + ANIMCMD_END, +}; + +static const union AnimCmd sUnknown_08597D40[] = { + ANIMCMD_FRAME(32, 0), + ANIMCMD_END, +}; + +static const union AnimCmd sUnknown_08597D48[] = { + ANIMCMD_FRAME(64, 0), + ANIMCMD_END, +}; + +static const union AnimCmd sUnknown_08597D50[] = { + ANIMCMD_FRAME(96, 0), + ANIMCMD_END, +}; + +static const union AnimCmd *const sUnknown_08597D58[] = { + sUnknown_08597D38, + sUnknown_08597D40, + sUnknown_08597D48, + sUnknown_08597D50, +}; + +static const struct SpriteTemplate sUnknown_08597D68 = { + .tileTag = 1, + .paletteTag = 1, + .oam = &sUnknown_08597D30, + .anims = sUnknown_08597D58, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = sub_811DF28, +}; + +static const struct OamData sUnknown_08597D80 = { + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .mosaic = 0, + .bpp = ST_OAM_4BPP, + .shape = ST_OAM_H_RECTANGLE, + .x = 0, + .matrixNum = 0, + .size = 3, + .tileNum = 0, + .priority = 1, + .paletteNum = 0, + .affineParam = 0, +}; + +static const union AnimCmd sUnknown_08597D88[] = { + ANIMCMD_FRAME(96, 0), + ANIMCMD_END, +}; + +static const union AnimCmd sUnknown_08597D90[] = { + ANIMCMD_FRAME(64, 4), + ANIMCMD_FRAME(32, 4), + ANIMCMD_END, +}; + +static const union AnimCmd sUnknown_08597D9C[] = { + ANIMCMD_FRAME(64, 4), + ANIMCMD_FRAME(0, 4), + ANIMCMD_END, +}; + +static const union AnimCmd sUnknown_08597DA8[] = { + ANIMCMD_FRAME(64, 4), + ANIMCMD_FRAME(96, 0), + ANIMCMD_END, +}; + +static const union AnimCmd sUnknown_08597DB4[] = { + ANIMCMD_FRAME(64, 4), + ANIMCMD_END, +}; + +static const union AnimCmd *const sUnknown_08597DBC[] = { + sUnknown_08597D88, + sUnknown_08597D90, + sUnknown_08597D9C, + sUnknown_08597DA8, + sUnknown_08597DB4, +}; + +static const struct SpriteTemplate sUnknown_08597DD0 = { + .tileTag = 4, + .paletteTag = 2, + .oam = &sUnknown_08597D80, + .anims = sUnknown_08597DBC, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; + +static const struct OamData sUnknown_08597DE8 = { + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .mosaic = 0, + .bpp = ST_OAM_4BPP, + .shape = ST_OAM_SQUARE, + .x = 0, + .matrixNum = 0, + .size = 3, + .tileNum = 0, + .priority = 3, + .paletteNum = 0, + .affineParam = 0, +}; + +static const struct SpriteTemplate sUnknown_08597DF0 = { + .tileTag = 6, + .paletteTag = 2, + .oam = &sUnknown_08597DE8, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; + +static const struct OamData sUnknown_08597E08 = { + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .mosaic = 0, + .bpp = ST_OAM_4BPP, + .shape = ST_OAM_H_RECTANGLE, + .x = 0, + .matrixNum = 0, + .size = 1, + .tileNum = 0, + .priority = 1, + .paletteNum = 0, + .affineParam = 0, +}; + +static const struct OamData gUnknown_08597E10 = { + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .mosaic = 0, + .bpp = ST_OAM_4BPP, + .shape = ST_OAM_SQUARE, + .x = 0, + .matrixNum = 0, + .size = 1, + .tileNum = 0, + .priority = 1, + .paletteNum = 0, + .affineParam = 0, +}; + +static const union AnimCmd sUnknown_08597E18[] = { + ANIMCMD_FRAME(0, 0), + ANIMCMD_END, +}; + +static const union AnimCmd sUnknown_08597E20[] = { + ANIMCMD_FRAME(4, 0), + ANIMCMD_END, +}; + +static const union AnimCmd *const sUnknown_08597E28[] = { + sUnknown_08597E18, + sUnknown_08597E20, +}; + +static const struct SpriteTemplate sUnknown_08597E30 = { + .tileTag = 3, + .paletteTag = 2, + .oam = &sUnknown_08597E08, + .anims = sUnknown_08597E28, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; + +static const struct SpriteTemplate sUnknown_08597E48 = { + .tileTag = 2, + .paletteTag = 2, + .oam = &gUnknown_08597E10, + .anims = sUnknown_08597E28, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; + +static const u8 sUnknown_08597E60[][4] = { + {16, 111, 196, 0}, + {16, 78, 130, 160}, + {16, 80, 134, 170}, +}; + +static const u8 *const sFooterTextOptions[][4] = { + {gText_DelAll, gText_Cancel5, gText_Ok2, NULL}, + {gText_DelAll, gText_Cancel5, gText_Ok2, gText_Quiz}, + {gText_DelAll, gText_Cancel5, gText_Ok2, gText_Answer}, +}; + +#include "data/easy_chat/easy_chat_groups.h" +#include "data/easy_chat/easy_chat_words_by_letter.h" + +const u8 *const gEasyChatGroupNamePointers[] = { + [EC_GROUP_POKEMON] = gEasyChatGroupName_Pokemon, + [EC_GROUP_TRAINER] = gEasyChatGroupName_Trainer, + [EC_GROUP_STATUS] = gEasyChatGroupName_Status, + [EC_GROUP_BATTLE] = gEasyChatGroupName_Battle, + [EC_GROUP_GREETINGS] = gEasyChatGroupName_Greetings, + [EC_GROUP_PEOPLE] = gEasyChatGroupName_People, + [EC_GROUP_VOICES] = gEasyChatGroupName_Voices, + [EC_GROUP_SPEECH] = gEasyChatGroupName_Speech, + [EC_GROUP_ENDINGS] = gEasyChatGroupName_Endings, + [EC_GROUP_FEELINGS] = gEasyChatGroupName_Feelings, + [EC_GROUP_CONDITIONS] = gEasyChatGroupName_Conditions, + [EC_GROUP_ACTIONS] = gEasyChatGroupName_Actions, + [EC_GROUP_LIFESTYLE] = gEasyChatGroupName_Lifestyle, + [EC_GROUP_HOBBIES] = gEasyChatGroupName_Hobbies, + [EC_GROUP_TIME] = gEasyChatGroupName_Time, + [EC_GROUP_MISC] = gEasyChatGroupName_Misc, + [EC_GROUP_ADJECTIVES] = gEasyChatGroupName_Adjectives, + [EC_GROUP_EVENTS] = gEasyChatGroupName_Events, + [EC_GROUP_MOVE_1] = gEasyChatGroupName_Move1, + [EC_GROUP_MOVE_2] = gEasyChatGroupName_Move2, + [EC_GROUP_TRENDY_SAYING] = gEasyChatGroupName_TrendySaying, + [EC_GROUP_POKEMON_2] = gEasyChatGroupName_Pokemon2, +}; + +static const u16 sUnknown_0859E62C[] = { + EC_WORD_I_AM, + EC_WORD_A, + EC_WORD_POKEMON, + EC_WORD_FRIEND, +}; + +static const u16 sUnknown_0859E634[] = { + EC_WORD_ARE, + EC_WORD_YOU, + EC_WORD_READY, + EC_WORD_QUES, + EC_WORD_HERE_I_COME, + EC_WORD_EXCL, +}; + +static const u16 sUnknown_0859E640[] = { + EC_WORD_YAY, + EC_WORD_YAY, + EC_WORD_EXCL_EXCL, + EC_WORD_I_VE, + EC_WORD_WON, + EC_WORD_EXCL_EXCL, +}; + +static const u16 sUnknown_0859E64C[] = { + EC_WORD_TOO, + EC_WORD_BAD, + EC_WORD_ELLIPSIS, + EC_WORD_WE, + EC_WORD_LOST, + EC_WORD_ELLIPSIS, +}; + +static const u16 sUnknown_0859E658[] = { + SPECIES_DEOXYS, +}; void sub_811A20C(u8 kind, u16 *words, MainCallback callback, u8 sizeParam) { @@ -678,9 +1367,9 @@ static int sub_811A868(u16 word) { int i; - for (i = 0; i < ARRAY_COUNT(gUnknown_08597530); i ++) + for (i = 0; i < ARRAY_COUNT(sUnknown_08597530); i ++) { - if (word == gUnknown_08597530[i].word) + if (word == sUnknown_08597530[i].word) return i; } return -1; @@ -697,25 +1386,25 @@ static void sub_811A8A4(u16 word) i = sub_811A868(word); ResetTasks(); - sub_811A4D0(gUnknown_08597530[i].callback); + sub_811A4D0(sUnknown_08597530[i].callback); } -void sub_811A8CC(void) +static void sub_811A8CC(void) { sub_811A20C(0xF, &gSaveBlock1Ptr->lilycoveLady.quiz.unk_016, CB2_ReturnToFieldContinueScript, 3); } -void sub_811A8F0(void) +static void sub_811A8F0(void) { sub_811A20C(0x10, gSaveBlock1Ptr->lilycoveLady.quiz.unk_002, CB2_ReturnToFieldContinueScript, 3); } -void sub_811A914(void) +static void sub_811A914(void) { sub_811A20C(0x12, &gSaveBlock1Ptr->lilycoveLady.quiz.unk_014, CB2_ReturnToFieldContinueScript, 3); } -void sub_811A938(void) +static void sub_811A938(void) { sub_811A20C(0x11, gSaveBlock1Ptr->lilycoveLady.quiz.unk_002, CB2_ReturnToFieldContinueScript, 3); } @@ -1157,7 +1846,7 @@ static u16 sub_811B150(void) } } -int sub_811B184(void) +static int sub_811B184(void) { gEasyChatScreen->unk_08 = gEasyChatScreen->state; if (gEasyChatScreen->kind != 6) @@ -1173,7 +1862,7 @@ int sub_811B184(void) } } -u16 sub_811B1B4(void) +static u16 sub_811B1B4(void) { gEasyChatScreen->unk_08 = gEasyChatScreen->state; if (gEasyChatScreen->kind == 17) @@ -1250,7 +1939,7 @@ u16 sub_811B1B4(void) } } -int sub_811B264(void) +static int sub_811B264(void) { gEasyChatScreen->unk_08 = gEasyChatScreen->state; switch (gEasyChatScreen->kind) @@ -1681,10 +2370,10 @@ static int sub_811B908(void) { int var0 = (u8)gEasyChatScreen->unk_0a < 7 ? gEasyChatScreen->unk_0a : 0; int var1 = (u8)gEasyChatScreen->unk_0b < 4 ? gEasyChatScreen->unk_0b : 0; - return gUnknown_08597748[var1][var0]; + return sUnknown_08597748[var1][var0]; } -u16 sub_811B940(void) +static u16 sub_811B940(void) { return 2 * (gEasyChatScreen->unk_11 + gEasyChatScreen->unk_0e) + gEasyChatScreen->unk_10; } @@ -1736,7 +2425,7 @@ static u8 sub_811BA1C(void) return sub_811B940() >= sub_811F5B0() ? 1 : 0; } -int sub_811BA3C(void) +static int sub_811BA3C(void) { return gEasyChatScreenTemplates[gEasyChatScreen->templateId].unk_03_7; } @@ -1746,7 +2435,7 @@ u8 sub_811BA5C(void) return gEasyChatScreen->kind; } -u8 sub_811BA68(void) +static u8 sub_811BA68(void) { return gEasyChatScreenTemplates[gEasyChatScreen->templateId].unk_03_0; } @@ -1927,7 +2616,7 @@ static u8 sub_811BCC8(u8 entryType) return 0; } -int sub_811BCF4(void) +static int sub_811BCF4(void) { int i; @@ -2046,7 +2735,7 @@ static void sub_811BE9C(void) static int sub_811BF20(void) { - return sub_811BC7C(gUnknown_08597764, 4) == 0; + return sub_811BC7C(sMysteryGiftPhrase, ARRAY_COUNT(sMysteryGiftPhrase)) == 0; } static u16 sub_811BF40(void) @@ -2054,19 +2743,19 @@ static u16 sub_811BF40(void) int i; for (i = 0; i < 5; i++) { - if (!sub_811BC7C(gUnknown_0859776C[i], 2)) + if (!sub_811BC7C(sBerryMasterWifePhrases[i], ARRAY_COUNT(*sBerryMasterWifePhrases))) return i + 1; } return 0; } -void sub_811BF78(void) +static void sub_811BF78(void) { gEasyChatScreen->unk_13 = 0; } -int sub_811BF88(int easyChatWord) +static int sub_811BF88(int easyChatWord) { return 0; } @@ -2085,10 +2774,10 @@ static bool8 sub_811BFA4(void) { case 0: ResetBgsAndClearDma3BusyFlags(0); - InitBgsFromTemplates(0, gUnknown_08597C54, ARRAY_COUNT(gUnknown_08597C54)); + InitBgsFromTemplates(0, sEasyChatBgTemplates, ARRAY_COUNT(sEasyChatBgTemplates)); SetBgTilemapBuffer(3, gUnknown_0203A11C->unkB00); SetBgTilemapBuffer(1, gUnknown_0203A11C->unk300); - InitWindows(gUnknown_08597C64); + InitWindows(sEasyChatWindowTemplates); DeactivateAllTextPrinters(); sub_811CF64(); sub_811CF04(); @@ -2104,7 +2793,7 @@ static bool8 sub_811BFA4(void) CopyBgTilemapBufferToVram(3); break; case 2: - DecompressAndLoadBgGfxUsingHeap(1, gUnknown_08597B54, 0, 0, 0); + DecompressAndLoadBgGfxUsingHeap(1, sUnknown_08597B54, 0, 0, 0); CopyBgTilemapBufferToVram(1); break; case 3: @@ -2984,12 +3673,12 @@ static void sub_811CF64(void) { ResetPaletteFade(); LoadPalette(gEasyChatMode_Pal, 0, 32); - LoadPalette(gUnknown_08597B14, 1 * 16, 32); - LoadPalette(gUnknown_08597B34, 4 * 16, 32); - LoadPalette(gUnknown_08597C1C, 10 * 16, 8); - LoadPalette(gUnknown_08597C24, 11 * 16, 12); - LoadPalette(gUnknown_08597C24, 15 * 16, 12); - LoadPalette(gUnknown_08597C24, 3 * 16, 12); + LoadPalette(sUnknown_08597B14, 1 * 16, 32); + LoadPalette(sUnknown_08597B34, 4 * 16, 32); + LoadPalette(sUnknown_08597C1C, 10 * 16, 8); + LoadPalette(sUnknown_08597C24, 11 * 16, 12); + LoadPalette(sUnknown_08597C24, 15 * 16, 12); + LoadPalette(sUnknown_08597C24, 3 * 16, 12); } static void sub_811CFCC(void) @@ -3011,7 +3700,7 @@ void sub_811D028(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, vo AddTextPrinterParameterized(windowId, fontId, str, x, y, speed, callback); } -void sub_811D058(u8 windowId, u8 fontId, const u8 *str, u8 left, u8 top, u8 speed, u8 red, u8 green, u8 blue) +static void sub_811D058(u8 windowId, u8 fontId, const u8 *str, u8 left, u8 top, u8 speed, u8 red, u8 green, u8 blue) { u8 color[3]; color[0] = red; @@ -3082,7 +3771,7 @@ static void sub_811D104(u8 arg0) static void sub_811D214(u8 initialCursorPos) { - CreateYesNoMenu(&gUnknown_08597C84, 1, 14, initialCursorPos); + CreateYesNoMenu(&sEasyChatYesNoWindowTemplate, 1, 14, initialCursorPos); } static void sub_811D230(void) @@ -3123,7 +3812,7 @@ static void sub_811D2C8(void) FillWindowPixelBuffer(gUnknown_0203A11C->windowId, 0x11); for (i = 0; i < numRows; i++) { - memcpy(spC, gUnknown_08597C8C, sizeof(gUnknown_08597C8C)); + memcpy(spC, sText_Clear17, sizeof(sText_Clear17)); if (var1) spC[2] = 6; @@ -3314,8 +4003,8 @@ static void sub_811D758(void) { u32 i; - for (i = 0; i < 4; i++) - sub_811D028(2, 1, gUnknown_08597C90[i], 10, 97 + i * 16, 0xFF, NULL); + for (i = 0; i < ARRAY_COUNT(sUnknown_08597C90); i++) + sub_811D028(2, 1, sUnknown_08597C90[i], 10, 97 + i * 16, 0xFF, NULL); } static void sub_811D794(void) @@ -3647,10 +4336,10 @@ static void sub_811DE90(void) { u32 i; - LoadSpriteSheets(gUnknown_08597CA0); - LoadSpritePalettes(gUnknown_08597CC0); - for (i = 0; i < 4; i++) - LoadCompressedSpriteSheet(&gUnknown_08597CE8[i]); + LoadSpriteSheets(sUnknown_08597CA0); + LoadSpritePalettes(sUnknown_08597CC0); + for (i = 0; i < ARRAY_COUNT(sUnknown_08597CE8); i++) + LoadCompressedSpriteSheet(&sUnknown_08597CE8[i]); } static void sub_811DEC4(void) @@ -3658,12 +4347,12 @@ static void sub_811DEC4(void) u8 var0 = sub_811BA68(); int x = gUnknown_08597C30[var0].unk0_0 * 8 + 13; int y = gUnknown_08597C30[var0].unk0_5 * 8 + 8; - u8 spriteId = CreateSprite(&gUnknown_08597D18, x, y, 2); + u8 spriteId = CreateSprite(&sUnknown_08597D18, x, y, 2); gUnknown_0203A11C->unk2D8 = &gSprites[spriteId]; gSprites[spriteId].data[1] = 1; } -void sub_811DF28(struct Sprite *sprite) +static void sub_811DF28(struct Sprite *sprite) { if (sprite->data[1]) { @@ -3698,11 +4387,11 @@ static void sub_811DFB0(void) static void sub_811DFC8(void) { - u8 spriteId = CreateSprite(&gUnknown_08597D68, 0, 0, 3); + u8 spriteId = CreateSprite(&sUnknown_08597D68, 0, 0, 3); gUnknown_0203A11C->unk2DC = &gSprites[spriteId]; gUnknown_0203A11C->unk2DC->pos2.x = 32; - spriteId = CreateSprite(&gUnknown_08597D68, 0, 0, 3); + spriteId = CreateSprite(&sUnknown_08597D68, 0, 0, 3); gUnknown_0203A11C->unk2E0 = &gSprites[spriteId]; gUnknown_0203A11C->unk2E0->pos2.x = -32; @@ -3773,7 +4462,7 @@ static void sub_811E1A4(s8 arg0, s8 arg1) } else { - x += gUnknown_08597D08[(u8)arg0 < 7 ? arg0 : 0]; + x += sUnknown_08597D08[arg0 < ARRAY_COUNT(sUnknown_08597D08) ? arg0 : 0]; anim = 3; } @@ -3799,7 +4488,7 @@ static void sub_811E1A4(s8 arg0, s8 arg1) static void sub_811E288(void) { - u8 spriteId = CreateSprite(&gUnknown_08597D18, 0, 0, 4); + u8 spriteId = CreateSprite(&sUnknown_08597D18, 0, 0, 4); gUnknown_0203A11C->unk2E4 = &gSprites[spriteId]; gUnknown_0203A11C->unk2E4->callback = sub_811E2DC; gUnknown_0203A11C->unk2E4->oam.priority = 2; @@ -3849,11 +4538,11 @@ static void sub_811E380(void) static void sub_811E3AC(void) { - u8 spriteId = CreateSprite(&gUnknown_08597DF0, 208, 128, 6); + u8 spriteId = CreateSprite(&sUnknown_08597DF0, 208, 128, 6); gUnknown_0203A11C->unk2E8 = &gSprites[spriteId]; gUnknown_0203A11C->unk2E8->pos2.x = -64; - spriteId = CreateSprite(&gUnknown_08597DD0, 208, 80, 5); + spriteId = CreateSprite(&sUnknown_08597DD0, 208, 80, 5); gUnknown_0203A11C->unk2EC = &gSprites[spriteId]; gUnknown_0203A11C->unk9 = 0; } @@ -3940,11 +4629,11 @@ static bool8 sub_811E5B8(void) static void sub_811E5D4(void) { - u8 spriteId = CreateSprite(&gUnknown_08597E48, 96, 80, 0); + u8 spriteId = CreateSprite(&sUnknown_08597E48, 96, 80, 0); if (spriteId != MAX_SPRITES) gUnknown_0203A11C->unk2F0 = &gSprites[spriteId]; - spriteId = CreateSprite(&gUnknown_08597E48, 96, 156, 0); + spriteId = CreateSprite(&sUnknown_08597E48, 96, 156, 0); if (spriteId != MAX_SPRITES) { gUnknown_0203A11C->unk2F4 = &gSprites[spriteId]; @@ -3982,11 +4671,11 @@ static void sub_811E6E0(int arg0) static void sub_811E720(void) { - u8 spriteId = CreateSprite(&gUnknown_08597E30, 220, 84, 1); + u8 spriteId = CreateSprite(&sUnknown_08597E30, 220, 84, 1); if (spriteId != MAX_SPRITES) gUnknown_0203A11C->unk2F8 = &gSprites[spriteId]; - spriteId = CreateSprite(&gUnknown_08597E30, 220, 156, 1); + spriteId = CreateSprite(&sUnknown_08597E30, 220, 156, 1); if (spriteId != MAX_SPRITES) { gUnknown_0203A11C->unk2FC = &gSprites[spriteId]; @@ -4072,7 +4761,7 @@ static int sub_811E920(int arg0) { int var0 = sub_811E8E4(); if (var0 < 3) - return gUnknown_08597E60[var0][arg0] + 4; + return sUnknown_08597E60[var0][arg0] + 4; else return 0; } @@ -4097,10 +4786,10 @@ static void sub_811E948(void) FillWindowPixelBuffer(windowId, 0x11); for (i = 0; i < 4; i++) { - const u8 *str = gUnknown_08597E6C[var0][i]; + const u8 *str = sFooterTextOptions[var0][i]; if (str) { - int x = gUnknown_08597E60[var0][i]; + int x = sUnknown_08597E60[var0][i]; sub_811D028(windowId, 1, str, x, 1, 0, NULL); } } @@ -4548,16 +5237,16 @@ void InitEasyChatPhrases(void) u16 i, j; for (i = 0; i < 4; i++) - gSaveBlock1Ptr->unk2BB0[i] = gUnknown_0859E62C[i]; + gSaveBlock1Ptr->unk2BB0[i] = sUnknown_0859E62C[i]; for (i = 0; i < 6; i++) - gSaveBlock1Ptr->unk2BBC[i] = gUnknown_0859E634[i]; + gSaveBlock1Ptr->unk2BBC[i] = sUnknown_0859E634[i]; for (i = 0; i < 6; i++) - gSaveBlock1Ptr->unk2BC8[i] = gUnknown_0859E640[i]; + gSaveBlock1Ptr->unk2BC8[i] = sUnknown_0859E640[i]; for (i = 0; i < 6; i++) - gSaveBlock1Ptr->unk2BD4[i] = gUnknown_0859E64C[i]; + gSaveBlock1Ptr->unk2BD4[i] = sUnknown_0859E64C[i]; for (i = 0; i < MAIL_COUNT; i++) { @@ -4782,7 +5471,7 @@ static bool8 sub_811F72C(u8 arg0) return FALSE; } -bool8 sub_811F764(u16 wordIndex, u8 groupId) +static bool8 sub_811F764(u16 wordIndex, u8 groupId) { switch (groupId) { @@ -4805,9 +5494,9 @@ bool8 sub_811F764(u16 wordIndex, u8 groupId) static int sub_811F838(u16 species) { u32 i; - for (i = 0; i < ARRAY_COUNT(gUnknown_0859E658); i++) + for (i = 0; i < ARRAY_COUNT(sUnknown_0859E658); i++) { - if (gUnknown_0859E658[i] == species) + if (sUnknown_0859E658[i] == species) return TRUE; } |