1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-15 02:42:54 +08:00

Merge remote-tracking branch 'refs/remotes/ppy/master' into colour-provider-implementation

This commit is contained in:
Andrei Zavatski 2020-01-26 12:28:46 +03:00
commit ed314ee935
10 changed files with 35 additions and 35 deletions

View File

@ -111,7 +111,6 @@ platform :ios do
souyuz( souyuz(
platform: "ios", platform: "ios",
build_target: "osu_iOS",
plist_path: "../osu.iOS/Info.plist" plist_path: "../osu.iOS/Info.plist"
) )
end end

View File

@ -54,6 +54,6 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="ppy.osu.Game.Resources" Version="2019.1230.0" /> <PackageReference Include="ppy.osu.Game.Resources" Version="2019.1230.0" />
<PackageReference Include="ppy.osu.Framework.Android" Version="2020.122.0" /> <PackageReference Include="ppy.osu.Framework.Android" Version="2020.125.0" />
</ItemGroup> </ItemGroup>
</Project> </Project>

View File

@ -239,11 +239,11 @@ namespace osu.Game.Beatmaps.Formats
break; break;
case @"Source": case @"Source":
beatmap.BeatmapInfo.Metadata.Source = pair.Value; metadata.Source = pair.Value;
break; break;
case @"Tags": case @"Tags":
beatmap.BeatmapInfo.Metadata.Tags = pair.Value; metadata.Tags = pair.Value;
break; break;
case @"BeatmapID": case @"BeatmapID":
@ -300,13 +300,11 @@ namespace osu.Game.Beatmaps.Formats
switch (type) switch (type)
{ {
case LegacyEventType.Background: case LegacyEventType.Background:
string bgFilename = split[2].Trim('"'); beatmap.BeatmapInfo.Metadata.BackgroundFile = CleanFilename(split[2]);
beatmap.BeatmapInfo.Metadata.BackgroundFile = bgFilename.ToStandardisedPath();
break; break;
case LegacyEventType.Video: case LegacyEventType.Video:
string videoFilename = split[2].Trim('"'); beatmap.BeatmapInfo.Metadata.VideoFile = CleanFilename(split[2]);
beatmap.BeatmapInfo.Metadata.VideoFile = videoFilename.ToStandardisedPath();
break; break;
case LegacyEventType.Break: case LegacyEventType.Break:

View File

@ -3,6 +3,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using osu.Framework.Extensions;
using osu.Framework.Logging; using osu.Framework.Logging;
using osu.Game.Audio; using osu.Game.Audio;
using osu.Game.Beatmaps.ControlPoints; using osu.Game.Beatmaps.ControlPoints;
@ -115,7 +116,7 @@ namespace osu.Game.Beatmaps.Formats
protected KeyValuePair<string, string> SplitKeyVal(string line, char separator = ':') protected KeyValuePair<string, string> SplitKeyVal(string line, char separator = ':')
{ {
var split = line.Trim().Split(new[] { separator }, 2); var split = line.Split(separator, 2);
return new KeyValuePair<string, string> return new KeyValuePair<string, string>
( (
@ -124,6 +125,8 @@ namespace osu.Game.Beatmaps.Formats
); );
} }
protected string CleanFilename(string path) => path.Trim('"').ToStandardisedPath();
protected enum Section protected enum Section
{ {
None, None,

View File

@ -7,7 +7,6 @@ using System.Globalization;
using System.IO; using System.IO;
using osuTK; using osuTK;
using osuTK.Graphics; using osuTK.Graphics;
using osu.Framework.Extensions;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Game.IO; using osu.Game.IO;
using osu.Game.Storyboards; using osu.Game.Storyboards;
@ -65,13 +64,16 @@ namespace osu.Game.Beatmaps.Formats
private void handleEvents(string line) private void handleEvents(string line)
{ {
var depth = 0; var depth = 0;
var lineSpan = line.AsSpan();
while (line.StartsWith(" ", StringComparison.Ordinal) || line.StartsWith("_", StringComparison.Ordinal)) while (lineSpan.StartsWith(" ", StringComparison.Ordinal) || lineSpan.StartsWith("_", StringComparison.Ordinal))
{ {
lineSpan = lineSpan.Slice(1);
++depth; ++depth;
line = line.Substring(1);
} }
line = lineSpan.ToString();
decodeVariables(ref line); decodeVariables(ref line);
string[] split = line.Split(','); string[] split = line.Split(',');
@ -89,7 +91,7 @@ namespace osu.Game.Beatmaps.Formats
{ {
var layer = parseLayer(split[1]); var layer = parseLayer(split[1]);
var origin = parseOrigin(split[2]); var origin = parseOrigin(split[2]);
var path = cleanFilename(split[3]); var path = CleanFilename(split[3]);
var x = float.Parse(split[4], NumberFormatInfo.InvariantInfo); var x = float.Parse(split[4], NumberFormatInfo.InvariantInfo);
var y = float.Parse(split[5], NumberFormatInfo.InvariantInfo); var y = float.Parse(split[5], NumberFormatInfo.InvariantInfo);
storyboardSprite = new StoryboardSprite(path, origin, new Vector2(x, y)); storyboardSprite = new StoryboardSprite(path, origin, new Vector2(x, y));
@ -101,7 +103,7 @@ namespace osu.Game.Beatmaps.Formats
{ {
var layer = parseLayer(split[1]); var layer = parseLayer(split[1]);
var origin = parseOrigin(split[2]); var origin = parseOrigin(split[2]);
var path = cleanFilename(split[3]); var path = CleanFilename(split[3]);
var x = float.Parse(split[4], NumberFormatInfo.InvariantInfo); var x = float.Parse(split[4], NumberFormatInfo.InvariantInfo);
var y = float.Parse(split[5], NumberFormatInfo.InvariantInfo); var y = float.Parse(split[5], NumberFormatInfo.InvariantInfo);
var frameCount = int.Parse(split[6]); var frameCount = int.Parse(split[6]);
@ -116,7 +118,7 @@ namespace osu.Game.Beatmaps.Formats
{ {
var time = double.Parse(split[1], CultureInfo.InvariantCulture); var time = double.Parse(split[1], CultureInfo.InvariantCulture);
var layer = parseLayer(split[2]); var layer = parseLayer(split[2]);
var path = cleanFilename(split[3]); var path = CleanFilename(split[3]);
var volume = split.Length > 4 ? float.Parse(split[4], CultureInfo.InvariantCulture) : 100; var volume = split.Length > 4 ? float.Parse(split[4], CultureInfo.InvariantCulture) : 100;
storyboard.GetLayer(layer).Add(new StoryboardSampleInfo(path, time, (int)volume)); storyboard.GetLayer(layer).Add(new StoryboardSampleInfo(path, time, (int)volume));
break; break;
@ -331,7 +333,5 @@ namespace osu.Game.Beatmaps.Formats
break; break;
} }
} }
private string cleanFilename(string path) => path.Trim('"').ToStandardisedPath();
} }
} }

View File

@ -10,7 +10,6 @@ using osu.Framework.Bindables;
using osu.Framework.Extensions; using osu.Framework.Extensions;
using osu.Framework.Extensions.Color4Extensions; using osu.Framework.Extensions.Color4Extensions;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Shapes; using osu.Framework.Graphics.Shapes;
using osu.Framework.Graphics.Sprites; using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.UserInterface; using osu.Framework.Graphics.UserInterface;
@ -84,14 +83,6 @@ namespace osu.Game.Graphics.UserInterface
set => strip.Colour = value; set => strip.Colour = value;
} }
protected override TabFillFlowContainer CreateTabFlow() => new OsuTabFillFlowContainer
{
Direction = FillDirection.Full,
RelativeSizeAxes = Axes.Both,
Depth = -1,
Masking = true
};
protected override void UpdateAfterChildren() protected override void UpdateAfterChildren()
{ {
base.UpdateAfterChildren(); base.UpdateAfterChildren();
@ -283,10 +274,5 @@ namespace osu.Game.Graphics.UserInterface
} }
} }
} }
private class OsuTabFillFlowContainer : TabFillFlowContainer
{
protected override int Compare(Drawable x, Drawable y) => CompareReverseChildID(x, y);
}
} }
} }

