exch-bms2 / beatoraja

Cross-platform rhythm game based on Java and libGDX.
GNU General Public License v3.0
627 stars 146 forks source link

Fix to also update rivalrateInt when updating rivalscore in ScoreDataProperty #739

Closed Getaji closed 1 year ago

Getaji commented 1 year ago

ScoreDataProperty 内の rivalscorerivalscorerate の更新時に rivalrateIntrivalrateAfterDot も更新するようにしました。今までは ScoreDataProperty::setTargetScore の呼び出し時のみ更新されていました。この変更により、選曲バーの幾つかの操作とライバルスコアの取得後に上記の値が更新されずスキンで正常に参照できなかった問題が解決します。

問題の再現手順

  1. IRに接続した状態で、ターゲットスコアをIR関連にする
  2. PLAYスキンを rivalrateIntrivalrateAfterDot を参照する整数プロパティ(122と123など)が用いられたものに設定する
  3. 選曲画面でランキングの取得前にIRのプレイ人数が1人以上の譜面を選曲し、プレイ画面に移行する
  4. ターゲットスコアが1以上であるにもかかわらずレート表示が0.00%のようになっている