diff options
-rw-r--r-- | asm/tv.s | 139 | ||||
-rw-r--r-- | src/tv.c | 42 |
2 files changed, 42 insertions, 139 deletions
@@ -3121,145 +3121,6 @@ _080BF4F0: .4byte gSaveBlock1 + 0x2738 .section .text_80BF544 - thumb_func_start c2_080CC144 -c2_080CC144: @ 80BFAB4 - push {lr} - ldr r0, _080BFAD4 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080BFAD8 @ =gPlayerParty - adds r0, r1 - ldr r2, _080BFADC @ =gStringVar2 - movs r1, 0x2 - bl SetMonData - bl c2_exit_to_overworld_1_continue_scripts_restart_music - pop {r0} - bx r0 - .align 2, 0 -_080BFAD4: .4byte gSpecialVar_0x8004 -_080BFAD8: .4byte gPlayerParty -_080BFADC: .4byte gStringVar2 - thumb_func_end c2_080CC144 - - thumb_func_start sub_80BFAE0 -sub_80BFAE0: @ 80BFAE0 - push {r4,lr} - ldr r0, _080BFB04 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080BFB08 @ =gPlayerParty - adds r0, r1 - ldr r4, _080BFB0C @ =gStringVar1 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BFB04: .4byte gSpecialVar_0x8004 -_080BFB08: .4byte gPlayerParty -_080BFB0C: .4byte gStringVar1 - thumb_func_end sub_80BFAE0 - - thumb_func_start sub_80BFB10 -sub_80BFB10: @ 80BFB10 - push {r4,lr} - bl GetPlayerTrainerId - adds r4, r0, 0 - ldr r0, _080BFB38 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080BFB3C @ =gPlayerParty - adds r0, r1 - movs r1, 0x1 - movs r2, 0 - bl GetMonData - cmp r4, r0 - bne _080BFB44 - ldr r1, _080BFB40 @ =gScriptResult - movs r0, 0 - b _080BFB48 - .align 2, 0 -_080BFB38: .4byte gSpecialVar_0x8004 -_080BFB3C: .4byte gPlayerParty -_080BFB40: .4byte gScriptResult -_080BFB44: - ldr r1, _080BFB50 @ =gScriptResult - movs r0, 0x1 -_080BFB48: - strh r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BFB50: .4byte gScriptResult - thumb_func_end sub_80BFB10 - - thumb_func_start sub_80BFB54 -sub_80BFB54: @ 80BFB54 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - adds r2, r1, 0 - cmp r1, 0 - beq _080BFB8A - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _080BFB6E - movs r0, 0x2 - b _080BFB90 -_080BFB6E: - adds r0, r1, 0 - subs r0, 0x15 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _080BFB7E - movs r0, 0x3 - b _080BFB90 -_080BFB7E: - adds r0, r2, 0 - subs r0, 0x29 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bls _080BFB8E -_080BFB8A: - movs r0, 0 - b _080BFB90 -_080BFB8E: - movs r0, 0x4 -_080BFB90: - pop {r1} - bx r1 - thumb_func_end sub_80BFB54 - - thumb_func_start GetPlayerTrainerId -GetPlayerTrainerId: @ 80BFB94 - ldr r2, _080BFBAC @ =gSaveBlock2 - ldrb r0, [r2, 0xD] - lsls r0, 24 - ldrb r1, [r2, 0xC] - lsls r1, 16 - orrs r0, r1 - ldrb r1, [r2, 0xB] - lsls r1, 8 - orrs r0, r1 - ldrb r1, [r2, 0xA] - orrs r0, r1 - bx lr - .align 2, 0 -_080BFBAC: .4byte gSaveBlock2 - thumb_func_end GetPlayerTrainerId - thumb_func_start CheckForBigMovieOrEmergencyNewsOnTV CheckForBigMovieOrEmergencyNewsOnTV: @ 80BFBB0 push {lr} @@ -9,6 +9,7 @@ #include "species.h" #include "pokedex.h" #include "naming_screen.h" +#include "rom4.h" enum { @@ -549,6 +550,47 @@ void sub_80BF9F8(void) DoNamingScreen(3, gStringVar2, spec, gender, pval, c2_080CC144); } +void c2_080CC144(void) +{ + SetMonData(&(gPlayerParty[gSpecialVar_0x8004]), MON_DATA_NICKNAME, gStringVar2); + c2_exit_to_overworld_1_continue_scripts_restart_music(); +} + +void sub_80BFAE0(void) +{ + GetMonData(&(gPlayerParty[gSpecialVar_0x8004]), MON_DATA_NICKNAME, &gStringVar1); + StringGetEnd10(gStringVar1); +} + +u32 GetPlayerTrainerId(void); + +void sub_80BFB10(void) +{ + if (GetPlayerTrainerId() == GetMonData(&(gPlayerParty[gSpecialVar_0x8004]), MON_DATA_OT_ID, 0)) + gScriptResult = 0; + else + gScriptResult = 1; +} + +u8 sub_80BFB54(u8 arg0) +{ + if (arg0 == 0) + return 0; + else if (arg0 > 0 && arg0 <= 20) + return 2; + else if (arg0 > 20 && arg0 <= 40) + return 3; + else if (arg0 > 40 && arg0 <= 60) + return 4; + else + return 0; +} + +u32 GetPlayerTrainerId(void) +{ + return (gSaveBlock2.playerTrainerId[3] << 24) | (gSaveBlock2.playerTrainerId[2] << 16) | (gSaveBlock2.playerTrainerId[1] << 8) | (gSaveBlock2.playerTrainerId[0]); +} + asm(".section .text_c"); void DoTVShowPokemonNewsMassOutbreak(void) |