mirror of
https://github.com/osukey/osukey.git
synced 2025-05-29 01:17:35 +09:00
Hook up icons better.
This commit is contained in:
parent
0c2152f3d0
commit
2ed5cf7c91
@ -2,6 +2,7 @@
|
|||||||
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
||||||
|
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using osu.Game.Graphics;
|
||||||
using osu.Game.Modes.Catch.UI;
|
using osu.Game.Modes.Catch.UI;
|
||||||
using osu.Game.Modes.Objects;
|
using osu.Game.Modes.Objects;
|
||||||
using osu.Game.Modes.Osu.Objects;
|
using osu.Game.Modes.Osu.Objects;
|
||||||
@ -18,6 +19,8 @@ namespace osu.Game.Modes.Catch
|
|||||||
|
|
||||||
protected override PlayMode PlayMode => PlayMode.Catch;
|
protected override PlayMode PlayMode => PlayMode.Catch;
|
||||||
|
|
||||||
|
public override FontAwesome Icon => FontAwesome.fa_osu_fruits_o;
|
||||||
|
|
||||||
public override ScoreProcessor CreateScoreProcessor(int hitObjectCount) => null;
|
public override ScoreProcessor CreateScoreProcessor(int hitObjectCount) => null;
|
||||||
|
|
||||||
public override HitObjectParser CreateHitObjectParser() => new OsuHitObjectParser();
|
public override HitObjectParser CreateHitObjectParser() => new OsuHitObjectParser();
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
||||||
|
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using osu.Game.Graphics;
|
||||||
using osu.Game.Modes.Mania.UI;
|
using osu.Game.Modes.Mania.UI;
|
||||||
using osu.Game.Modes.Objects;
|
using osu.Game.Modes.Objects;
|
||||||
using osu.Game.Modes.Osu;
|
using osu.Game.Modes.Osu;
|
||||||
@ -19,6 +20,8 @@ namespace osu.Game.Modes.Mania
|
|||||||
|
|
||||||
protected override PlayMode PlayMode => PlayMode.Mania;
|
protected override PlayMode PlayMode => PlayMode.Mania;
|
||||||
|
|
||||||
|
public override FontAwesome Icon => FontAwesome.fa_osu_mania_o;
|
||||||
|
|
||||||
public override ScoreProcessor CreateScoreProcessor(int hitObjectCount) => null;
|
public override ScoreProcessor CreateScoreProcessor(int hitObjectCount) => null;
|
||||||
|
|
||||||
public override HitObjectParser CreateHitObjectParser() => new OsuHitObjectParser();
|
public override HitObjectParser CreateHitObjectParser() => new OsuHitObjectParser();
|
||||||
|
@ -34,6 +34,8 @@ namespace osu.Game.Modes.Osu
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
public override FontAwesome Icon => FontAwesome.fa_osu_osu_o;
|
||||||
|
|
||||||
public override HitObjectParser CreateHitObjectParser() => new OsuHitObjectParser();
|
public override HitObjectParser CreateHitObjectParser() => new OsuHitObjectParser();
|
||||||
|
|
||||||
public override ScoreProcessor CreateScoreProcessor(int hitObjectCount) => new OsuScoreProcessor(hitObjectCount);
|
public override ScoreProcessor CreateScoreProcessor(int hitObjectCount) => new OsuScoreProcessor(hitObjectCount);
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using osu.Game.Graphics;
|
||||||
using osu.Game.Modes.Objects;
|
using osu.Game.Modes.Objects;
|
||||||
using osu.Game.Modes.Osu.Objects;
|
using osu.Game.Modes.Osu.Objects;
|
||||||
using osu.Game.Modes.Osu.UI;
|
using osu.Game.Modes.Osu.UI;
|
||||||
@ -19,6 +20,8 @@ namespace osu.Game.Modes.Taiko
|
|||||||
|
|
||||||
protected override PlayMode PlayMode => PlayMode.Taiko;
|
protected override PlayMode PlayMode => PlayMode.Taiko;
|
||||||
|
|
||||||
|
public override FontAwesome Icon => FontAwesome.fa_osu_taiko_o;
|
||||||
|
|
||||||
public override ScoreProcessor CreateScoreProcessor(int hitObjectCount) => null;
|
public override ScoreProcessor CreateScoreProcessor(int hitObjectCount) => null;
|
||||||
|
|
||||||
public override HitObjectParser CreateHitObjectParser() => new OsuHitObjectParser();
|
public override HitObjectParser CreateHitObjectParser() => new OsuHitObjectParser();
|
||||||
|
@ -74,6 +74,8 @@ namespace osu.Game.Beatmaps.Drawables
|
|||||||
StartRequested = p => { StartRequested?.Invoke(p.Beatmap); },
|
StartRequested = p => { StartRequested?.Invoke(p.Beatmap); },
|
||||||
RelativeSizeAxes = Axes.X,
|
RelativeSizeAxes = Axes.X,
|
||||||
}).ToList();
|
}).ToList();
|
||||||
|
|
||||||
|
Header.AddDifficultyIcons(BeatmapPanels);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void headerGainedSelection(BeatmapSetHeader panel)
|
private void headerGainedSelection(BeatmapSetHeader panel)
|
||||||
|
@ -17,6 +17,7 @@ using osu.Game.Graphics.UserInterface;
|
|||||||
using OpenTK;
|
using OpenTK;
|
||||||
using OpenTK.Graphics;
|
using OpenTK.Graphics;
|
||||||
using osu.Framework.Input;
|
using osu.Framework.Input;
|
||||||
|
using osu.Game.Modes;
|
||||||
|
|
||||||
namespace osu.Game.Beatmaps.Drawables
|
namespace osu.Game.Beatmaps.Drawables
|
||||||
{
|
{
|
||||||
@ -83,7 +84,7 @@ namespace osu.Game.Beatmaps.Drawables
|
|||||||
Origin = Anchor.CentreLeft,
|
Origin = Anchor.CentreLeft,
|
||||||
Children = new Drawable[]
|
Children = new Drawable[]
|
||||||
{
|
{
|
||||||
new DifficultyIcon(FontAwesome.fa_dot_circle_o, new Color4(159, 198, 0, 255))
|
new DifficultyIcon(beatmap)
|
||||||
{
|
{
|
||||||
Scale = new Vector2(1.8f),
|
Scale = new Vector2(1.8f),
|
||||||
Anchor = Anchor.CentreLeft,
|
Anchor = Anchor.CentreLeft,
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using osu.Framework.Allocation;
|
using osu.Framework.Allocation;
|
||||||
using osu.Framework.Configuration;
|
using osu.Framework.Configuration;
|
||||||
using osu.Framework.Graphics;
|
using osu.Framework.Graphics;
|
||||||
@ -23,6 +24,7 @@ namespace osu.Game.Beatmaps.Drawables
|
|||||||
private OsuConfigManager config;
|
private OsuConfigManager config;
|
||||||
private Bindable<bool> preferUnicode;
|
private Bindable<bool> preferUnicode;
|
||||||
private WorkingBeatmap beatmap;
|
private WorkingBeatmap beatmap;
|
||||||
|
private FlowContainer difficultyIcons;
|
||||||
|
|
||||||
public BeatmapSetHeader(WorkingBeatmap beatmap)
|
public BeatmapSetHeader(WorkingBeatmap beatmap)
|
||||||
{
|
{
|
||||||
@ -56,15 +58,10 @@ namespace osu.Game.Beatmaps.Drawables
|
|||||||
TextSize = 17,
|
TextSize = 17,
|
||||||
Shadow = true,
|
Shadow = true,
|
||||||
},
|
},
|
||||||
new FlowContainer
|
difficultyIcons = new FlowContainer
|
||||||
{
|
{
|
||||||
Margin = new MarginPadding { Top = 5 },
|
Margin = new MarginPadding { Top = 5 },
|
||||||
AutoSizeAxes = Axes.Both,
|
AutoSizeAxes = Axes.Both,
|
||||||
Children = new[]
|
|
||||||
{
|
|
||||||
new DifficultyIcon(FontAwesome.fa_dot_circle_o, new Color4(159, 198, 0, 255)),
|
|
||||||
new DifficultyIcon(FontAwesome.fa_dot_circle_o, new Color4(246, 101, 166, 255)),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -177,5 +174,11 @@ namespace osu.Game.Beatmaps.Drawables
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void AddDifficultyIcons(IEnumerable<BeatmapPanel> panels)
|
||||||
|
{
|
||||||
|
foreach (var p in panels)
|
||||||
|
difficultyIcons.Add(new DifficultyIcon(p.Beatmap));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -3,7 +3,9 @@
|
|||||||
|
|
||||||
using osu.Framework.Graphics;
|
using osu.Framework.Graphics;
|
||||||
using osu.Framework.Graphics.Containers;
|
using osu.Framework.Graphics.Containers;
|
||||||
|
using osu.Game.Database;
|
||||||
using osu.Game.Graphics;
|
using osu.Game.Graphics;
|
||||||
|
using osu.Game.Modes;
|
||||||
using OpenTK;
|
using OpenTK;
|
||||||
using OpenTK.Graphics;
|
using OpenTK.Graphics;
|
||||||
|
|
||||||
@ -11,7 +13,7 @@ namespace osu.Game.Beatmaps.Drawables
|
|||||||
{
|
{
|
||||||
class DifficultyIcon : Container
|
class DifficultyIcon : Container
|
||||||
{
|
{
|
||||||
public DifficultyIcon(FontAwesome icon, Color4 color)
|
public DifficultyIcon(BeatmapInfo beatmap)
|
||||||
{
|
{
|
||||||
const float size = 20;
|
const float size = 20;
|
||||||
Size = new Vector2(size);
|
Size = new Vector2(size);
|
||||||
@ -21,8 +23,8 @@ namespace osu.Game.Beatmaps.Drawables
|
|||||||
{
|
{
|
||||||
Anchor = Anchor.Centre,
|
Anchor = Anchor.Centre,
|
||||||
TextSize = size,
|
TextSize = size,
|
||||||
Colour = color,
|
Colour = new Color4(159, 198, 0, 255),
|
||||||
Icon = icon
|
Icon = Ruleset.GetRuleset(beatmap.Mode).Icon
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -4,11 +4,8 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using osu.Game.Modes.Objects;
|
using osu.Game.Modes.Objects;
|
||||||
using osu.Game.Modes.UI;
|
using osu.Game.Modes.UI;
|
||||||
using System.Reflection;
|
|
||||||
using osu.Framework.Extensions;
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Concurrent;
|
using System.Collections.Concurrent;
|
||||||
using System.Linq;
|
|
||||||
using osu.Game.Beatmaps;
|
using osu.Game.Beatmaps;
|
||||||
using osu.Game.Graphics;
|
using osu.Game.Graphics;
|
||||||
|
|
||||||
@ -39,6 +36,8 @@ namespace osu.Game.Modes
|
|||||||
|
|
||||||
protected abstract PlayMode PlayMode { get; }
|
protected abstract PlayMode PlayMode { get; }
|
||||||
|
|
||||||
|
public virtual FontAwesome Icon => FontAwesome.fa_question_circle;
|
||||||
|
|
||||||
public static Ruleset GetRuleset(PlayMode mode)
|
public static Ruleset GetRuleset(PlayMode mode)
|
||||||
{
|
{
|
||||||
Type type;
|
Type type;
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
|
|
||||||
using osu.Framework.Extensions;
|
using osu.Framework.Extensions;
|
||||||
using osu.Framework.Graphics.Containers;
|
using osu.Framework.Graphics.Containers;
|
||||||
using osu.Game.Graphics;
|
|
||||||
using osu.Game.Modes;
|
using osu.Game.Modes;
|
||||||
using OpenTK.Graphics;
|
using OpenTK.Graphics;
|
||||||
|
|
||||||
@ -20,7 +19,7 @@ namespace osu.Game.Overlays.Toolbar
|
|||||||
mode = value;
|
mode = value;
|
||||||
TooltipMain = mode.GetDescription();
|
TooltipMain = mode.GetDescription();
|
||||||
TooltipSub = $"Play some {mode.GetDescription()}";
|
TooltipSub = $"Play some {mode.GetDescription()}";
|
||||||
Icon = getModeIcon(mode);
|
Icon = Ruleset.GetRuleset(mode).Icon;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -48,17 +47,6 @@ namespace osu.Game.Overlays.Toolbar
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private FontAwesome getModeIcon(PlayMode mode)
|
|
||||||
{
|
|
||||||
switch (mode)
|
|
||||||
{
|
|
||||||
default: return FontAwesome.fa_osu_osu_o;
|
|
||||||
case PlayMode.Taiko: return FontAwesome.fa_osu_taiko_o;
|
|
||||||
case PlayMode.Catch: return FontAwesome.fa_osu_fruits_o;
|
|
||||||
case PlayMode.Mania: return FontAwesome.fa_osu_mania_o;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void LoadComplete()
|
protected override void LoadComplete()
|
||||||
{
|
{
|
||||||
base.LoadComplete();
|
base.LoadComplete();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user