diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2020-02-27 16:59:05 -0500 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2020-02-27 16:59:05 -0500 |
commit | e07c771f1840fe614ac1040d55ce842602f44c4c (patch) | |
tree | 35fd020cc049686a352622931e9af64e8441e989 /src | |
parent | 9c03c850a2bfbedc3ccadf8b0f1a895607c113ae (diff) |
through Task_FallWarpFieldEffect
Diffstat (limited to 'src')
-rw-r--r-- | src/field_effect.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/field_effect.c b/src/field_effect.c index 9a30088c1..f85a9aef5 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -1066,3 +1066,40 @@ void Task_FlyIn(u8 taskId) DestroyTask(taskId); } } + +void Task_FallWarpFieldEffect(u8 taskId); +bool8 FallWarpEffect_1(struct Task * task); +bool8 FallWarpEffect_2(struct Task * task); +bool8 FallWarpEffect_3(struct Task * task); +bool8 FallWarpEffect_4(struct Task * task); +bool8 FallWarpEffect_5(struct Task * task); +bool8 FallWarpEffect_6(struct Task * task); +bool8 FallWarpEffect_7(struct Task * task); + +bool8 (*const sFallWarpEffectCBPtrs[])(struct Task * task) = { + FallWarpEffect_1, + FallWarpEffect_2, + FallWarpEffect_3, + FallWarpEffect_4, + FallWarpEffect_5, + FallWarpEffect_6, + FallWarpEffect_7 +}; + +void FieldCB_FallWarpExit(void) +{ + Overworld_PlaySpecialMapMusic(); + pal_fill_for_maplights(); + sub_8111CF0(); + ScriptContext2_Enable(); + FreezeObjectEvents(); + CreateTask(Task_FallWarpFieldEffect, 0); + gFieldCallback = NULL; +} + +void Task_FallWarpFieldEffect(u8 taskId) +{ + struct Task * task = &gTasks[taskId]; + while (sFallWarpEffectCBPtrs[task->data[0]](task)) + ; +} |