diff --git a/asm/code_0807CC3C.s b/asm/code_0807CC3C.s index aa61f8d0..21d02984 100644 --- a/asm/code_0807CC3C.s +++ b/asm/code_0807CC3C.s @@ -1557,21 +1557,3 @@ sub_0807DAC4: @ 0x0807DAC4 pop {pc} .align 2, 0 - thumb_func_start StartCutscene -StartCutscene: @ 0x0807DAD0 - push {r4, r5, r6, lr} - adds r5, r0, #0 - adds r6, r1, #0 - bl sub_0807DAA0 - adds r4, r0, #0 - cmp r4, #0 - beq _0807DAEA - adds r0, r5, #0 - adds r1, r4, #0 - adds r2, r6, #0 - bl sub_0807DAF0 -_0807DAEA: - adds r0, r4, #0 - pop {r4, r5, r6, pc} - .align 2, 0 - diff --git a/src/code_0807CC3C.c b/src/code_0807CC3C.c index 5765f9cf..a9b57fe3 100644 --- a/src/code_0807CC3C.c +++ b/src/code_0807CC3C.c @@ -18,8 +18,19 @@ extern void sub_0807DB98(Entity*, ScriptExecutionContext*); extern void _call_via_r6(Entity*, ScriptExecutionContext*); void sub_0807DB88(ScriptExecutionContext* context, u32 unk1); +void sub_0807DAF0(Entity* entity, ScriptExecutionContext* context, u32 unk1); extern u32* sub_0807DAA0(); +u32* StartCutscene(Entity* param_1, u8* param_2) { + ScriptExecutionContext* puVar1; + + puVar1 = (ScriptExecutionContext*)sub_0807DAA0(); + if (puVar1) { + sub_0807DAF0(param_1, puVar1, (u32)param_2); + } + return (u32*)puVar1; +} + void sub_0807DAF0(Entity* entity, ScriptExecutionContext* context, u32 unk1) { entity->flags = entity->flags | 2; *(ScriptExecutionContext**)&entity->cutsceneBeh = context;