1
0
mirror of synced 2025-02-21 21:09:39 +01:00

Fixed recently played song and crown saving

This commit is contained in:
TLH 2022-08-27 22:07:36 +09:00
parent c041549d3f
commit b4d612e015
2 changed files with 17 additions and 4 deletions

View File

@ -66,6 +66,19 @@ public class PlayResultController : ControllerBase
var bestDatum = bestData var bestDatum = bestData
.FirstOrDefault(datum => datum.SongId == stageData.SongNo && .FirstOrDefault(datum => datum.SongId == stageData.SongNo &&
datum.Difficulty == (Difficulty)stageData.Level); datum.Difficulty == (Difficulty)stageData.Level);
var crown = CrownType.None;
if (stageData.PlayResult > 0)
{
crown = CrownType.Clear;
if (stageData.NgCnt == 0)
{
crown = CrownType.Gold;
if (stageData.OkCnt == 0)
{
crown = CrownType.Dondaful;
}
}
}
if (bestDatum is null) if (bestDatum is null)
{ {
insert = true; insert = true;
@ -76,9 +89,9 @@ public class PlayResultController : ControllerBase
Difficulty = (Difficulty)stageData.Level Difficulty = (Difficulty)stageData.Level
}; };
} }
if ((uint)bestDatum.BestCrown < stageData.PlayResult) if (bestDatum.BestCrown < crown)
{ {
bestDatum.BestCrown = (CrownType)stageData.PlayResult; bestDatum.BestCrown = crown;
} }
if ((uint)bestDatum.BestScoreRank < stageData.ScoreRank) if ((uint)bestDatum.BestScoreRank < stageData.ScoreRank)
{ {
@ -110,7 +123,7 @@ public class PlayResultController : ControllerBase
MissCount = stageData.NgCnt, MissCount = stageData.NgCnt,
ComboCount = stageData.ComboCnt, ComboCount = stageData.ComboCnt,
HitCount = stageData.HitCnt, HitCount = stageData.HitCnt,
Crown = (CrownType)stageData.PlayResult, Crown = crown,
Score = stageData.PlayScore, Score = stageData.PlayScore,
ScoreRate = stageData.ScoreRate, ScoreRate = stageData.ScoreRate,
ScoreRank = (ScoreRank)stageData.ScoreRank, ScoreRank = (ScoreRank)stageData.ScoreRank,

View File

@ -48,8 +48,8 @@ public class UserDataController : ControllerBase
var recentSongs = context.SongPlayData var recentSongs = context.SongPlayData
.Where(datum => datum.Baid == request.Baid) .Where(datum => datum.Baid == request.Baid)
.OrderByDescending(datum => datum.PlayTime)
.AsEnumerable() .AsEnumerable()
.Reverse()
.DistinctBy(datum => datum.SongId) .DistinctBy(datum => datum.SongId)
.Take(10) .Take(10)
.Select(datum => datum.SongId) .Select(datum => datum.SongId)