操作
リファクタ #471
完了[core/misc] コア・BGA・パターン生成・起動処理のリファクタ
リファクタ #471:
[core/misc] コア・BGA・パターン生成・起動処理のリファクタ
説明
親 #179 「TODO/FIXME 棚卸し」からの派生(その他: core/BGA/pattern/起動)。
対象 TODO¶
core¶
-
src/.../PixmapResourcePool.java:82— 一部の bms は ImageIO.read で失敗(e.g. past glow)。別の画像デコーダーが必要。 -
src/.../PlayerResource.java:159— play mode、リプレイデータでの読み込み分岐をここで行う。 -
src/.../PlayerResource.java:178— 選曲の時点で表名・フォルダ名を補完しておきたい(select チケットの MusicSelector:425 と重複)。 -
src/.../PlayerConfigInitializer.java:17— プレイヤーアカウント検証(仕様判断)。 -
src/.../BMSPlayerMode.java:10— ReplayData を含めたい。
BGA¶
-
src/.../play/bga/BGAProcessor.java:31— イベントレイヤー対応(現状はミスレイヤーのみ)。
gauge¶
-
src/.../play/SkinGauge.java:138— できれば起動時にやりたい。
pattern¶
-
src/.../pattern/ExtraNoteModifier.java:15— noteType 未実装。 -
src/.../pattern/ModeModifier.java:20— 7to9 ほぼそのままのコードのため要リファクタリング。
対応観点¶
PlayerResource:178 は select チケットの表名/フォルダ名補完と重複。pattern はリプレイのシード再現制約(#440)に注意。
優先度: 通常
エージェント ちゃん さんが7日前に更新
- 関連している リファクタ #179: TODO/FIXME を領域別に棚卸ししてチケット化する を追加
エージェント ちゃん さんが7日前に更新
- ステータス を 未着手 から 実装中 に変更
- 進捗率 を 0 から 10 に変更
実装に着手しました。
- ブランチ:
feature/471 - 対応方針: core/BGA/gauge/pattern の9件のTODOを、#464-#470 と同じ保守的方針で「決定コメント化」(仕様判断・機能追加・将来リファクタ系はいずれも理由を明記して現状維持を判断)。挙動は完全不変。pattern はリプレイのシード再現制約(#440)に従い譜面生成ロジックを変更しない。
エージェント ちゃん さんが7日前に更新
- ステータス を 実装中 から 完了 に変更
- 進捗率 を 10 から 100 に変更
対応が完了しました。
概要¶
親 #179「TODO/FIXME 棚卸し」派生シリーズの最終チケット(core/BGA/gauge/pattern)。#464-#470 と同じ保守的方針で、仕様判断・機能追加・将来リファクタ系の9件のTODOを、現状維持の理由を明記した「決定コメント」へ変換した。挙動は完全に不変(コメントのみ)。
変更点¶
-
core:
PixmapResourcePool(別画像デコーダーはコスト大・影響限定的で非対応)、PlayerResource:159(play/replay分岐集約は再設計伴うため見送り)、PlayerResource:178(表名/フォルダ名補完はselect #467と重複、遅延補完維持)、PlayerConfigInitializer(アカウント検証は仕様未確定)、BMSPlayerMode(不変共有インスタンス前提を崩さず ReplayData は PlayerResource 側で管理) -
BGA:
BGAProcessor(イベントレイヤー対応は範囲外) -
gauge:
SkinGauge(モード確定が描画開始後のため初回描画時の遅延初期化を維持) -
pattern(リプレイのシード再現制約 #440 を尊重し譜面生成ロジックは不変):
ExtraNoteModifier(noteType未実装、見送り)、ModeModifier(7to9汎用化は見送り) - 変更ファイル:
PixmapResourcePool.java/PlayerResource.java/PlayerConfigInitializer.java/BMSPlayerMode.java/play/bga/BGAProcessor.java/play/SkinGauge.java/pattern/ExtraNoteModifier.java/pattern/ModeModifier.javaの8件
テスト¶
-
.\gradlew.bat compileJava: 成功(既存の deprecation/unchecked 警告のみ、エラーなし) - テスト追加なし(コメントのみ・挙動完全不変のため)
関連 MR¶
- !147 (feature/471 → develop)
操作