Spell practice stages now use boss's bgm, not stage-related one

This commit is contained in:
makise-homura 2017-02-20 22:28:22 +03:00
parent d0b37bff3c
commit e8acbe923d
8 changed files with 15 additions and 20 deletions

View file

@ -746,7 +746,7 @@ void stage_end(void) {
}
}
void stage_loop(StageRule start, StageRule end, StageRule draw, StageRule event, ShaderRule *shaderrules, int endtime) {
void stage_loop(StageRule start, StageRule end, StageRule draw, StageRule event, ShaderRule *shaderrules, int endtime, char *bgmname) {
if(global.game_over == GAMEOVER_WIN) {
global.game_over = 0;
} else if(global.game_over) {
@ -809,6 +809,7 @@ void stage_loop(StageRule start, StageRule end, StageRule draw, StageRule event,
player_set_power(&global.plr, power);
start();
start_bgm(bgmname);
if(info->type == STAGE_SPELL) {
endtime = 0;

View file

@ -86,7 +86,7 @@ StageProgress* stage_get_progress_from_info(StageInfo *stage, Difficulty diff, b
void stage_init_array(void);
void stage_free_array(void);
void stage_loop(StageRule start, StageRule end, StageRule draw, StageRule event, ShaderRule *shaderrules, int endtime);
void stage_loop(StageRule start, StageRule end, StageRule draw, StageRule event, ShaderRule *shaderrules, int endtime, char *bgmname);
void apply_bg_shaders(ShaderRule *shaderrules);

View file

@ -672,7 +672,6 @@ void stage1_events(void) {
void stage1_start(void) {
init_stage3d(&bgcontext);
start_bgm("bgm_stage1");
add_model(&bgcontext, stage1_bg_draw, stage1_bg_pos);
add_model(&bgcontext, stage1_smoke_draw, stage1_smoke_pos);
@ -687,7 +686,7 @@ void stage1_end(void) {
void stage1_loop(void) {
ShaderRule list[] = { stage1_fog, NULL };
stage_loop(stage1_start, stage1_end, stage1_draw, stage1_events, list, 5200);
stage_loop(stage1_start, stage1_end, stage1_draw, stage1_events, list, 5200, "bgm_stage1");
}
void stage1_spellpractice_events(void) {
@ -703,5 +702,5 @@ void stage1_spellpractice_events(void) {
void stage1_spellpractice_loop(void) {
ShaderRule list[] = { stage1_fog, NULL };
stage_loop(stage1_start, stage1_end, stage1_draw, stage1_spellpractice_events, list, 0);
stage_loop(stage1_start, stage1_end, stage1_draw, stage1_spellpractice_events, list, 0, "bgm_stage1boss");
}

View file

@ -135,7 +135,6 @@ void stage2_start(void) {
bgcontext.cv[0] = 9;
start_bgm("bgm_stage2");
add_model(&bgcontext, stage2_bg_ground_draw, stage2_bg_pos);
add_model(&bgcontext, stage2_bg_leaves_draw, stage2_bg_pos);
}
@ -161,7 +160,7 @@ void stage2_draw(void) {
void stage2_loop(void) {
ShaderRule shaderrules[] = { stage2_fog, stage2_bloom, NULL };
stage_loop(stage2_start, stage2_end, stage2_draw, stage2_events, shaderrules, 5240);
stage_loop(stage2_start, stage2_end, stage2_draw, stage2_events, shaderrules, 5240, "bgm_stage2");
}
void stage2_spellpractice_events(void) {
@ -179,5 +178,5 @@ void stage2_spellpractice_events(void) {
void stage2_spellpractice_loop(void) {
ShaderRule shaderrules[] = { stage2_fog, stage2_bloom, NULL };
stage_loop(stage2_start, stage2_end, stage2_draw, stage2_spellpractice_events, shaderrules, 0);
stage_loop(stage2_start, stage2_end, stage2_draw, stage2_spellpractice_events, shaderrules, 0, "bgm_stage2boss");
}

View file

@ -113,7 +113,6 @@ void stage3_fog(int fbonum) {
void stage3_start(void) {
init_stage3d(&bgcontext);
start_bgm("bgm_stage3");
bgcontext.cx[2] = -10;
bgcontext.crot[0] = -95;
bgcontext.cv[1] = 20;
@ -281,7 +280,7 @@ void stage3_draw(void) {
void stage3_loop(void) {
ShaderRule shaderrules[] = { stage3_fog, stage3_tunnel, NULL };
stage_loop(stage3_start, stage3_end, stage3_draw, stage3_events, shaderrules, 5700);
stage_loop(stage3_start, stage3_end, stage3_draw, stage3_events, shaderrules, 5700, "bgm_stage3");
}
void stage3_mid_spellbg(Boss*, int t);
@ -305,5 +304,5 @@ void stage3_spellpractice_events(void) {
void stage3_spellpractice_loop(void) {
ShaderRule shaderrules[] = { stage3_fog, stage3_tunnel, NULL };
stage_loop(stage3_start, stage3_end, stage3_draw, stage3_spellpractice_events, shaderrules, 0);
stage_loop(stage3_start, stage3_end, stage3_draw, stage3_spellpractice_events, shaderrules, 0, "bgm_stage3boss");
}

View file

@ -192,7 +192,6 @@ void stage4_corridor_draw(Vector pos) {
void stage4_start(void) {
init_stage3d(&bgcontext);
start_bgm("bgm_stage4");
bgcontext.cx[2] = -10000;
bgcontext.cv[2] = 19.7;
bgcontext.crot[0] = 80;
@ -232,7 +231,7 @@ void stage4_draw(void) {
void stage4_loop(void) {
ShaderRule shaderrules[] = { stage4_fog, NULL };
stage_loop(stage4_start, stage4_end, stage4_draw, stage4_events, shaderrules, 5550);
stage_loop(stage4_start, stage4_end, stage4_draw, stage4_events, shaderrules, 5550, "bgm_stage4");
}
void stage4_spellpractice_events(void) {
@ -248,5 +247,5 @@ void stage4_spellpractice_events(void) {
void stage4_spellpractice_loop(void) {
ShaderRule shaderrules[] = { stage4_fog, NULL };
stage_loop(stage4_start, stage4_end, stage4_draw, stage4_spellpractice_events, shaderrules, 0);
stage_loop(stage4_start, stage4_end, stage4_draw, stage4_spellpractice_events, shaderrules, 0, "bgm_stage4boss");
}

View file

@ -119,7 +119,6 @@ void stage5_start(void) {
init_stage3d(&bgcontext);
add_model(&bgcontext, stage5_stairs_draw, stage5_stairs_pos);
start_bgm("bgm_stage5");
bgcontext.crot[0] = 60;
stagedata.rotshift = 140;
stagedata.rad = 2800;
@ -130,7 +129,7 @@ void stage5_end(void) {
}
void stage5_loop(void) {
stage_loop(stage5_start, stage5_end, stage5_draw, stage5_events, NULL, 5700);
stage_loop(stage5_start, stage5_end, stage5_draw, stage5_events, NULL, 5700, "bgm_stage5");
}
void stage5_spellpractice_events(void) {
@ -145,5 +144,5 @@ void stage5_spellpractice_events(void) {
}
void stage5_spellpractice_loop(void) {
stage_loop(stage5_start, stage5_end, stage5_draw, stage5_spellpractice_events, NULL, 5700);
stage_loop(stage5_start, stage5_end, stage5_draw, stage5_spellpractice_events, NULL, 5700, "bgm_stage5boss");
}

View file

@ -151,7 +151,6 @@ void stage6_start(void) {
init_stage3d(&bgcontext);
fall_over = 0;
start_bgm("bgm_stage6");
add_model(&bgcontext, stage6_skysphere_draw, stage6_skysphere_pos);
add_model(&bgcontext, stage6_towertop_draw, stage6_towertop_pos);
add_model(&bgcontext, stage6_towerwall_draw, stage6_towerwall_pos);
@ -176,7 +175,7 @@ void stage6_end(void) {
void stage6_loop(void) {
// ShaderRule shaderrules[] = { stage6_bloom, NULL };
stage_loop(stage6_start, stage6_end, stage6_draw, stage6_events, NULL, 3900);
stage_loop(stage6_start, stage6_end, stage6_draw, stage6_events, NULL, 3900, "bgm_stage6");
}
void elly_intro(Boss*, int);
@ -232,5 +231,5 @@ void stage6_spellpractice_events(void) {
void stage6_spellpractice_loop(void) {
// ShaderRule shaderrules[] = { stage6_bloom, NULL };
stage_loop(stage6_start, stage6_end, stage6_draw, stage6_spellpractice_events, NULL, 3900);
stage_loop(stage6_start, stage6_end, stage6_draw, stage6_spellpractice_events, NULL, 3900, "bgm_stage6boss");
}