mirror of
https://github.com/ppy/osu.git
synced 2026-05-25 06:20:02 +08:00
68 lines
2.2 KiB
C#
68 lines
2.2 KiB
C#
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
|
|
// See the LICENCE file in the repository root for full licence text.
|
|
|
|
using System;
|
|
using System.Linq;
|
|
using osu.Framework.Graphics;
|
|
using osu.Framework.Graphics.Containers;
|
|
using osu.Game.Online.API.Requests.Responses;
|
|
using osu.Game.Overlays.Profile.Header.Components;
|
|
using osu.Game.Tests.Visual.UserInterface;
|
|
using osu.Game.Users;
|
|
using osuTK;
|
|
|
|
namespace osu.Game.Tests.Visual.Online
|
|
{
|
|
public partial class TestSceneGlobalRankDisplay : ThemeComparisonTestScene
|
|
{
|
|
public TestSceneGlobalRankDisplay()
|
|
: base(false)
|
|
{
|
|
}
|
|
|
|
protected override Drawable CreateContent() => new FillFlowContainer
|
|
{
|
|
RelativeSizeAxes = Axes.Both,
|
|
Direction = FillDirection.Full,
|
|
Padding = new MarginPadding(20),
|
|
Spacing = new Vector2(40),
|
|
ChildrenEnumerable = new int?[] { 64, 423, 1_453, 3_468, 8_367, 48_342, 78_432, 375_231, 897_783, null }.Select(createDisplay)
|
|
};
|
|
|
|
private GlobalRankDisplay createDisplay(int? rank) => new GlobalRankDisplay
|
|
{
|
|
UserStatistics =
|
|
{
|
|
Value = new UserStatistics
|
|
{
|
|
GlobalRank = rank,
|
|
GlobalRankPercent = rank / 1_000_000f,
|
|
Variants =
|
|
[
|
|
new UserStatistics.Variant
|
|
{
|
|
VariantType = UserStatistics.RulesetVariant.FourKey,
|
|
GlobalRank = rank / 3,
|
|
},
|
|
new UserStatistics.Variant
|
|
{
|
|
VariantType = UserStatistics.RulesetVariant.SevenKey,
|
|
GlobalRank = 2 * rank / 3,
|
|
}
|
|
]
|
|
},
|
|
},
|
|
HighestRank =
|
|
{
|
|
Value = rank == null
|
|
? null
|
|
: new APIUser.UserRankHighest
|
|
{
|
|
Rank = rank.Value / 2,
|
|
UpdatedAt = DateTimeOffset.Now.AddMonths(-3),
|
|
}
|
|
}
|
|
};
|
|
}
|
|
}
|