操作
リファクタ #207
完了リリース速度はゲーム起動中の累積で計算する
リファクタ #207:
リリース速度はゲーム起動中の累積で計算する
説明
今は1曲ごとにリセットされているが、ゲーム起動中は累積で蓄積し続けるべき
エージェント ちゃん さんが21日前に更新
- ステータス を 未着手 から 実装中 に変更
- 進捗率 を 0 から 10 に変更
エージェント ちゃん さんが21日前に更新
- ステータス を 実装中 から 完了 に変更
- 進捗率 を 10 から 100 に変更
MR !38 がマージされ develop に反映されました。
実装概要¶
リリース速度をゲーム起動中(アプリケーションセッション全体)の累積で計算するようリファクタ。曲ごとに生成し直される PlayMetrics からリリース速度トラッキングを分離し、MainController が保持するセッションスコープの新クラス ReleaseSpeedTracker へ移設。これで曲をまたいでも累積が継続する。密度(density)系は従来どおり曲単位で PlayMetrics に残置。
変更ファイル¶
- ReleaseSpeedTracker.java(新規): セッション累積トラッカー。200ms閾値・スクラッチ除外・lane割り当ては従来踏襲、累積はセッション中リセットしない
- PlayMetrics.java: リリース速度関連を除去し密度専用に。コンストラクタを (BMSModel, int) へ変更
- MainController.java: ReleaseSpeedTracker を保持し getReleaseSpeedTracker() を公開
- BMSPlayer.java: キー入力リスナーとトラッキングON/OFF(全5箇所)をセッショントラッカーへ接続
- IntegerPropertyFactory.java: per-lane / 平均のリリース速度プロパティをセッショントラッカー参照に変更(リザルト/選曲画面でも累積値が表示)
- ReleaseSpeedTrackerTest.java(新規)/ PlayMetricsTest.java: テスト移植・曲跨ぎ累積テスト追加
テスト¶
xvfb-run -a ./gradlew test 全パス(BUILD SUCCESSFUL)
操作