From b68a61933fd618ae937547ebd6821c1131f750a1 Mon Sep 17 00:00:00 2001 From: nmlgc Date: Fri, 27 Jan 2023 23:14:43 +0100 Subject: [PATCH] [Maintenance] [th01] Bosses: Classify the end-of-boss scene load as ZUN bloat Part of P0229, funded by Ember2528. --- th01/main/boss/b10j.cpp | 4 ++++ th01/main/boss/b10m.cpp | 6 ++++++ th01/main/boss/b15j.cpp | 4 ++++ th01/main/boss/b15m.cpp | 4 ++++ th01/main/boss/defeat.cpp | 4 ++++ 5 files changed, 22 insertions(+) diff --git a/th01/main/boss/b10j.cpp b/th01/main/boss/b10j.cpp index 0123a276..88ef05b1 100644 --- a/th01/main/boss/b10j.cpp +++ b/th01/main/boss/b10j.cpp @@ -1345,6 +1345,10 @@ void mima_main(void) Missiles.reset(); shootout_lasers_unput_and_reset_broken(i, 5); // 5? Doubly broken... boss_defeat_animate(); + + // ZUN bloat: Already done at the start of REIIDEN.EXE's main(). + // The REIIDEN.EXE process restarts after the end of a scene + // anyway, making this load doubly pointless. scene_init_and_load(4); } } diff --git a/th01/main/boss/b10m.cpp b/th01/main/boss/b10m.cpp index 85fc39be..6a3a432e 100644 --- a/th01/main/boss/b10m.cpp +++ b/th01/main/boss/b10m.cpp @@ -1211,6 +1211,12 @@ inline void conditionally_reset_missiles(bool cond) { /* 5? Triply broken, since this fight doesn't even use lasers... */ \ shootout_lasers_unput_and_reset_broken(tmp_i, 5); \ boss_defeat_animate(); \ + \ + /** \ + * ZUN bloat: Already done at the start of REIIDEN.EXE's main(). \ + * The REIIDEN.EXE process restarts after the end of a scene \ + * anyway, making this load doubly pointless. \ + */ \ scene_init_and_load(3); \ } \ } diff --git a/th01/main/boss/b15j.cpp b/th01/main/boss/b15j.cpp index 140df821..8a57c3db 100644 --- a/th01/main/boss/b15j.cpp +++ b/th01/main/boss/b15j.cpp @@ -1158,6 +1158,10 @@ entrance_rings_still_active: Pellets.unput_and_reset(); shootout_lasers_unput_and_reset_broken(i, 4); // 4? Doubly broken... boss_defeat_animate(); + + // ZUN bloat: Already done at the start of REIIDEN.EXE's main(). + // The REIIDEN.EXE process restarts after the end of a scene + // anyway, making this load doubly pointless. scene_init_and_load(6); } } diff --git a/th01/main/boss/b15m.cpp b/th01/main/boss/b15m.cpp index d7bebced..97ab20ed 100644 --- a/th01/main/boss/b15m.cpp +++ b/th01/main/boss/b15m.cpp @@ -2140,6 +2140,10 @@ void elis_main(void) Missiles.reset(); shootout_lasers_unput_and_reset_broken(i, SHOOTOUT_LASER_COUNT); boss_defeat_animate(); + + // ZUN bloat: Already done at the start of REIIDEN.EXE's main(). + // The REIIDEN.EXE process restarts after the end of a scene + // anyway, making this load doubly pointless. scene_init_and_load(5); } } diff --git a/th01/main/boss/defeat.cpp b/th01/main/boss/defeat.cpp index 4d75c9e8..9344c194 100644 --- a/th01/main/boss/defeat.cpp +++ b/th01/main/boss/defeat.cpp @@ -199,11 +199,15 @@ void singyoku_defeat_animate_and_select_route(void) frame_delay(5); } + // ZUN bloat: Already done at the start of REIIDEN.EXE's main(). The + // REIIDEN:EXE process restarts after the end of a scene anyway, making + // this load doubly pointless. if(route_sel.v == ROUTE_MAKAI) { scene_init_and_load(1); } else { scene_init_and_load(2); } + route = route_sel.v; stage_cleared = true; player_is_hit = true;