@inject IGameDataService GameDataService @inject HttpClient Client @inject LoginService LoginService @inject IJSRuntime JSRuntime @page "/Users/{baid:int}/HighScores" @Localizer["Key_01"] User ID: @Baid @if (response is null) { @Localizer["No data."] } else { @if (LoginService.LoginRequired && (!LoginService.IsLoggedIn || (LoginService.GetLoggedInUser().Baid != Baid && !LoginService.IsAdmin))) { @Localizer["Key_02"] } else { @foreach (var difficulty in Enum.GetValues()) { @if (difficulty is not Difficulty.None) { @if (songBestDataMap.TryGetValue(difficulty, out var value)) {
@context.Item.MusicName @context.Item.MusicArtist
@GameDataService.GetMusicStarLevel(@context.Item.SongId, difficulty) @GetGenreTitle(context.Item.Genre) @(GetCrownText(context.Item.BestCrown)) @if (context.Item.BestScoreRank is not ScoreRank.None) { @(GetRankText(context.Item.BestScoreRank)) } @(context.Item.ShowAiData ? @Localizer["Hide"] : @Localizer["Show"])
@if (context.Item.ShowAiData) { @Localizer["AI Battle Data"] @Localizer["Section No."] @Localizer["Result"] @Localizer["Score"] @Localizer["Crown"] @Localizer["Good"] @Localizer["OK"] @Localizer["Bad"] @Localizer["Drumroll"] @(aiSectionContext.SectionIndex + 1) @if (@aiSectionContext.IsWin) { Win } else { Lose } @aiSectionContext.Score @(GetCrownText(aiSectionContext.Crown)) @aiSectionContext.GoodCount @aiSectionContext.OkCount @aiSectionContext.MissCount @aiSectionContext.DrumrollCount }
} else { No data for selected difficulty. }
} }
} }