diff options
author | YamaArashi <shadow962@live.com> | 2017-05-09 00:24:51 -0700 |
---|---|---|
committer | YamaArashi <shadow962@live.com> | 2017-05-09 00:24:51 -0700 |
commit | 964b665d2a17295ae3a06be0439ef6ae5ccc3444 (patch) | |
tree | 99eaddbd193b9f466904667982af708100061b81 | |
parent | 4b4f716ae0c582068928a4ae7b31d9d10ac89eb5 (diff) |
name mail_data.c functions
-rw-r--r-- | asm/daycare.s | 8 | ||||
-rw-r--r-- | asm/item_menu.s | 2 | ||||
-rw-r--r-- | asm/menu_helpers.s | 2 | ||||
-rw-r--r-- | asm/mystery_event_script.s | 4 | ||||
-rw-r--r-- | asm/party_menu.s | 32 | ||||
-rw-r--r-- | asm/player_pc.s | 2 | ||||
-rw-r--r-- | asm/pokemon_icon.s | 10 | ||||
-rw-r--r-- | asm/pokemon_menu.s | 10 | ||||
-rw-r--r-- | asm/pokemon_storage_system.s | 8 | ||||
-rw-r--r-- | asm/trade.s | 6 | ||||
-rw-r--r-- | include/asm.inc.h | 4 | ||||
-rw-r--r-- | src/mail.c | 2 | ||||
-rw-r--r-- | src/mail_data.c | 50 | ||||
-rw-r--r-- | src/new_game.c | 2 |
14 files changed, 73 insertions, 69 deletions
diff --git a/asm/daycare.s b/asm/daycare.s index 0e8a796d9..47a84e8e0 100644 --- a/asm/daycare.s +++ b/asm/daycare.s @@ -111,7 +111,7 @@ sub_80413C8: @ 80413C8 lsrs r4, r0, 24 mov r9, r4 adds r0, r7, 0 - bl sub_80A2B94 + bl MonHasMail lsls r0, 24 cmp r0, 0 beq _0804144A @@ -156,7 +156,7 @@ sub_80413C8: @ 80413C8 ldm r1!, {r0,r2,r3} stm r4!, {r0,r2,r3} adds r0, r7, 0 - bl sub_80A2DF8 + bl TakeMailFromMon _0804144A: mov r2, r9 lsls r4, r2, 24 @@ -372,7 +372,7 @@ _080415D8: adds r4, r5, r4 mov r0, r8 adds r1, r4, 0 - bl sub_80A2D88 + bl GiveMailToMon2 adds r0, r4, 0 bl sub_80417F4 _08041610: @@ -644,7 +644,7 @@ _08041812: subs r1, 0x1 cmp r1, r2 bge _08041812 - bl sub_80A2B40 + bl ClearMailStruct pop {r0} bx r0 thumb_func_end sub_80417F4 diff --git a/asm/item_menu.s b/asm/item_menu.s index 29109f3d9..449d8e38e 100644 --- a/asm/item_menu.s +++ b/asm/item_menu.s @@ -3413,7 +3413,7 @@ _080A4BB4: .4byte 0x00000103 _080A4BB8: .4byte gOtherText_Walk _080A4BBC: adds r0, r4, 0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 diff --git a/asm/menu_helpers.s b/asm/menu_helpers.s index 0b95b553e..f10070110 100644 --- a/asm/menu_helpers.s +++ b/asm/menu_helpers.s @@ -420,7 +420,7 @@ sub_80F931C: @ 80F931C cmp r0, 0x1 bne _080F933C adds r0, r4, 0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 diff --git a/asm/mystery_event_script.s b/asm/mystery_event_script.s index f0e842626..93abd97bc 100644 --- a/asm/mystery_event_script.s +++ b/asm/mystery_event_script.s @@ -677,13 +677,13 @@ _081266C6: bl GetMonData lsls r0, 16 lsrs r0, 16 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _081266E4 adds r0, r7, 0 mov r1, sp - bl sub_80A2D88 + bl GiveMailToMon2 _081266E4: bl party_compaction bl CalculatePlayerPartyCount diff --git a/asm/party_menu.s b/asm/party_menu.s index f405d174a..534d4aaa4 100644 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -5808,7 +5808,7 @@ _0806DBAC: adds r0, r7, r5 ldrb r4, [r0] adds r0, r1, 0 - bl itemid_is_mail + bl ItemIsMail adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -5841,7 +5841,7 @@ _0806DBF0: adds r0, r5, r7 ldrb r4, [r0, 0x6] adds r0, r1, 0 - bl itemid_is_mail + bl ItemIsMail adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -5991,7 +5991,7 @@ _0806DD2C: .4byte gSpriteTemplate_837660C _0806DD30: .4byte gSprites _0806DD34: adds r0, r7, 0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _0806DD46 @@ -6321,7 +6321,7 @@ _0806DFAC: bl GetMonData lsls r0, 16 lsrs r0, 16 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _0806DFD8 @@ -7486,14 +7486,14 @@ PartyMenuUpdateMonHeldItem: @ 806E904 lsls r1, 16 lsrs r4, r1, 16 adds r0, r4, 0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _0806E93C adds r0, r5, 0 adds r1, r4, 0 - bl sub_80A2BC4 + bl GiveMailToMon lsls r0, 24 lsrs r0, 24 cmp r0, 0xFF @@ -7571,7 +7571,7 @@ PartyMenuTryGiveMonHeldItem: @ 806E964 cmp r2, 0 beq _0806EA44 adds r0, r2, 0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -7609,7 +7609,7 @@ _0806E9F0: movs r1, 0x5 bl CreateTask adds r0, r5, 0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -7631,7 +7631,7 @@ _0806EA44: movs r1, 0x1 bl RemoveBagItem adds r0, r5, 0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _0806EA66 @@ -7726,7 +7726,7 @@ PartyMenuTryGiveMonHeldItem_806EACC: @ 806EACC ldrh r1, [r4, 0x6] bl PartyMenuUpdateMonHeldItem ldrh r0, [r4, 0x6] - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _0806EB34 @@ -7923,9 +7923,9 @@ _0806ECB8: .4byte party_menu_link_mon_held_item_object _0806ECBC: ldr r0, [r5] adds r1, r4, 0 - bl sub_80A2D88 + bl GiveMailToMon2 adds r0, r4, 0 - bl sub_80A2B40 + bl ClearMailStruct ldr r0, _0806ECE0 @ =gOtherText_MailTransferredMailbox movs r1, 0x1 bl sub_806E834 @@ -7997,13 +7997,13 @@ _0806ED50: cmp r0, 0x1 bne _0806ED92 adds r0, r4, 0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _0806ED7C ldr r0, [r5] - bl sub_80A2DF8 + bl TakeMailFromMon _0806ED7C: ldrb r0, [r5, 0x5] adds r1, r6, 0 @@ -8126,7 +8126,7 @@ Task_LoseMailMessage: @ 806EE5C cmp r0, 0x1 bne _0806EE98 ldr r0, [r5] - bl sub_80A2DF8 + bl TakeMailFromMon ldr r0, _0806EE94 @ =gOtherText_MailTaken movs r1, 0 bl sub_806E834 @@ -8235,7 +8235,7 @@ Task_TakeHeldMail: @ 806EF38 bl MenuZeroFillWindowRect ldr r0, _0806EF70 @ =0x0201c000 ldr r0, [r0] - bl sub_80A2E78 + bl TakeMailFromMon2 lsls r0, 24 lsrs r0, 24 cmp r0, 0xFF diff --git a/asm/player_pc.s b/asm/player_pc.s index 42edeba49..5e2adb775 100644 --- a/asm/player_pc.s +++ b/asm/player_pc.s @@ -1076,7 +1076,7 @@ _0813B5CC: movs r3, 0 bl DisplayItemMessageOnField adds r0, r6, 0 - bl sub_80A2B40 + bl ClearMailStruct bl sub_813AF78 ldrb r0, [r4, 0x3] subs r0, 0x1 diff --git a/asm/pokemon_icon.s b/asm/pokemon_icon.s index a63779b28..5aa8b5901 100644 --- a/asm/pokemon_icon.s +++ b/asm/pokemon_icon.s @@ -228,7 +228,7 @@ mon_icon_convert_unown_species_id: @ 809D434 cmp r2, SPECIES_UNOWN bne _0809D45E adds r0, r1, 0 - bl sub_809D474 + bl GetUnownLetterByPersonality lsls r0, 16 lsrs r0, 16 cmp r0, 0 @@ -258,8 +258,8 @@ _0809D46C: bx r1 thumb_func_end mon_icon_convert_unown_species_id - thumb_func_start sub_809D474 -sub_809D474: @ 809D474 + thumb_func_start GetUnownLetterByPersonality +GetUnownLetterByPersonality: @ 809D474 push {lr} adds r2, r0, 0 movs r0, 0xC0 @@ -285,7 +285,7 @@ sub_809D474: @ 809D474 lsrs r0, 16 pop {r1} bx r1 - thumb_func_end sub_809D474 + thumb_func_end GetUnownLetterByPersonality thumb_func_start sub_809D4A8 sub_809D4A8: @ 809D4A8 @@ -295,7 +295,7 @@ sub_809D4A8: @ 809D4A8 lsrs r4, r0, 16 adds r0, r4, 0 mov r1, sp - bl sub_80A2D64 + bl MailSpeciesToSpecies lsls r0, 16 lsrs r0, 16 cmp r0, SPECIES_UNOWN diff --git a/asm/pokemon_menu.s b/asm/pokemon_menu.s index 2f1c16f8c..57bcd4904 100644 --- a/asm/pokemon_menu.s +++ b/asm/pokemon_menu.s @@ -143,7 +143,7 @@ _08089B76: bl GetMonData lsls r0, 16 lsrs r0, 16 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _08089BB4 @@ -964,7 +964,7 @@ sub_808A228: @ 808A228 lsrs r4, r0, 24 ldr r0, _0808A268 @ =gScriptItemId ldrh r0, [r0] - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _0808A278 @@ -1188,7 +1188,7 @@ sub_808A3F8: @ 808A3F8 push {r4,lr} ldr r0, _0808A460 @ =gScriptItemId ldrh r0, [r0] - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _0808A47E @@ -1349,7 +1349,7 @@ _0808A542: ldrb r0, [r6] muls r0, r5 adds r0, r4 - bl sub_80A2DF8 + bl TakeMailFromMon ldrb r0, [r6] muls r0, r5 adds r0, r4 @@ -3202,7 +3202,7 @@ _0808B416: ldrb r0, [r6] muls r0, r5 adds r0, r4 - bl sub_80A2DF8 + bl TakeMailFromMon ldrb r0, [r6] muls r0, r5 adds r0, r4 diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 89f0e2865..c86ad644e 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -2620,7 +2620,7 @@ _08096D66: ldr r1, _08096D8C @ =0x000011f2 adds r0, r4, r1 ldrh r0, [r0] - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 bne _08096E4C @@ -2712,7 +2712,7 @@ _08096E30: ldr r1, _08096E58 @ =0x000011f2 adds r0, r4, r1 ldrh r0, [r0] - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _08096E5C @@ -3102,7 +3102,7 @@ _08097190: ldr r1, _080971C4 @ =0x000011f2 adds r0, r4, r1 ldrh r0, [r0] - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 bne _08097210 @@ -3145,7 +3145,7 @@ _08097200: ldr r1, _08097218 @ =0x000011f2 adds r0, r4, r1 ldrh r0, [r0] - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _0809721C diff --git a/asm/trade.s b/asm/trade.s index d1fe82d6c..756423ee7 100644 --- a/asm/trade.s +++ b/asm/trade.s @@ -7639,7 +7639,7 @@ sub_804BA94: @ 804BA94 lsls r0, 2 ldr r1, _0804BB68 @ =gSaveBlock1 + 0x2B4C adds r0, r1 - bl sub_80A2B40 + bl ClearMailStruct _0804BAE8: ldr r4, _0804BB6C @ =gUnknown_03004828 ldr r0, [r4] @@ -7678,7 +7678,7 @@ _0804BB28: ldr r0, _0804BB70 @ =gUnknown_02029700 adds r1, r0 adds r0, r7, 0 - bl sub_80A2D88 + bl GiveMailToMon2 _0804BB3E: mov r0, r9 bl sub_804BA18 @@ -11262,7 +11262,7 @@ sub_804D948: @ 804D948 ldrh r0, [r5, 0x28] cmp r0, 0 beq _0804DAC0 - bl itemid_is_mail + bl ItemIsMail lsls r0, 24 cmp r0, 0 beq _0804DAB4 diff --git a/include/asm.inc.h b/include/asm.inc.h index eb3cec985..11d4e150e 100644 --- a/include/asm.inc.h +++ b/include/asm.inc.h @@ -236,8 +236,8 @@ bool8 sub_80A212C(u8, u8, u8); void sub_80A2178(void); // asm/mail_data.o -void sub_80A2B18(void); -u16 sub_80A2D64(u16, u8 *); +void ClearMailData(void); +u16 MailSpeciesToSpecies(u16, u8 *); // src/map_name_popup.o void ShowMapNamePopup(void); diff --git a/src/mail.c b/src/mail.c index 1bd4e73dc..9964f2a79 100644 --- a/src/mail.c +++ b/src/mail.c @@ -116,7 +116,7 @@ void HandleReadMail(struct MailStruct *arg0, MainCallback arg1, bool8 arg2) break; } - if (((sub_80A2D64(arg0->species, buffer) << 16) + 0xFFFF0000) <= (410 << 16)) + if (((MailSpeciesToSpecies(arg0->species, buffer) << 16) + 0xFFFF0000) <= (410 << 16)) { switch (ewram0.varFA) { diff --git a/src/mail_data.c b/src/mail_data.c index f83484346..23d22e21f 100644 --- a/src/mail_data.c +++ b/src/mail_data.c @@ -5,20 +5,20 @@ #include "species.h" #include "text.h" -void sub_80A2B40(struct MailStruct *); -u16 sub_80A2D44(u16, u32); -bool8 itemid_is_mail(u16); -u16 sub_809D474(u32); +void ClearMailStruct(struct MailStruct *); +u16 SpeciesToMailSpecies(u16, u32); +bool8 ItemIsMail(u16); +u16 GetUnownLetterByPersonality(u32); -void sub_80A2B18(void) +void ClearMailData(void) { u8 i; for (i = 0; i < 16; i++) - sub_80A2B40(&gSaveBlock1.mail[i]); + ClearMailStruct(&gSaveBlock1.mail[i]); } -void sub_80A2B40(struct MailStruct *mail) +void ClearMailStruct(struct MailStruct *mail) { int i; @@ -35,16 +35,16 @@ void sub_80A2B40(struct MailStruct *mail) mail->itemId = 0; } -bool8 sub_80A2B94(struct Pokemon *mon) +bool8 MonHasMail(struct Pokemon *mon) { u16 heldItem = GetMonData(mon, MON_DATA_HELD_ITEM); - if (itemid_is_mail(heldItem) && GetMonData(mon, MON_DATA_MAIL) != 0xFF) + if (ItemIsMail(heldItem) && GetMonData(mon, MON_DATA_MAIL) != 0xFF) return TRUE; else return FALSE; } -u8 sub_80A2BC4(struct Pokemon *mon, u16 itemId) +u8 GiveMailToMon(struct Pokemon *mon, u16 itemId) { u16 _itemId; u8 heldItem[2]; @@ -75,7 +75,7 @@ u8 sub_80A2BC4(struct Pokemon *mon, u16 itemId) species = GetBoxMonData(&mon->box, MON_DATA_SPECIES); personality = GetBoxMonData(&mon->box, MON_DATA_PERSONALITY); - gSaveBlock1.mail[id].species = sub_80A2D44(species, personality); + gSaveBlock1.mail[id].species = SpeciesToMailSpecies(species, personality); gSaveBlock1.mail[id].itemId = _itemId; SetMonData(mon, MON_DATA_MAIL, &id); SetMonData(mon, MON_DATA_HELD_ITEM, heldItem); @@ -87,14 +87,18 @@ u8 sub_80A2BC4(struct Pokemon *mon, u16 itemId) return -1; } -u16 sub_80A2D44(u16 species, u32 personality) +u16 SpeciesToMailSpecies(u16 species, u32 personality) { - if (species != SPECIES_UNOWN) - return species; - return ((sub_809D474(personality) << 16) + (30000 << 16)) >> 16; + if (species == SPECIES_UNOWN) + { + int mailSpecies = GetUnownLetterByPersonality(personality) + 30000; + return mailSpecies; + } + + return species; } -u16 sub_80A2D64(u16 a1, u16 *a2) +u16 MailSpeciesToSpecies(u16 a1, u16 *a2) { u16 result; @@ -111,11 +115,11 @@ u16 sub_80A2D64(u16 a1, u16 *a2) return result; } -u8 sub_80A2D88(struct Pokemon *mon, struct MailStruct *mail) +u8 GiveMailToMon2(struct Pokemon *mon, struct MailStruct *mail) { u8 heldItem[2]; u16 itemId = mail->itemId; - u8 mailId = sub_80A2BC4(mon, itemId); + u8 mailId = GiveMailToMon(mon, itemId); if (mailId == 0xFF) return 0xFF; @@ -137,12 +141,12 @@ int unref_sub_80A2DF4(void) return 0; } -void sub_80A2DF8(struct Pokemon *mon) +void TakeMailFromMon(struct Pokemon *mon) { u8 heldItem[2]; u8 mailId; - if (sub_80A2B94(mon)) + if (MonHasMail(mon)) { mailId = GetMonData(mon, MON_DATA_MAIL); gSaveBlock1.mail[mailId].itemId = 0; @@ -154,12 +158,12 @@ void sub_80A2DF8(struct Pokemon *mon) } } -void unref_sub_80A2E58(u8 mailId) +void DeleteMail(u8 mailId) { gSaveBlock1.mail[mailId].itemId = 0; } -u8 sub_80A2E78(struct Pokemon *mon) +u8 TakeMailFromMon2(struct Pokemon *mon) { u8 i; u8 newHeldItem[2]; @@ -184,7 +188,7 @@ u8 sub_80A2E78(struct Pokemon *mon) return 0xFF; } -bool8 itemid_is_mail(u16 itemId) +bool8 ItemIsMail(u16 itemId) { switch (itemId) { diff --git a/src/new_game.c b/src/new_game.c index 3b93d37cc..ca53ff15f 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -116,7 +116,7 @@ void NewGameInitData(void) sub_808C02C(); sub_8052DE4(); memset(&gSaveBlock1, 0, sizeof(gSaveBlock1)); - sub_80A2B18(); + ClearMailData(); gSaveBlock2.specialSaveWarp = 0; set_player_trainer_id(); PlayTimeCounter_Reset(); |