finished hof_pc

This commit is contained in:
jiangzhengwenjz 2019-06-26 07:31:39 +08:00
parent fd543fd799
commit f7aaf62343
17 changed files with 94 additions and 155 deletions

View File

@ -730,7 +730,7 @@ StartTransitionToFlipBikeState: @ 80BD5C8
movs r0, 0x1
bl SetPlayerAvatarTransitionFlags
bl sav1_reset_battle_music_maybe
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
b _080BD618
.align 2, 0
_080BD5F0: .4byte gUnknown_2036E2C

View File

@ -1870,7 +1870,7 @@ _080CEDC6:
cmp r4, 0
bne _080CEE40
bl StopMapMusic
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
ldrh r1, [r5, 0xE]
movs r0, 0x80
orrs r0, r1
@ -1944,7 +1944,7 @@ _080CEE74:
cmp r0, 0
bne _080CEE90
bl StopMapMusic
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
_080CEE90:
movs r2, 0x1A
ldrsh r0, [r4, r2]

View File

@ -2062,7 +2062,7 @@ _0808438C: .4byte mapldr_08084390
thumb_func_start mapldr_08084390
mapldr_08084390: @ 8084390
push {r4,lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl sub_807DC00
ldr r0, _080843E8 @ =c3_080843F8
movs r1, 0
@ -2154,7 +2154,7 @@ _08084450: .4byte gPaletteFade
thumb_func_start sub_8084454
sub_8084454: @ 8084454
push {lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl pal_fill_for_maplights
bl sub_8111CF0
bl ScriptContext2_Enable
@ -2885,7 +2885,7 @@ _080849F0: .4byte sub_80847C0
thumb_func_start sub_80849F4
sub_80849F4: @ 80849F4
push {lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl pal_fill_for_maplights
bl sub_8111CF0
bl ScriptContext2_Enable
@ -3909,7 +3909,7 @@ _080851B8: .4byte sub_8084F44
thumb_func_start mapldr_080851BC
mapldr_080851BC: @ 80851BC
push {lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl pal_fill_for_maplights
bl sub_8111CF0
bl ScriptContext2_Enable
@ -4965,7 +4965,7 @@ _080859C4:
thumb_func_start sub_80859D4
sub_80859D4: @ 80859D4
push {lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl pal_fill_for_maplights
bl sub_8111CF0
bl ScriptContext2_Enable
@ -5431,7 +5431,7 @@ _08085D84: .4byte sub_8085B78
thumb_func_start mapldr_08085D88
mapldr_08085D88: @ 8085D88
push {lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl pal_fill_for_maplights
bl sub_8111CF0
bl ScriptContext2_Enable

View File

@ -245,7 +245,7 @@ _0807DCDC:
sub_807DCE4: @ 807DCE4
push {lr}
bl ScriptContext2_Enable
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl sub_807DC00
ldr r0, _0807DD00 @ =task0A_nop_for_a_while
movs r1, 0xA
@ -277,7 +277,7 @@ _0807DD1C:
FieldCallback_ReturnToEventScript2: @ 807DD24
push {lr}
bl ScriptContext2_Enable
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl sub_807DC00
ldr r0, _0807DD40 @ =task0A_asap_script_env_2_enable_and_set_ctx_running
movs r1, 0xA
@ -366,7 +366,7 @@ _0807DDCA:
sub_807DDD0: @ 807DDD0
push {lr}
bl ScriptContext2_Enable
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl palette_bg_faded_fill_black
ldr r0, _0807DDEC @ =task_mpl_807DD60
movs r1, 0xA
@ -434,7 +434,7 @@ _0807DE50:
sub_807DE58: @ 807DE58
push {lr}
bl ScriptContext2_Enable
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl palette_bg_faded_fill_black
ldr r0, _0807DE74 @ =sub_807DDF0
movs r1, 0xA
@ -563,7 +563,7 @@ _0807DF5E:
thumb_func_start sub_807DF64
sub_807DF64: @ 807DF64
push {lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl sub_8111CF0
movs r0, 0
bl sub_807DE78
@ -575,7 +575,7 @@ sub_807DF64: @ 807DF64
thumb_func_start sub_807DF7C
sub_807DF7C: @ 807DF7C
push {lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl sub_8111CF0
movs r0, 0x1
bl sub_807DE78
@ -587,7 +587,7 @@ sub_807DF7C: @ 807DF7C
thumb_func_start sub_807DF94
sub_807DF94: @ 807DF94
push {lr}
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl pal_fill_for_maplights
bl sub_8111CF0
movs r0, 0x28
@ -1112,7 +1112,7 @@ _0807E3E4:
sub_807E3EC: @ 807E3EC
push {lr}
bl ScriptContext2_Enable
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl sub_807DC00
ldr r0, _0807E408 @ =task_mpl_807E3C8
movs r1, 0xA
@ -2188,7 +2188,7 @@ sub_807EC34: @ 807EC34
.align 2, 0
_0807EC6C: .4byte gTasks+0x8
_0807EC70:
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
bl pal_fill_for_maplights
bl ScriptContext2_Enable
adds r0, r5, 0x2

View File

@ -2322,7 +2322,7 @@ _080F3082:
bl Free
str r4, [r5]
_080F3090:
bl sub_80CA5A0
bl ReturnFromHallOfFamePC
_080F3094:
pop {r4,r5}
pop {r0}

View File

@ -1,118 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_80CA53C
sub_80CA53C: @ 80CA53C
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
ldr r0, _080CA56C @ =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
cmp r0, 0
bne _080CA564
bl FreeAllWindowBuffers
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
adds r0, r4, 0
bl DestroyTask
ldr r0, _080CA570 @ =sub_80F2978
bl SetMainCallback2
_080CA564:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_080CA56C: .4byte gPaletteFade
_080CA570: .4byte sub_80F2978
thumb_func_end sub_80CA53C
thumb_func_start sub_80CA574
sub_80CA574: @ 80CA574
push {lr}
sub sp, 0x4
movs r0, 0x1
negs r0, r0
movs r1, 0
str r1, [sp]
movs r2, 0
movs r3, 0x10
bl BeginNormalPaletteFade
bl ScriptContext2_Enable
ldr r0, _080CA59C @ =sub_80CA53C
movs r1, 0
bl CreateTask
add sp, 0x4
pop {r0}
bx r0
.align 2, 0
_080CA59C: .4byte sub_80CA53C
thumb_func_end sub_80CA574
thumb_func_start sub_80CA5A0
sub_80CA5A0: @ 80CA5A0
push {lr}
ldr r0, _080CA5B4 @ =CB2_ReturnToField
bl SetMainCallback2
ldr r1, _080CA5B8 @ =gFieldCallback
ldr r0, _080CA5BC @ =sub_80CA5C0
str r0, [r1]
pop {r0}
bx r0
.align 2, 0
_080CA5B4: .4byte CB2_ReturnToField
_080CA5B8: .4byte gFieldCallback
_080CA5BC: .4byte sub_80CA5C0
thumb_func_end sub_80CA5A0
thumb_func_start sub_80CA5C0
sub_80CA5C0: @ 80CA5C0
push {lr}
sub sp, 0x4
bl ScriptContext2_Enable
bl sub_8055DC4
bl sp109_CreatePCMenu
bl sub_809D254
movs r0, 0x1
negs r0, r0
movs r1, 0
str r1, [sp]
movs r2, 0x10
movs r3, 0
bl BeginNormalPaletteFade
ldr r0, _080CA5F4 @ =sub_80CA5F8
movs r1, 0xA
bl CreateTask
add sp, 0x4
pop {r0}
bx r0
.align 2, 0
_080CA5F4: .4byte sub_80CA5F8
thumb_func_end sub_80CA5C0
thumb_func_start sub_80CA5F8
sub_80CA5F8: @ 80CA5F8
push {lr}
lsls r0, 24
lsrs r2, r0, 24
ldr r0, _080CA614 @ =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
cmp r0, 0
bne _080CA610
adds r0, r2, 0
bl DestroyTask
_080CA610:
pop {r0}
bx r0
.align 2, 0
_080CA614: .4byte gPaletteFade
thumb_func_end sub_80CA5F8
.align 2, 0 @ Don't pad with nop.

View File

@ -440,7 +440,7 @@ _080F8448:
lsls r0, 24
cmp r0, 0
beq _080F853C
bl sub_8055DC4
bl Overworld_PlaySpecialMapMusic
b _080F84EA
_080F8458:
ldrh r0, [r4, 0x2]

View File

@ -2378,8 +2378,8 @@ sub_8055DB8: @ 8055DB8
bx r0
thumb_func_end sub_8055DB8
thumb_func_start sub_8055DC4
sub_8055DC4: @ 8055DC4
thumb_func_start Overworld_PlaySpecialMapMusic
Overworld_PlaySpecialMapMusic: @ 8055DC4
push {r4,r5,lr}
sub sp, 0x4
ldr r0, _08055DD8 @ =gUnknown_2031DD8
@ -2462,7 +2462,7 @@ _08055E6C:
bx r0
.align 2, 0
_08055E74: .4byte 0x00000131
thumb_func_end sub_8055DC4
thumb_func_end Overworld_PlaySpecialMapMusic
thumb_func_start Overworld_SetSavedMusic
Overworld_SetSavedMusic: @ 8055E78

View File

@ -914,8 +914,8 @@ _0809D034:
_0809D03C: .4byte gSpecialVar_Result
thumb_func_end sub_809CFDC
thumb_func_start sp109_CreatePCMenu
sp109_CreatePCMenu: @ 809D040
thumb_func_start ScrSpecial_CreatePCMenu
ScrSpecial_CreatePCMenu: @ 809D040
push {lr}
ldr r0, _0809D060 @ =sub_809CC98
bl FuncIsActiveTask
@ -937,7 +937,7 @@ _0809D068:
_0809D06A:
pop {r1}
bx r1
thumb_func_end sp109_CreatePCMenu
thumb_func_end ScrSpecial_CreatePCMenu
thumb_func_start sub_809D070
sub_809D070: @ 809D070
@ -1159,8 +1159,8 @@ _0809D24C: .4byte gStringVar4
_0809D250: .4byte gUnknown_8417BB6
thumb_func_end sub_809D070
thumb_func_start sub_809D254
sub_809D254: @ 809D254
thumb_func_start ScriptMenu_DisplayPCStartupPrompt
ScriptMenu_DisplayPCStartupPrompt: @ 809D254
push {lr}
sub sp, 0x10
movs r0, 0
@ -1184,7 +1184,7 @@ sub_809D254: @ 809D254
bx r0
.align 2, 0
_0809D284: .4byte gUnknown_81A508A
thumb_func_end sub_809D254
thumb_func_end ScriptMenu_DisplayPCStartupPrompt
thumb_func_start sub_809D288
sub_809D288: @ 809D288

View File

@ -162,7 +162,7 @@ gSpecials:: @ 815FD60
def_special sub_80CA758
def_special nullsub_75
def_special nullsub_75
def_special sub_8055DC4
def_special Overworld_PlaySpecialMapMusic
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
@ -271,8 +271,8 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
def_special sp109_CreatePCMenu
def_special sub_80CA574
def_special ScrSpecial_CreatePCMenu
def_special HallOfFamePCBeginFade
def_special sub_80CA618
def_special nullsub_75
def_special nullsub_75

View File

@ -7,5 +7,7 @@ void CB2_DoHallOfFameScreen(void);
void CB2_DoHallOfFameScreenDontSaveData(void);
void CB2_DoHallOfFamePC(void);
void sub_8175280(void);
void sub_80F2978(void);
void HallOfFamePCBeginFade(void);
#endif // GUARD_HALL_OF_FAME_H

View File

@ -86,7 +86,7 @@ void sub_8055D5C(struct WarpData *);
void sub_80572A8(void);
void sub_805726C(void);
void sub_8057430(void);
void sub_8055DC4(void);
void Overworld_PlaySpecialMapMusic(void);
u8 GetCurrentRegionMapSectionId(void);
@ -111,7 +111,6 @@ void Overworld_ResetStateAfterTeleport(void);
void Overworld_FadeOutMapMusic(void);
void sub_805671C(void);
void sub_8055DC4(void);
bool8 sub_8055FC4(void);
bool8 is_light_level_8_or_9(u8 mapType);
bool32 sub_8055C9C(void);

View File

@ -10,6 +10,9 @@ bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 var3, u8 var4, u8 va
bool8 ScriptMenu_YesNo(u8 var1, u8 var2);
bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, u8 a4, u8 columnCount);
bool8 ScriptMenu_ShowPokemonPic(u16 var1, u8 var2, u8 var3);
bool32 ScrSpecial_CreatePCMenu(void);
void ScriptMenu_DisplayPCStartupPrompt(void);
bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void);
void sub_809D6D4(void);

View File

@ -185,7 +185,7 @@ SECTIONS {
asm/fldeff_flash.o(.text);
asm/post_battle_event_funcs.o(.text);
src/prof_pc.o(.text);
asm/hof_pc.o(.text);
src/hof_pc.o(.text);
asm/field_specials.o(.text);
asm/battle_records.o(.text);
asm/evolution_scene.o(.text);

53
src/hof_pc.c Normal file
View File

@ -0,0 +1,53 @@
#include "global.h"
#include "hall_of_fame.h"
#include "palette.h"
#include "overworld.h"
#include "script.h"
#include "script_menu.h"
#include "task.h"
#include "hall_of_fame.h"
#include "bg.h"
#include "window.h"
static void ReshowPCMenuAfterHallOfFamePC(void);
static void Task_WaitForPaletteFade(u8 taskId);
static void Task_WaitFadeAndSetCallback(u8 taskId)
{
if (!gPaletteFade.active)
{
FreeAllWindowBuffers();
ResetBgsAndClearDma3BusyFlags(0);
DestroyTask(taskId);
SetMainCallback2(sub_80F2978);
}
}
void HallOfFamePCBeginFade(void)
{
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
ScriptContext2_Enable();
CreateTask(Task_WaitFadeAndSetCallback, 0);
}
void ReturnFromHallOfFamePC(void)
{
SetMainCallback2(CB2_ReturnToField);
gFieldCallback = ReshowPCMenuAfterHallOfFamePC;
}
static void ReshowPCMenuAfterHallOfFamePC(void)
{
ScriptContext2_Enable();
Overworld_PlaySpecialMapMusic();
ScrSpecial_CreatePCMenu();
ScriptMenu_DisplayPCStartupPrompt();
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
CreateTask(Task_WaitForPaletteFade, 10);
}
static void Task_WaitForPaletteFade(u8 taskId)
{
if (!gPaletteFade.active)
DestroyTask(taskId);
}

View File

@ -1567,7 +1567,7 @@ void sub_81120AC(u8 taskId)
{
case 0:
gUnknown_2031DD8 = 0;
sub_8055DC4();
Overworld_PlaySpecialMapMusic();
sub_811229C();
FillWindowPixelRect(gUnknown_203ADFE[0], 0xF, 0, 0, gUnknown_845661C[0].width * 8, gUnknown_845661C[0].height * 8);
data[0]++;

View File

@ -718,7 +718,7 @@ static void TeachyTvQuitFadeControlAndTaskDel(u8 taskId)
}
else
{
sub_8055DC4();
Overworld_PlaySpecialMapMusic();
SetMainCallback2(sStaticResources.callback);
}
TeachyTvFree();