View File

@ -9,6 +9,7 @@ using osuTK;
using System; using System;
using System.Linq; using System.Linq;
using osu.Framework.Bindables; using osu.Framework.Bindables;
using osu.Framework.Graphics.Containers;
namespace osu.Game.Overlays.Chat.Tabs namespace osu.Game.Overlays.Chat.Tabs
{ {
@ -113,5 +114,18 @@ namespace osu.Game.Overlays.Chat.Tabs
OnRequestLeave?.Invoke(tab.Value); OnRequestLeave?.Invoke(tab.Value);
} }
protected override TabFillFlowContainer CreateTabFlow() => new ChannelTabFillFlowContainer
{
Direction = FillDirection.Full,
RelativeSizeAxes = Axes.Both,
Depth = -1,
Masking = true
};
private class ChannelTabFillFlowContainer : TabFillFlowContainer
{
protected override int Compare(Drawable x, Drawable y) => CompareReverseChildID(x, y);
}
} }
} }

View File

@ -116,7 +116,7 @@ namespace osu.Game.Screens.Menu
Origin = Anchor.TopRight, Origin = Anchor.TopRight,
Margin = new MarginPadding { Right = 15, Top = 5 } Margin = new MarginPadding { Right = 15, Top = 5 }
}, },
exitConfirmOverlay.CreateProxy() exitConfirmOverlay?.CreateProxy() ?? Drawable.Empty()
}); });
buttons.StateChanged += state => buttons.StateChanged += state =>

