mirror of
https://github.com/ppy/osu.git
synced 2025-01-12 17:43:05 +08:00
Added UserActivity class holding information about the current activity for the local user
This commit is contained in:
parent
a4a2ce5ec0
commit
b216635488
@ -25,6 +25,8 @@ namespace osu.Game.Users
|
||||
|
||||
public Bindable<UserStatus> Status = new Bindable<UserStatus>();
|
||||
|
||||
public Bindable<UserActivity> Activity = new Bindable<UserActivity>();
|
||||
|
||||
//public Team Team;
|
||||
|
||||
[JsonProperty(@"profile_colour")]
|
||||
|
70
osu.Game/Users/UserActivity.cs
Normal file
70
osu.Game/Users/UserActivity.cs
Normal file
@ -0,0 +1,70 @@
|
||||
// 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 osu.Game.Beatmaps;
|
||||
using osu.Game.Graphics;
|
||||
using osuTK.Graphics;
|
||||
|
||||
namespace osu.Game.Users
|
||||
{
|
||||
public abstract class UserActivity
|
||||
{
|
||||
public abstract string Status { get; }
|
||||
public virtual Color4 GetAppropriateColour(OsuColour colours) => colours.GreenDarker;
|
||||
}
|
||||
|
||||
public class UserActivityModding : UserActivity
|
||||
{
|
||||
public override string Status => "Modding a map";
|
||||
public override Color4 GetAppropriateColour(OsuColour colours) => colours.PurpleDark;
|
||||
}
|
||||
|
||||
public class UserActivityChoosingBeatmap : UserActivity
|
||||
{
|
||||
public override string Status => "Choosing a beatmap";
|
||||
}
|
||||
|
||||
public class UserActivityMultiplayerGame : UserActivity
|
||||
{
|
||||
public override string Status => "Multiplaying";
|
||||
}
|
||||
|
||||
public class UserActivityEditing : UserActivity
|
||||
{
|
||||
public UserActivityEditing(BeatmapInfo info)
|
||||
{
|
||||
Beatmap = info;
|
||||
}
|
||||
|
||||
public override string Status => @"Editing a beatmap";
|
||||
|
||||
public BeatmapInfo Beatmap { get; }
|
||||
}
|
||||
|
||||
public class UserActivitySoloGame : UserActivity
|
||||
{
|
||||
public UserActivitySoloGame(BeatmapInfo info, Rulesets.RulesetInfo ruleset)
|
||||
{
|
||||
Beatmap = info;
|
||||
Ruleset = ruleset;
|
||||
}
|
||||
|
||||
public override string Status => @"Solo Game";
|
||||
|
||||
public BeatmapInfo Beatmap { get; }
|
||||
|
||||
public Rulesets.RulesetInfo Ruleset { get; }
|
||||
}
|
||||
|
||||
public class UserActivitySpectating : UserActivity
|
||||
{
|
||||
public override string Status => @"Spectating a game";
|
||||
}
|
||||
|
||||
public class UserActivityInLobby : UserActivity
|
||||
{
|
||||
public override string Status => @"in Multiplayer Lobby";
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -3,7 +3,6 @@
|
||||
|
||||
using osuTK.Graphics;
|
||||
using osu.Game.Graphics;
|
||||
using osu.Game.Beatmaps;
|
||||
|
||||
namespace osu.Game.Users
|
||||
{
|
||||
@ -30,61 +29,6 @@ namespace osu.Game.Users
|
||||
public override Color4 GetAppropriateColour(OsuColour colours) => colours.Gray7;
|
||||
}
|
||||
|
||||
public class UserStatusSpectating : UserStatusOnline
|
||||
{
|
||||
public override string Message => @"Spectating a game";
|
||||
}
|
||||
|
||||
public class UserStatusInLobby : UserStatusOnline
|
||||
{
|
||||
public override string Message => @"in Multiplayer Lobby";
|
||||
}
|
||||
|
||||
public class UserStatusSoloGame : UserStatusBusy
|
||||
{
|
||||
public UserStatusSoloGame(BeatmapInfo info, Rulesets.RulesetInfo ruleset)
|
||||
{
|
||||
Beatmap = info;
|
||||
Ruleset = ruleset;
|
||||
}
|
||||
|
||||
public override string Message => @"Solo Game";
|
||||
|
||||
public BeatmapInfo Beatmap { get; }
|
||||
|
||||
public Rulesets.RulesetInfo Ruleset { get; }
|
||||
}
|
||||
|
||||
public class UserStatusEditing : UserStatusBusy
|
||||
{
|
||||
public UserStatusEditing(BeatmapInfo info)
|
||||
{
|
||||
Beatmap = info;
|
||||
}
|
||||
|
||||
public override string Message => @"Editing a beatmap";
|
||||
|
||||
public override Color4 GetAppropriateColour(OsuColour colours) => colours.GreenDarker;
|
||||
|
||||
public BeatmapInfo Beatmap { get; }
|
||||
}
|
||||
|
||||
public class UserStatusChoosingBeatmap : UserStatusOnline
|
||||
{
|
||||
public override string Message => @"Choosing a beatmap";
|
||||
}
|
||||
|
||||
public class UserStatusMultiplayerGame : UserStatusBusy
|
||||
{
|
||||
public override string Message => @"Multiplaying";
|
||||
}
|
||||
|
||||
public class UserStatusModding : UserStatusOnline
|
||||
{
|
||||
public override string Message => @"Modding a map";
|
||||
public override Color4 GetAppropriateColour(OsuColour colours) => colours.PurpleDark;
|
||||
}
|
||||
|
||||
public class UserStatusDoNotDisturb : UserStatus
|
||||
{
|
||||
public override string Message => @"Do not disturb";
|
||||
|
Loading…
Reference in New Issue
Block a user