Exposes events for handling song change in osu!.
#Features
- Emits basic song change events from osu! client.
- Does not suppress other windows from getting events when used multiple times (i.e. passes SendMessage events to other applications which are using this library).
#Data Structs
public struct OSUMusic
{
public bool active;
public OSUMusicStatus status;
public string musicString;
public DateTime createdAt;
public int retries;
Field | Description |
---|---|
active |
1 if osu! is active, 0 if osu! is shutting down. |
status |
Possible values: Inactive , Listening , Playing , Watching . |
musicString |
Formatted as "Artist - Title [Difficulty]". Note: Difficulty is displayed only when status is Playing or Watching . |
createdAt |
When OSUMusic object was created. |
retries |
Retry counter for the song. |
#Examples
static void Main(string[] args)
{
OSUMusicTracker tracker = new OSUMusicTracker();
tracker.MusicUpdated += new OSUMusicTracker.MusicUpdate((OSUMusicTracker m, OSUMusic music) =>
{
string stringStatus = String.Empty;
switch (music.status)
{
case OSUMusicStatus.Listening:
stringStatus = "listening to";
break;
case OSUMusicStatus.Playing:
stringStatus = "playing";
break;
case OSUMusicStatus.Watching:
stringStatus = "watching";
break;
}
Console.WriteLine(
(music.active ? "1" : "0") + "] " +
stringStatus + " " +
music.musicString
);
});
tracker.OnRetry += new OSUMusicTracker.BeatmapRetry(
(OSUMusicTracker m, OSUMusic music) => {
Console.WriteLine("Retry");
}
);
Application.Run();
}
#License None yet.