View File

@ -23,7 +23,7 @@
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Core" Version="2.2.6" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Core" Version="2.2.6" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
<PackageReference Include="ppy.osu.Game.Resources" Version="2019.1230.0" /> <PackageReference Include="ppy.osu.Game.Resources" Version="2019.1230.0" />
<PackageReference Include="ppy.osu.Framework" Version="2020.122.0" /> <PackageReference Include="ppy.osu.Framework" Version="2020.125.0" />
<PackageReference Include="Sentry" Version="1.2.0" /> <PackageReference Include="Sentry" Version="1.2.0" />
<PackageReference Include="SharpCompress" Version="0.24.0" /> <PackageReference Include="SharpCompress" Version="0.24.0" />
<PackageReference Include="NUnit" Version="3.12.0" /> <PackageReference Include="NUnit" Version="3.12.0" />

View File

@ -74,7 +74,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup Label="Package References"> <ItemGroup Label="Package References">
<PackageReference Include="ppy.osu.Game.Resources" Version="2019.1230.0" /> <PackageReference Include="ppy.osu.Game.Resources" Version="2019.1230.0" />
<PackageReference Include="ppy.osu.Framework.iOS" Version="2020.122.0" /> <PackageReference Include="ppy.osu.Framework.iOS" Version="2020.125.0" />
</ItemGroup> </ItemGroup>
<!-- Xamarin.iOS does not automatically handle transitive dependencies from NuGet packages. --> <!-- Xamarin.iOS does not automatically handle transitive dependencies from NuGet packages. -->
<ItemGroup Label="Transitive Dependencies"> <ItemGroup Label="Transitive Dependencies">
@ -82,7 +82,7 @@
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.2.6" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.2.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Core" Version="2.2.6" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Core" Version="2.2.6" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
<PackageReference Include="ppy.osu.Framework" Version="2020.122.0" /> <PackageReference Include="ppy.osu.Framework" Version="2020.125.0" />
<PackageReference Include="SharpCompress" Version="0.24.0" /> <PackageReference Include="SharpCompress" Version="0.24.0" />
<PackageReference Include="NUnit" Version="3.12.0" /> <PackageReference Include="NUnit" Version="3.12.0" />
<PackageReference Include="SharpRaven" Version="2.4.0" /> <PackageReference Include="SharpRaven" Version="2.4.0" />