fix problem that IR target is not set when random select is used #808
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
issue
ランダムセレクトで選曲すると、
setRankingData()
が呼ばれないため、その前にプレイした曲のRankingData
が参照され、IRターゲットのグラフがおかしくなる(起動後最初にランダムセレクトした場合は、ターゲットが表示されなくなる)また、リザルトでIRにスコアが送信されると、
RankingDataCache
も上書きされる。when you use random select, score graph of IR target does not work correctly, because
setRankingData()
is not called andRankingData
of previous played song is referred. Also,RankingDataCache
of previous song is overwritten when score is sent to IR.change
選曲決定時に呼ばれていた
setRankingData()
をプレイ開始前に呼ばれるように移動した。move
setRankingData()
fromMusicselector
toBMSPlayer
to ensure thatRankingData
is set before play.note
MusicSelector
内のsetRivalScoreData()
を一緒に消したため、ライバルがセットされている状態でのターゲットグラフとランダムオプションがライバルのスコア依存ではなくなっています(ライバルの配置を使わなくなります)。なので、ライバルの配置を引っ張ってくる実装については別途検討が必要です。
ライバルをセットしているとグラフとオプションが強制的にライバルのスコア依存になる仕様は混乱を招いている?ようなので、これは独立に決められた方がいいと個人的には思っていますが、判断はOwnerの方に任せます。
I also removed
setRivalScoreData()
inMusicSelector
. This makes target graph and random option independent from rival's ScoreData (i.e. pattern of rival's score won't be used). Thus, the implementation of reusing rival's pattern needs to be reconsidered.Since current implementation might be causing confusion, I personally think that target and option should be independent from rival's score, but I leave the desicion to the owner.