diff --git a/.gitignore b/.gitignore
index 7097de6024..33ff47e0df 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,7 +11,7 @@
*.userprefs
# Build results
-[Dd]ebug/
+bin/[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
diff --git a/osu-framework b/osu-framework
index 06f9c47ef5..b061324151 160000
--- a/osu-framework
+++ b/osu-framework
@@ -1 +1 @@
-Subproject commit 06f9c47ef5d007b39faf8169170d16ece672b981
+Subproject commit b0613241512e46eed9dc16ae08ed4064d2db4101
diff --git a/osu.Desktop.Deploy/App.config b/osu.Desktop.Deploy/App.config
index 6272e396fb..33ae53313b 100644
--- a/osu.Desktop.Deploy/App.config
+++ b/osu.Desktop.Deploy/App.config
@@ -23,6 +23,10 @@
+
+
+
+
\ No newline at end of file
diff --git a/osu.Desktop.Deploy/osu.Desktop.Deploy.csproj b/osu.Desktop.Deploy/osu.Desktop.Deploy.csproj
index 122c2ec0d6..898a991292 100644
--- a/osu.Desktop.Deploy/osu.Desktop.Deploy.csproj
+++ b/osu.Desktop.Deploy/osu.Desktop.Deploy.csproj
@@ -36,52 +36,52 @@
osu.Desktop.Deploy.Program
-
- ..\packages\DeltaCompressionDotNet.1.0.0\lib\net45\DeltaCompressionDotNet.dll
+
+ $(SolutionDir)\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.dll
True
-
- ..\packages\DeltaCompressionDotNet.1.0.0\lib\net45\DeltaCompressionDotNet.MsDelta.dll
+
+ $(SolutionDir)\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.MsDelta.dll
True
-
- ..\packages\DeltaCompressionDotNet.1.0.0\lib\net45\DeltaCompressionDotNet.PatchApi.dll
+
+ $(SolutionDir)\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.PatchApi.dll
True
- ..\packages\squirrel.windows.1.5.2\lib\Net45\ICSharpCode.SharpZipLib.dll
+ $(SolutionDir)\packages\squirrel.windows.1.5.2\lib\Net45\ICSharpCode.SharpZipLib.dll
True
- ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.dll
+ $(SolutionDir)\packages\Mono.Cecil.0.9.6.4\lib\net45\Mono.Cecil.dll
True
- ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Mdb.dll
+ $(SolutionDir)\packages\Mono.Cecil.0.9.6.4\lib\net45\Mono.Cecil.Mdb.dll
True
- ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Pdb.dll
+ $(SolutionDir)\packages\Mono.Cecil.0.9.6.4\lib\net45\Mono.Cecil.Pdb.dll
True
- ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Rocks.dll
+ $(SolutionDir)\packages\Mono.Cecil.0.9.6.4\lib\net45\Mono.Cecil.Rocks.dll
True
- ..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll
+ $(SolutionDir)\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll
True
- ..\packages\squirrel.windows.1.5.2\lib\Net45\NuGet.Squirrel.dll
+ $(SolutionDir)\packages\squirrel.windows.1.5.2\lib\Net45\NuGet.Squirrel.dll
True
-
- ..\packages\Splat.1.6.2\lib\Net45\Splat.dll
+
+ $(SolutionDir)\packages\Splat.2.0.0\lib\Net45\Splat.dll
True
- ..\packages\squirrel.windows.1.5.2\lib\Net45\Squirrel.dll
+ $(SolutionDir)\packages\squirrel.windows.1.5.2\lib\Net45\Squirrel.dll
True
diff --git a/osu.Desktop.Deploy/packages.config b/osu.Desktop.Deploy/packages.config
index b7c4b9c3bb..4bbb763e27 100644
--- a/osu.Desktop.Deploy/packages.config
+++ b/osu.Desktop.Deploy/packages.config
@@ -1,9 +1,9 @@
-
-
+
+
-
+
\ No newline at end of file
diff --git a/osu.Desktop.Tests/BenchmarkTest.cs b/osu.Desktop.Tests/BenchmarkTest.cs
index c55b98aa57..6d001655ec 100644
--- a/osu.Desktop.Tests/BenchmarkTest.cs
+++ b/osu.Desktop.Tests/BenchmarkTest.cs
@@ -25,8 +25,7 @@ namespace osu.Desktop.Tests
Ruleset.Register(new ManiaRuleset());
Ruleset.Register(new CatchRuleset());
- host.Add(new Benchmark());
- host.Run();
+ host.Run(new Benchmark());
}
}
}
diff --git a/osu.Desktop.Tests/osu.Desktop.Tests.csproj b/osu.Desktop.Tests/osu.Desktop.Tests.csproj
index 7a5bd59074..9037acb220 100644
--- a/osu.Desktop.Tests/osu.Desktop.Tests.csproj
+++ b/osu.Desktop.Tests/osu.Desktop.Tests.csproj
@@ -34,7 +34,7 @@
- ..\packages\NUnit.3.5.0\lib\net45\nunit.framework.dll
+ $(SolutionDir)\packages\NUnit.3.5.0\lib\net45\nunit.framework.dll
True
diff --git a/osu.Desktop.VisualTests/Program.cs b/osu.Desktop.VisualTests/Program.cs
index 6d51e9162d..6760852cf0 100644
--- a/osu.Desktop.VisualTests/Program.cs
+++ b/osu.Desktop.VisualTests/Program.cs
@@ -27,10 +27,9 @@ namespace osu.Desktop.VisualTests
Ruleset.Register(new CatchRuleset());
if (benchmark)
- host.Add(new Benchmark());
+ host.Run(new Benchmark());
else
- host.Add(new VisualTestGame());
- host.Run();
+ host.Run(new VisualTestGame());
}
}
}
diff --git a/osu.Desktop.VisualTests/Tests/TestCaseGamefield.cs b/osu.Desktop.VisualTests/Tests/TestCaseGamefield.cs
index 9259f2ea78..dd957ee5a0 100644
--- a/osu.Desktop.VisualTests/Tests/TestCaseGamefield.cs
+++ b/osu.Desktop.VisualTests/Tests/TestCaseGamefield.cs
@@ -4,6 +4,7 @@
using System.Collections.Generic;
using osu.Framework.Screens.Testing;
using osu.Framework.Graphics;
+using osu.Framework.Graphics.Containers;
using osu.Framework.MathUtils;
using osu.Framework.Timing;
using osu.Game.Beatmaps;
@@ -27,9 +28,6 @@ namespace osu.Desktop.VisualTests.Tests
{
base.Reset();
- //ensure we are at offset 0
- Clock = new FramedClock();
-
List objects = new List();
int time = 500;
@@ -52,33 +50,42 @@ namespace osu.Desktop.VisualTests.Tests
Add(new Drawable[]
{
- new OsuHitRenderer
+ new Container
{
- Beatmap = beatmap,
- Scale = new Vector2(0.5f),
- Anchor = Anchor.TopLeft,
- Origin = Anchor.TopLeft
- },
- new TaikoHitRenderer
- {
- Beatmap = beatmap,
- Scale = new Vector2(0.5f),
- Anchor = Anchor.TopRight,
- Origin = Anchor.TopRight
- },
- new CatchHitRenderer
- {
- Beatmap = beatmap,
- Scale = new Vector2(0.5f),
- Anchor = Anchor.BottomLeft,
- Origin = Anchor.BottomLeft
- },
- new ManiaHitRenderer
- {
- Beatmap = beatmap,
- Scale = new Vector2(0.5f),
- Anchor = Anchor.BottomRight,
- Origin = Anchor.BottomRight
+ RelativeSizeAxes = Axes.Both,
+ //ensure we are at offset 0
+ Clock = new FramedClock(),
+ Children = new Drawable[]
+ {
+ new OsuHitRenderer
+ {
+ Beatmap = beatmap,
+ Scale = new Vector2(0.5f),
+ Anchor = Anchor.TopLeft,
+ Origin = Anchor.TopLeft
+ },
+ new TaikoHitRenderer
+ {
+ Beatmap = beatmap,
+ Scale = new Vector2(0.5f),
+ Anchor = Anchor.TopRight,
+ Origin = Anchor.TopRight
+ },
+ new CatchHitRenderer
+ {
+ Beatmap = beatmap,
+ Scale = new Vector2(0.5f),
+ Anchor = Anchor.BottomLeft,
+ Origin = Anchor.BottomLeft
+ },
+ new ManiaHitRenderer
+ {
+ Beatmap = beatmap,
+ Scale = new Vector2(0.5f),
+ Anchor = Anchor.BottomRight,
+ Origin = Anchor.BottomRight
+ }
+ }
}
});
}
diff --git a/osu.Desktop.VisualTests/Tests/TestCaseKeyCounter.cs b/osu.Desktop.VisualTests/Tests/TestCaseKeyCounter.cs
index 537bfc8dab..11a422d546 100644
--- a/osu.Desktop.VisualTests/Tests/TestCaseKeyCounter.cs
+++ b/osu.Desktop.VisualTests/Tests/TestCaseKeyCounter.cs
@@ -10,7 +10,7 @@ using OpenTK;
using OpenTK.Graphics;
using osu.Framework.MathUtils;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Screens.Play;
namespace osu.Desktop.VisualTests.Tests
diff --git a/osu.Desktop.VisualTests/osu.Desktop.VisualTests.csproj b/osu.Desktop.VisualTests/osu.Desktop.VisualTests.csproj
index 4e9bd92cbd..1a6cecb0d3 100644
--- a/osu.Desktop.VisualTests/osu.Desktop.VisualTests.csproj
+++ b/osu.Desktop.VisualTests/osu.Desktop.VisualTests.csproj
@@ -82,6 +82,10 @@
+
+ $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1340\lib\net45\OpenTK.dll
+ True
+
False
$(SolutionDir)\packages\SQLite.Net.Core-PCL.3.1.1\lib\portable-win8+net45+wp8+wpa81+MonoAndroid1+MonoTouch1\SQLite.Net.dll
@@ -99,9 +103,8 @@
$(SolutionDir)\packages\SQLite.Net-PCL.3.1.1\lib\net40\SQLite.Net.Platform.Generic.dll
-
- $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1339\lib\net45\OpenTK.dll
-
+
+
diff --git a/osu.Desktop.VisualTests/packages.config b/osu.Desktop.VisualTests/packages.config
index 82404c059e..3da209ee61 100644
--- a/osu.Desktop.VisualTests/packages.config
+++ b/osu.Desktop.VisualTests/packages.config
@@ -5,7 +5,7 @@ Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/maste
-->
-
+
diff --git a/osu.Desktop/Program.cs b/osu.Desktop/Program.cs
index 23de1ddbba..3171e474dc 100644
--- a/osu.Desktop/Program.cs
+++ b/osu.Desktop/Program.cs
@@ -46,8 +46,7 @@ namespace osu.Desktop
Ruleset.Register(new ManiaRuleset());
Ruleset.Register(new CatchRuleset());
- host.Add(new OsuGameDesktop(args));
- host.Run();
+ host.Run(new OsuGameDesktop(args));
}
return 0;
}
diff --git a/osu.Desktop/app.config b/osu.Desktop/app.config
index b9af3fdc80..b3c333c783 100644
--- a/osu.Desktop/app.config
+++ b/osu.Desktop/app.config
@@ -10,6 +10,10 @@ Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/maste
+
+
+
+
\ No newline at end of file
diff --git a/osu.Desktop/osu.Desktop.csproj b/osu.Desktop/osu.Desktop.csproj
index d85671f5be..527a027ca2 100644
--- a/osu.Desktop/osu.Desktop.csproj
+++ b/osu.Desktop/osu.Desktop.csproj
@@ -89,61 +89,61 @@
Properties\app.manifest
-
- ..\packages\DeltaCompressionDotNet.1.0.0\lib\net45\DeltaCompressionDotNet.dll
+
+ $(SolutionDir)\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.dll
True
-
- ..\packages\DeltaCompressionDotNet.1.0.0\lib\net45\DeltaCompressionDotNet.MsDelta.dll
+
+ $(SolutionDir)\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.MsDelta.dll
True
-
- ..\packages\DeltaCompressionDotNet.1.0.0\lib\net45\DeltaCompressionDotNet.PatchApi.dll
+
+ $(SolutionDir)\packages\DeltaCompressionDotNet.1.1.0\lib\net20\DeltaCompressionDotNet.PatchApi.dll
True
- ..\packages\squirrel.windows.1.5.2\lib\Net45\ICSharpCode.SharpZipLib.dll
+ $(SolutionDir)\packages\squirrel.windows.1.5.2\lib\Net45\ICSharpCode.SharpZipLib.dll
True
- ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.dll
+ $(SolutionDir)\packages\Mono.Cecil.0.9.6.4\lib\net45\Mono.Cecil.dll
True
- ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Mdb.dll
+ $(SolutionDir)\packages\Mono.Cecil.0.9.6.4\lib\net45\Mono.Cecil.Mdb.dll
True
- ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Pdb.dll
+ $(SolutionDir)\packages\Mono.Cecil.0.9.6.4\lib\net45\Mono.Cecil.Pdb.dll
True
- ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Rocks.dll
+ $(SolutionDir)\packages\Mono.Cecil.0.9.6.4\lib\net45\Mono.Cecil.Rocks.dll
True
- ..\packages\squirrel.windows.1.5.2\lib\Net45\NuGet.Squirrel.dll
+ $(SolutionDir)\packages\squirrel.windows.1.5.2\lib\Net45\NuGet.Squirrel.dll
True
-
- ..\packages\Splat.1.6.2\lib\Net45\Splat.dll
+
+ $(SolutionDir)\packages\Splat.2.0.0\lib\Net45\Splat.dll
True
- ..\packages\squirrel.windows.1.5.2\lib\Net45\Squirrel.dll
+ $(SolutionDir)\packages\squirrel.windows.1.5.2\lib\Net45\Squirrel.dll
True
- ..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Extensions.dll
+ $(SolutionDir)\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Extensions.dll
True
- ..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Primitives.dll
+ $(SolutionDir)\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Primitives.dll
True
diff --git a/osu.Desktop/packages.config b/osu.Desktop/packages.config
index e203f3042a..bdeaf1de89 100644
--- a/osu.Desktop/packages.config
+++ b/osu.Desktop/packages.config
@@ -4,9 +4,9 @@ Copyright (c) 2007-2017 ppy Pty Ltd .
Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
-->
-
+
-
-
+
+
\ No newline at end of file
diff --git a/osu.Game.Modes.Catch/Objects/Drawable/DrawableFruit.cs b/osu.Game.Modes.Catch/Objects/Drawable/DrawableFruit.cs
index 654352811a..dea8bdfae2 100644
--- a/osu.Game.Modes.Catch/Objects/Drawable/DrawableFruit.cs
+++ b/osu.Game.Modes.Catch/Objects/Drawable/DrawableFruit.cs
@@ -5,7 +5,7 @@ using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Textures;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using OpenTK;
namespace osu.Game.Modes.Catch.Objects.Drawable
diff --git a/osu.Game.Modes.Catch/osu.Game.Modes.Catch.csproj b/osu.Game.Modes.Catch/osu.Game.Modes.Catch.csproj
index 5e3f0f1d96..6b37963da1 100644
--- a/osu.Game.Modes.Catch/osu.Game.Modes.Catch.csproj
+++ b/osu.Game.Modes.Catch/osu.Game.Modes.Catch.csproj
@@ -33,7 +33,7 @@
- ..\packages\ppy.OpenTK.2.0.50727.1339\lib\net45\OpenTK.dll
+ $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1340\lib\net45\OpenTK.dll
True
diff --git a/osu.Game.Modes.Catch/packages.config b/osu.Game.Modes.Catch/packages.config
index d53e65896a..4031dd62a8 100644
--- a/osu.Game.Modes.Catch/packages.config
+++ b/osu.Game.Modes.Catch/packages.config
@@ -4,5 +4,5 @@ Copyright (c) 2007-2017 ppy Pty Ltd .
Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
-->
-
+
\ No newline at end of file
diff --git a/osu.Game.Modes.Mania/Objects/Drawable/DrawableNote.cs b/osu.Game.Modes.Mania/Objects/Drawable/DrawableNote.cs
index 0ee2543930..c682a0dacb 100644
--- a/osu.Game.Modes.Mania/Objects/Drawable/DrawableNote.cs
+++ b/osu.Game.Modes.Mania/Objects/Drawable/DrawableNote.cs
@@ -4,7 +4,7 @@
using osu.Framework.Allocation;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Textures;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Graphics;
using OpenTK;
diff --git a/osu.Game.Modes.Mania/UI/ManiaComboCounter.cs b/osu.Game.Modes.Mania/UI/ManiaComboCounter.cs
index ac437baa2a..b0bd19d6eb 100644
--- a/osu.Game.Modes.Mania/UI/ManiaComboCounter.cs
+++ b/osu.Game.Modes.Mania/UI/ManiaComboCounter.cs
@@ -2,7 +2,7 @@
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Modes.Taiko.UI;
using OpenTK.Graphics;
diff --git a/osu.Game.Modes.Mania/osu.Game.Modes.Mania.csproj b/osu.Game.Modes.Mania/osu.Game.Modes.Mania.csproj
index ecd3fe6423..b9b7e35ae7 100644
--- a/osu.Game.Modes.Mania/osu.Game.Modes.Mania.csproj
+++ b/osu.Game.Modes.Mania/osu.Game.Modes.Mania.csproj
@@ -33,7 +33,7 @@
- ..\packages\ppy.OpenTK.2.0.50727.1339\lib\net45\OpenTK.dll
+ $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1340\lib\net45\OpenTK.dll
True
diff --git a/osu.Game.Modes.Mania/packages.config b/osu.Game.Modes.Mania/packages.config
index d53e65896a..4031dd62a8 100644
--- a/osu.Game.Modes.Mania/packages.config
+++ b/osu.Game.Modes.Mania/packages.config
@@ -4,5 +4,5 @@ Copyright (c) 2007-2017 ppy Pty Ltd .
Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
-->
-
+
\ No newline at end of file
diff --git a/osu.Game.Modes.Osu/Objects/Drawables/Connections/FollowPoint.cs b/osu.Game.Modes.Osu/Objects/Drawables/Connections/FollowPoint.cs
index bc24186e14..1f03a87c1d 100644
--- a/osu.Game.Modes.Osu/Objects/Drawables/Connections/FollowPoint.cs
+++ b/osu.Game.Modes.Osu/Objects/Drawables/Connections/FollowPoint.cs
@@ -6,7 +6,7 @@ using OpenTK.Graphics;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics;
namespace osu.Game.Modes.Osu.Objects.Drawables.Connections
diff --git a/osu.Game.Modes.Osu/Objects/Drawables/DrawableHitCircle.cs b/osu.Game.Modes.Osu/Objects/Drawables/DrawableHitCircle.cs
index 0e085d63b8..9197472f92 100644
--- a/osu.Game.Modes.Osu/Objects/Drawables/DrawableHitCircle.cs
+++ b/osu.Game.Modes.Osu/Objects/Drawables/DrawableHitCircle.cs
@@ -3,7 +3,7 @@
using System;
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Modes.Objects.Drawables;
using osu.Game.Modes.Osu.Objects.Drawables.Pieces;
using OpenTK;
diff --git a/osu.Game.Modes.Osu/Objects/Drawables/DrawableSliderTick.cs b/osu.Game.Modes.Osu/Objects/Drawables/DrawableSliderTick.cs
index 47ffe513c1..5fe9e44b41 100644
--- a/osu.Game.Modes.Osu/Objects/Drawables/DrawableSliderTick.cs
+++ b/osu.Game.Modes.Osu/Objects/Drawables/DrawableSliderTick.cs
@@ -7,7 +7,7 @@ using osu.Framework.Audio;
using osu.Framework.Audio.Sample;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Beatmaps.Samples;
using osu.Game.Modes.Objects.Drawables;
using OpenTK;
diff --git a/osu.Game.Modes.Osu/Objects/Drawables/DrawableSpinner.cs b/osu.Game.Modes.Osu/Objects/Drawables/DrawableSpinner.cs
index ad57341d18..8c491dec9c 100644
--- a/osu.Game.Modes.Osu/Objects/Drawables/DrawableSpinner.cs
+++ b/osu.Game.Modes.Osu/Objects/Drawables/DrawableSpinner.cs
@@ -4,7 +4,7 @@
using System;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.MathUtils;
using osu.Game.Modes.Objects.Drawables;
using osu.Game.Modes.Osu.Objects.Drawables.Pieces;
diff --git a/osu.Game.Modes.Osu/Objects/Drawables/HitExplosion.cs b/osu.Game.Modes.Osu/Objects/Drawables/HitExplosion.cs
index 4176e556d4..8f53041017 100644
--- a/osu.Game.Modes.Osu/Objects/Drawables/HitExplosion.cs
+++ b/osu.Game.Modes.Osu/Objects/Drawables/HitExplosion.cs
@@ -5,7 +5,7 @@ using osu.Framework.Extensions;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics.Sprites;
using osu.Game.Modes.Objects.Drawables;
using OpenTK;
diff --git a/osu.Game.Modes.Osu/Objects/Drawables/Pieces/SliderBall.cs b/osu.Game.Modes.Osu/Objects/Drawables/Pieces/SliderBall.cs
index 1e81b17b06..1b9ddd2236 100644
--- a/osu.Game.Modes.Osu/Objects/Drawables/Pieces/SliderBall.cs
+++ b/osu.Game.Modes.Osu/Objects/Drawables/Pieces/SliderBall.cs
@@ -4,7 +4,7 @@
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using OpenTK.Graphics;
diff --git a/osu.Game.Modes.Osu/Objects/Drawables/Pieces/SpinnerDisc.cs b/osu.Game.Modes.Osu/Objects/Drawables/Pieces/SpinnerDisc.cs
index 405105936d..c2c31d247e 100644
--- a/osu.Game.Modes.Osu/Objects/Drawables/Pieces/SpinnerDisc.cs
+++ b/osu.Game.Modes.Osu/Objects/Drawables/Pieces/SpinnerDisc.cs
@@ -8,7 +8,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Colour;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Graphics;
using OpenTK;
diff --git a/osu.Game.Modes.Osu/Objects/SliderCurve.cs b/osu.Game.Modes.Osu/Objects/SliderCurve.cs
index e582cca580..3b52a41b8c 100644
--- a/osu.Game.Modes.Osu/Objects/SliderCurve.cs
+++ b/osu.Game.Modes.Osu/Objects/SliderCurve.cs
@@ -5,7 +5,6 @@ using System.Collections.Generic;
using OpenTK;
using System.Linq;
using osu.Framework.MathUtils;
-using System.Diagnostics;
namespace osu.Game.Modes.Osu.Objects
{
diff --git a/osu.Game.Modes.Osu/app.config b/osu.Game.Modes.Osu/app.config
index d9da887349..f77f36199c 100644
--- a/osu.Game.Modes.Osu/app.config
+++ b/osu.Game.Modes.Osu/app.config
@@ -1,4 +1,4 @@
-
+
-
+
\ No newline at end of file
diff --git a/osu.Game.Modes.Taiko/Objects/Drawable/DrawableTaikoHit.cs b/osu.Game.Modes.Taiko/Objects/Drawable/DrawableTaikoHit.cs
index e6a44e038c..6666e2ad97 100644
--- a/osu.Game.Modes.Taiko/Objects/Drawable/DrawableTaikoHit.cs
+++ b/osu.Game.Modes.Taiko/Objects/Drawable/DrawableTaikoHit.cs
@@ -5,7 +5,7 @@ using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Textures;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using OpenTK;
namespace osu.Game.Modes.Taiko.Objects.Drawable
diff --git a/osu.Game.Modes.Taiko/UI/TaikoComboCounter.cs b/osu.Game.Modes.Taiko/UI/TaikoComboCounter.cs
index 3187bf1dcf..44afa85989 100644
--- a/osu.Game.Modes.Taiko/UI/TaikoComboCounter.cs
+++ b/osu.Game.Modes.Taiko/UI/TaikoComboCounter.cs
@@ -1,7 +1,7 @@
// Copyright (c) 2007-2017 ppy Pty Ltd .
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Modes.UI;
using OpenTK;
diff --git a/osu.Game.Modes.Taiko/osu.Game.Modes.Taiko.csproj b/osu.Game.Modes.Taiko/osu.Game.Modes.Taiko.csproj
index 6d09463d93..a964d48288 100644
--- a/osu.Game.Modes.Taiko/osu.Game.Modes.Taiko.csproj
+++ b/osu.Game.Modes.Taiko/osu.Game.Modes.Taiko.csproj
@@ -33,7 +33,7 @@
- ..\packages\ppy.OpenTK.2.0.50727.1339\lib\net45\OpenTK.dll
+ $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1340\lib\net45\OpenTK.dll
True
diff --git a/osu.Game.Modes.Taiko/packages.config b/osu.Game.Modes.Taiko/packages.config
index d53e65896a..4031dd62a8 100644
--- a/osu.Game.Modes.Taiko/packages.config
+++ b/osu.Game.Modes.Taiko/packages.config
@@ -4,5 +4,5 @@ Copyright (c) 2007-2017 ppy Pty Ltd .
Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
-->
-
+
\ No newline at end of file
diff --git a/osu.Game.Tests/Beatmaps/IO/ImportBeatmapTest.cs b/osu.Game.Tests/Beatmaps/IO/ImportBeatmapTest.cs
index 8de1a0f918..84635af39a 100644
--- a/osu.Game.Tests/Beatmaps/IO/ImportBeatmapTest.cs
+++ b/osu.Game.Tests/Beatmaps/IO/ImportBeatmapTest.cs
@@ -5,6 +5,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
+using System.Threading.Tasks;
using NUnit.Framework;
using osu.Framework.Desktop.Platform;
using osu.Framework.Platform;
@@ -66,7 +67,7 @@ namespace osu.Game.Tests.Beatmaps.IO
private OsuGameBase loadOsu(GameHost host)
{
var osu = new OsuGameBase();
- host.Add(osu);
+ Task.Run(() => host.Run(osu));
while (!osu.IsLoaded)
Thread.Sleep(1);
diff --git a/osu.Game.Tests/osu.Game.Tests.csproj b/osu.Game.Tests/osu.Game.Tests.csproj
index f555615f09..009cafe59e 100644
--- a/osu.Game.Tests/osu.Game.Tests.csproj
+++ b/osu.Game.Tests/osu.Game.Tests.csproj
@@ -33,17 +33,15 @@
$(SolutionDir)\packages\NUnit.3.5.0\lib\net45\nunit.framework.dll
True
+
+ $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1340\lib\net45\OpenTK.dll
+ True
+
$(SolutionDir)\packages\NUnit.3.5.0\lib\nunit.framework.dll
-
- $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1339\lib\net45\OpenTK.dll
- True
-
-
-
$(SolutionDir)\packages\SQLite.Net.Core-PCL.3.1.1\lib\portable-win8+net45+wp8+wpa81+MonoAndroid1+MonoTouch1\SQLite.Net.dll
diff --git a/osu.Game.Tests/packages.config b/osu.Game.Tests/packages.config
index b9f1a2c8cd..c3be99dfd1 100644
--- a/osu.Game.Tests/packages.config
+++ b/osu.Game.Tests/packages.config
@@ -1,11 +1,11 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/osu.Game/Beatmaps/Beatmap.cs b/osu.Game/Beatmaps/Beatmap.cs
index d92e340e72..f195f8f2ba 100644
--- a/osu.Game/Beatmaps/Beatmap.cs
+++ b/osu.Game/Beatmaps/Beatmap.cs
@@ -18,8 +18,8 @@ namespace osu.Game.Beatmaps
public List HitObjects { get; set; }
public List ControlPoints { get; set; }
public List ComboColors { get; set; }
- public double BPMMaximum => 60000 / ControlPoints.Where(c => c.BeatLength != 0).OrderBy(c => c.BeatLength).First().BeatLength;
- public double BPMMinimum => 60000 / ControlPoints.Where(c => c.BeatLength != 0).OrderByDescending(c => c.BeatLength).First().BeatLength;
+ public double BPMMaximum => 60000 / (ControlPoints?.Where(c => c.BeatLength != 0).OrderBy(c => c.BeatLength).FirstOrDefault() ?? ControlPoint.Default).BeatLength;
+ public double BPMMinimum => 60000 / (ControlPoints?.Where(c => c.BeatLength != 0).OrderByDescending(c => c.BeatLength).FirstOrDefault() ?? ControlPoint.Default).BeatLength;
public double BPMMode => BPMAt(ControlPoints.Where(c => c.BeatLength != 0).GroupBy(c => c.BeatLength).OrderByDescending(grp => grp.Count()).First().First().Time);
public double BPMAt(double time)
diff --git a/osu.Game/Beatmaps/Drawables/BeatmapGroup.cs b/osu.Game/Beatmaps/Drawables/BeatmapGroup.cs
index 36c042ac30..bcdb1c0b5d 100644
--- a/osu.Game/Beatmaps/Drawables/BeatmapGroup.cs
+++ b/osu.Game/Beatmaps/Drawables/BeatmapGroup.cs
@@ -64,7 +64,7 @@ namespace osu.Game.Beatmaps.Drawables
BeatmapSet = beatmapSet;
WorkingBeatmap beatmap = database.GetWorkingBeatmap(BeatmapSet.Beatmaps.FirstOrDefault());
foreach (var b in BeatmapSet.Beatmaps)
- b.StarDifficulty = (float)database.GetWorkingBeatmap(b).Beatmap.CalculateStarDifficulty();
+ b.StarDifficulty = (float)(database.GetWorkingBeatmap(b).Beatmap?.CalculateStarDifficulty() ?? 0);
Header = new BeatmapSetHeader(beatmap)
{
diff --git a/osu.Game/Beatmaps/Drawables/Panel.cs b/osu.Game/Beatmaps/Drawables/Panel.cs
index ec3c2a291f..891e86164c 100644
--- a/osu.Game/Beatmaps/Drawables/Panel.cs
+++ b/osu.Game/Beatmaps/Drawables/Panel.cs
@@ -4,7 +4,7 @@
using osu.Framework;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using OpenTK;
using OpenTK.Graphics;
diff --git a/osu.Game/Database/BeatmapInfo.cs b/osu.Game/Database/BeatmapInfo.cs
index c97b6653e0..7a976a1f7a 100644
--- a/osu.Game/Database/BeatmapInfo.cs
+++ b/osu.Game/Database/BeatmapInfo.cs
@@ -7,7 +7,6 @@ using osu.Game.Beatmaps.Samples;
using osu.Game.Modes;
using SQLite.Net.Attributes;
using SQLiteNetExtensions.Attributes;
-using osu.Game.Beatmaps;
namespace osu.Game.Database
{
diff --git a/osu.Game/Database/BeatmapSetInfo.cs b/osu.Game/Database/BeatmapSetInfo.cs
index e4e9c35963..07076d881e 100644
--- a/osu.Game/Database/BeatmapSetInfo.cs
+++ b/osu.Game/Database/BeatmapSetInfo.cs
@@ -2,7 +2,6 @@
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
using System.Collections.Generic;
-using System.ComponentModel;
using SQLite.Net.Attributes;
using SQLiteNetExtensions.Attributes;
diff --git a/osu.Game/Graphics/Containers/ParallaxContainer.cs b/osu.Game/Graphics/Containers/ParallaxContainer.cs
index 24f8f3076d..1908bd0aa2 100644
--- a/osu.Game/Graphics/Containers/ParallaxContainer.cs
+++ b/osu.Game/Graphics/Containers/ParallaxContainer.cs
@@ -6,7 +6,7 @@ using osu.Framework.Graphics;
using osu.Framework.Input;
using OpenTK;
using osu.Framework.Allocation;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Configuration;
using osu.Framework.Configuration;
diff --git a/osu.Game/Graphics/Cursor/OsuCursorContainer.cs b/osu.Game/Graphics/Cursor/OsuCursorContainer.cs
index 691fb701f1..b8784cef6d 100644
--- a/osu.Game/Graphics/Cursor/OsuCursorContainer.cs
+++ b/osu.Game/Graphics/Cursor/OsuCursorContainer.cs
@@ -10,7 +10,7 @@ using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Cursor;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Textures;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Configuration;
using System;
@@ -43,7 +43,7 @@ namespace osu.Game.Graphics.Cursor
class OsuCursor : Container
{
private Container cursorContainer;
- private BindableDouble cursorScale;
+ private Bindable cursorScale;
public OsuCursor()
{
@@ -54,7 +54,7 @@ namespace osu.Game.Graphics.Cursor
[BackgroundDependencyLoader]
private void load(TextureStore textures, OsuConfigManager config)
{
- cursorScale = (BindableDouble)config.GetBindable(OsuConfig.CursorSize);
+ cursorScale = config.GetBindable(OsuConfig.CursorSize);
Children = new Drawable[]
{
diff --git a/osu.Game/Graphics/UserInterface/DialogButton.cs b/osu.Game/Graphics/UserInterface/DialogButton.cs
index 1d5196330c..9541d5ae6e 100644
--- a/osu.Game/Graphics/UserInterface/DialogButton.cs
+++ b/osu.Game/Graphics/UserInterface/DialogButton.cs
@@ -4,7 +4,7 @@
using OpenTK;
using OpenTK.Graphics;
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Graphics.Colour;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Containers;
diff --git a/osu.Game/Graphics/UserInterface/Nub.cs b/osu.Game/Graphics/UserInterface/Nub.cs
index 61b59d6b51..a64b36208e 100644
--- a/osu.Game/Graphics/UserInterface/Nub.cs
+++ b/osu.Game/Graphics/UserInterface/Nub.cs
@@ -8,7 +8,7 @@ using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Graphics.UserInterface;
namespace osu.Game.Graphics.UserInterface
@@ -55,7 +55,7 @@ namespace osu.Game.Graphics.UserInterface
Roundness = 8,
};
- FadeGlowTo(0);
+ FadeEdgeEffectTo(0);
}
public bool Glowing
@@ -65,11 +65,11 @@ namespace osu.Game.Graphics.UserInterface
if (value)
{
FadeColour(glowingColour, 500, EasingTypes.OutQuint);
- FadeGlowTo(1, 500, EasingTypes.OutQuint);
+ FadeEdgeEffectTo(1, 500, EasingTypes.OutQuint);
}
else
{
- FadeGlowTo(0, 500);
+ FadeEdgeEffectTo(0, 500);
FadeColour(idleColour, 500);
}
}
diff --git a/osu.Game/Graphics/UserInterface/OsuButton.cs b/osu.Game/Graphics/UserInterface/OsuButton.cs
index 4cb827661a..5b9812346c 100644
--- a/osu.Game/Graphics/UserInterface/OsuButton.cs
+++ b/osu.Game/Graphics/UserInterface/OsuButton.cs
@@ -5,7 +5,7 @@ using OpenTK.Graphics;
using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Graphics.UserInterface;
using osu.Framework.Input;
using osu.Game.Graphics.Backgrounds;
diff --git a/osu.Game/Graphics/UserInterface/OsuDropDownMenu.cs b/osu.Game/Graphics/UserInterface/OsuDropDownMenu.cs
index 5bb2414bb3..0bcf4f2100 100644
--- a/osu.Game/Graphics/UserInterface/OsuDropDownMenu.cs
+++ b/osu.Game/Graphics/UserInterface/OsuDropDownMenu.cs
@@ -3,7 +3,7 @@
using System.Collections.Generic;
using System.Linq;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Graphics.UserInterface;
using OpenTK;
using OpenTK.Graphics;
diff --git a/osu.Game/Graphics/UserInterface/OsuPasswordTextBox.cs b/osu.Game/Graphics/UserInterface/OsuPasswordTextBox.cs
index bc8be25035..85b1a1a338 100644
--- a/osu.Game/Graphics/UserInterface/OsuPasswordTextBox.cs
+++ b/osu.Game/Graphics/UserInterface/OsuPasswordTextBox.cs
@@ -4,7 +4,7 @@
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using OpenTK;
using OpenTK.Graphics;
diff --git a/osu.Game/Graphics/UserInterface/OsuSliderBar.cs b/osu.Game/Graphics/UserInterface/OsuSliderBar.cs
index 63c8749f00..58fe24a9e6 100644
--- a/osu.Game/Graphics/UserInterface/OsuSliderBar.cs
+++ b/osu.Game/Graphics/UserInterface/OsuSliderBar.cs
@@ -8,7 +8,7 @@ using osu.Framework.Audio;
using osu.Framework.Audio.Sample;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Graphics.UserInterface;
using osu.Framework.Input;
diff --git a/osu.Game/Graphics/UserInterface/PercentageCounter.cs b/osu.Game/Graphics/UserInterface/PercentageCounter.cs
index b0ccf63fcb..ee4066b336 100644
--- a/osu.Game/Graphics/UserInterface/PercentageCounter.cs
+++ b/osu.Game/Graphics/UserInterface/PercentageCounter.cs
@@ -2,7 +2,7 @@
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using System;
namespace osu.Game.Graphics.UserInterface
diff --git a/osu.Game/Graphics/UserInterface/RollingCounter.cs b/osu.Game/Graphics/UserInterface/RollingCounter.cs
index 3d7a4ad8d7..9d45b13ca9 100644
--- a/osu.Game/Graphics/UserInterface/RollingCounter.cs
+++ b/osu.Game/Graphics/UserInterface/RollingCounter.cs
@@ -4,7 +4,7 @@
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using System;
using System.Collections.Generic;
using System.Diagnostics;
diff --git a/osu.Game/Graphics/UserInterface/ScoreCounter.cs b/osu.Game/Graphics/UserInterface/ScoreCounter.cs
index 2cc1521a24..ebe5b63c5a 100644
--- a/osu.Game/Graphics/UserInterface/ScoreCounter.cs
+++ b/osu.Game/Graphics/UserInterface/ScoreCounter.cs
@@ -2,7 +2,7 @@
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.MathUtils;
using System;
diff --git a/osu.Game/Graphics/UserInterface/StarCounter.cs b/osu.Game/Graphics/UserInterface/StarCounter.cs
index 3c2e9c5cbc..d2ca2e72f7 100644
--- a/osu.Game/Graphics/UserInterface/StarCounter.cs
+++ b/osu.Game/Graphics/UserInterface/StarCounter.cs
@@ -4,7 +4,7 @@
using OpenTK;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.MathUtils;
using System;
@@ -113,7 +113,7 @@ namespace osu.Game.Graphics.UserInterface
int i = 0;
foreach (var star in stars.Children)
{
- star.ClearTransformations(true);
+ star.ClearTransforms(true);
star.FadeTo(i < count ? 1.0f : minStarAlpha);
star.Icon.ScaleTo(getStarScale(i, count));
i++;
@@ -133,7 +133,7 @@ namespace osu.Game.Graphics.UserInterface
int i = 0;
foreach (var star in stars.Children)
{
- star.ClearTransformations(true);
+ star.ClearTransforms(true);
if (count <= newValue)
star.Delay(Math.Max(i - count, 0) * animationDelay, true);
else
diff --git a/osu.Game/Graphics/UserInterface/TwoLayerButton.cs b/osu.Game/Graphics/UserInterface/TwoLayerButton.cs
index cae2431898..bd3574b625 100644
--- a/osu.Game/Graphics/UserInterface/TwoLayerButton.cs
+++ b/osu.Game/Graphics/UserInterface/TwoLayerButton.cs
@@ -6,7 +6,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using OpenTK;
using OpenTK.Graphics;
@@ -164,7 +164,7 @@ namespace osu.Game.Graphics.UserInterface
protected override bool OnHover(InputState state)
{
- icon.ClearTransformations();
+ icon.ClearTransforms();
ResizeTo(SIZE_EXTENDED, transform_time, EasingTypes.OutElastic);
@@ -193,7 +193,7 @@ namespace osu.Game.Graphics.UserInterface
protected override void OnHoverLost(InputState state)
{
- icon.ClearTransformations();
+ icon.ClearTransforms();
ResizeTo(SIZE_RETRACTED, transform_time, EasingTypes.OutElastic);
diff --git a/osu.Game/Graphics/UserInterface/Volume/VolumeControl.cs b/osu.Game/Graphics/UserInterface/Volume/VolumeControl.cs
index 8701cbb718..07a8017294 100644
--- a/osu.Game/Graphics/UserInterface/Volume/VolumeControl.cs
+++ b/osu.Game/Graphics/UserInterface/Volume/VolumeControl.cs
@@ -82,9 +82,9 @@ namespace osu.Game.Graphics.UserInterface.Volume
[BackgroundDependencyLoader]
private void load(AudioManager audio)
{
- volumeMeterMaster.Bindable.Weld(audio.Volume);
- volumeMeterEffect.Bindable.Weld(audio.VolumeSample);
- volumeMeterMusic.Bindable.Weld(audio.VolumeTrack);
+ volumeMeterMaster.Bindable.BindTo(audio.Volume);
+ volumeMeterEffect.Bindable.BindTo(audio.VolumeSample);
+ volumeMeterMusic.Bindable.BindTo(audio.VolumeTrack);
}
ScheduledDelegate popOutDelegate;
@@ -94,7 +94,7 @@ namespace osu.Game.Graphics.UserInterface.Volume
protected override void PopIn()
{
- ClearTransformations();
+ ClearTransforms();
FadeIn(100);
schedulePopOut();
diff --git a/osu.Game/Graphics/UserInterface/Volume/VolumeControlReceptor.cs b/osu.Game/Graphics/UserInterface/Volume/VolumeControlReceptor.cs
index 2a04e1c527..c12f01fa7c 100644
--- a/osu.Game/Graphics/UserInterface/Volume/VolumeControlReceptor.cs
+++ b/osu.Game/Graphics/UserInterface/Volume/VolumeControlReceptor.cs
@@ -2,7 +2,6 @@
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
using System;
-using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Input;
using OpenTK.Input;
diff --git a/osu.Game/Graphics/UserInterface/Volume/VolumeMeter.cs b/osu.Game/Graphics/UserInterface/Volume/VolumeMeter.cs
index 666bf95be5..1a2589a7a9 100644
--- a/osu.Game/Graphics/UserInterface/Volume/VolumeMeter.cs
+++ b/osu.Game/Graphics/UserInterface/Volume/VolumeMeter.cs
@@ -5,7 +5,7 @@ using osu.Framework.Configuration;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Graphics.Sprites;
using OpenTK;
diff --git a/osu.Game/Modes/UI/ComboCounter.cs b/osu.Game/Modes/UI/ComboCounter.cs
index a004fe4a6e..f669efa673 100644
--- a/osu.Game/Modes/UI/ComboCounter.cs
+++ b/osu.Game/Modes/UI/ComboCounter.cs
@@ -5,7 +5,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.MathUtils;
using osu.Game.Graphics.Sprites;
diff --git a/osu.Game/Modes/UI/ComboResultCounter.cs b/osu.Game/Modes/UI/ComboResultCounter.cs
index 4044495dcf..dc624b3660 100644
--- a/osu.Game/Modes/UI/ComboResultCounter.cs
+++ b/osu.Game/Modes/UI/ComboResultCounter.cs
@@ -3,7 +3,7 @@
using System;
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.MathUtils;
using osu.Game.Graphics.UserInterface;
diff --git a/osu.Game/Modes/UI/HealthDisplay.cs b/osu.Game/Modes/UI/HealthDisplay.cs
index 27734cea15..5201a58104 100644
--- a/osu.Game/Modes/UI/HealthDisplay.cs
+++ b/osu.Game/Modes/UI/HealthDisplay.cs
@@ -7,7 +7,7 @@ using osu.Framework.Configuration;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics;
using OpenTK;
using OpenTK.Graphics;
diff --git a/osu.Game/Modes/UI/ScoreOverlay.cs b/osu.Game/Modes/UI/ScoreOverlay.cs
index 7be6af5c6a..e43009adda 100644
--- a/osu.Game/Modes/UI/ScoreOverlay.cs
+++ b/osu.Game/Modes/UI/ScoreOverlay.cs
@@ -64,7 +64,7 @@ namespace osu.Game.Modes.UI
processor.TotalScore.ValueChanged += delegate { ScoreCounter?.Set((ulong)processor.TotalScore.Value); };
processor.Accuracy.ValueChanged += delegate { AccuracyCounter?.Set((float)processor.Accuracy.Value); };
processor.Combo.ValueChanged += delegate { ComboCounter?.Set((ulong)processor.Combo.Value); };
- HealthDisplay?.Current.Weld(processor.Health);
+ HealthDisplay?.Current.BindTo(processor.Health);
}
}
}
diff --git a/osu.Game/OsuGame.cs b/osu.Game/OsuGame.cs
index 49f1353ab7..b8a8fe0618 100644
--- a/osu.Game/OsuGame.cs
+++ b/osu.Game/OsuGame.cs
@@ -15,7 +15,7 @@ using osu.Framework.Logging;
using osu.Game.Graphics.UserInterface.Volume;
using osu.Game.Database;
using osu.Framework.Allocation;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Timing;
using osu.Game.Modes;
using osu.Game.Overlays.Toolbar;
diff --git a/osu.Game/Overlays/ChatOverlay.cs b/osu.Game/Overlays/ChatOverlay.cs
index 6b7963ed1b..c3138cb571 100644
--- a/osu.Game/Overlays/ChatOverlay.cs
+++ b/osu.Game/Overlays/ChatOverlay.cs
@@ -10,7 +10,7 @@ using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Threading;
using osu.Game.Graphics.Sprites;
using osu.Game.Online.API;
diff --git a/osu.Game/Overlays/LoginOverlay.cs b/osu.Game/Overlays/LoginOverlay.cs
index 178cea0a88..e1b72f4ed9 100644
--- a/osu.Game/Overlays/LoginOverlay.cs
+++ b/osu.Game/Overlays/LoginOverlay.cs
@@ -6,7 +6,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics;
using osu.Game.Overlays.Options.Sections.General;
using OpenTK.Graphics;
diff --git a/osu.Game/Overlays/MusicController.cs b/osu.Game/Overlays/MusicController.cs
index aa6b3c6247..661cbe06a4 100644
--- a/osu.Game/Overlays/MusicController.cs
+++ b/osu.Game/Overlays/MusicController.cs
@@ -14,7 +14,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Textures;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Framework.MathUtils;
using osu.Game.Beatmaps;
@@ -78,6 +78,8 @@ namespace osu.Game.Overlays
private void load(OsuGameBase osuGame, OsuConfigManager config, BeatmapDatabase beatmaps, AudioManager audio,
TextureStore textures, OsuColour colours)
{
+ game = osuGame;
+
unicodeString = config.GetUnicodeString;
Children = new Drawable[]
@@ -322,12 +324,6 @@ namespace osu.Game.Overlays
updateDisplay(current, isNext ? TransformDirection.Next : TransformDirection.Prev);
}
- protected override void Load(Framework.Game game)
- {
- this.game = game;
- base.Load(game);
- }
-
Action pendingBeatmapSwitch;
private void updateDisplay(WorkingBeatmap beatmap, TransformDirection direction)
diff --git a/osu.Game/Overlays/NotificationManager.cs b/osu.Game/Overlays/NotificationManager.cs
index 5e37ede783..7172559a94 100644
--- a/osu.Game/Overlays/NotificationManager.cs
+++ b/osu.Game/Overlays/NotificationManager.cs
@@ -8,7 +8,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics;
using osu.Game.Overlays.Notifications;
using OpenTK.Graphics;
diff --git a/osu.Game/Overlays/Notifications/Notification.cs b/osu.Game/Overlays/Notifications/Notification.cs
index 6ad0fde419..e3a1e55868 100644
--- a/osu.Game/Overlays/Notifications/Notification.cs
+++ b/osu.Game/Overlays/Notifications/Notification.cs
@@ -8,7 +8,7 @@ using osu.Framework.Graphics.Colour;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Graphics;
using OpenTK;
@@ -211,7 +211,7 @@ namespace osu.Game.Overlays.Notifications
{
pulsate = value;
- pulsateLayer.ClearTransformations();
+ pulsateLayer.ClearTransforms();
pulsateLayer.Alpha = 1;
if (pulsate)
diff --git a/osu.Game/Overlays/Notifications/NotificationSection.cs b/osu.Game/Overlays/Notifications/NotificationSection.cs
index 0f74df18de..e5a597e387 100644
--- a/osu.Game/Overlays/Notifications/NotificationSection.cs
+++ b/osu.Game/Overlays/Notifications/NotificationSection.cs
@@ -9,7 +9,7 @@ using osu.Framework.Extensions.IEnumerableExtensions;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics;
using osu.Game.Graphics.Sprites;
using OpenTK;
diff --git a/osu.Game/Overlays/Notifications/ProgressNotification.cs b/osu.Game/Overlays/Notifications/ProgressNotification.cs
index 47fa2de33f..6124884add 100644
--- a/osu.Game/Overlays/Notifications/ProgressNotification.cs
+++ b/osu.Game/Overlays/Notifications/ProgressNotification.cs
@@ -6,7 +6,7 @@ using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics;
using osu.Game.Graphics.Sprites;
using OpenTK;
diff --git a/osu.Game/Overlays/Options/Sections/Debug/GCOptions.cs b/osu.Game/Overlays/Options/Sections/Debug/GCOptions.cs
new file mode 100644
index 0000000000..2f04bfe88b
--- /dev/null
+++ b/osu.Game/Overlays/Options/Sections/Debug/GCOptions.cs
@@ -0,0 +1,37 @@
+// Copyright (c) 2007-2017 ppy Pty Ltd .
+// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
+
+using System;
+using System.Runtime;
+using osu.Framework.Allocation;
+using osu.Framework.Configuration;
+using osu.Framework.Graphics;
+using osu.Game.Configuration;
+using osu.Game.Graphics.UserInterface;
+
+namespace osu.Game.Overlays.Options.Sections.Debug
+{
+ public class GCOptions : OptionsSubsection
+ {
+ protected override string Header => "Garbage Collector";
+
+ [BackgroundDependencyLoader]
+ private void load(FrameworkDebugConfigManager config)
+ {
+ Children = new Drawable[]
+ {
+ new OptionEnumDropDown
+ {
+ LabelText = "Active mode",
+ Bindable = config.GetBindable(FrameworkDebugConfig.ActiveGCMode)
+ },
+ new OsuButton
+ {
+ RelativeSizeAxes = Axes.X,
+ Text = "Force garbage collection",
+ Action = () => GC.Collect()
+ },
+ };
+ }
+ }
+}
diff --git a/osu.Game/Overlays/Options/Sections/DebugSection.cs b/osu.Game/Overlays/Options/Sections/DebugSection.cs
new file mode 100644
index 0000000000..0839088f08
--- /dev/null
+++ b/osu.Game/Overlays/Options/Sections/DebugSection.cs
@@ -0,0 +1,23 @@
+// Copyright (c) 2007-2017 ppy Pty Ltd .
+// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
+
+using osu.Framework.Graphics;
+using osu.Game.Graphics;
+using osu.Game.Overlays.Options.Sections.Debug;
+
+namespace osu.Game.Overlays.Options.Sections
+{
+ public class DebugSection : OptionsSection
+ {
+ public override string Header => "Debug";
+ public override FontAwesome Icon => FontAwesome.fa_bug;
+
+ public DebugSection()
+ {
+ Children = new Drawable[]
+ {
+ new GCOptions(),
+ };
+ }
+ }
+}
\ No newline at end of file
diff --git a/osu.Game/Overlays/Options/Sidebar.cs b/osu.Game/Overlays/Options/Sidebar.cs
index 33906a064c..362c448807 100644
--- a/osu.Game/Overlays/Options/Sidebar.cs
+++ b/osu.Game/Overlays/Options/Sidebar.cs
@@ -6,7 +6,7 @@ using OpenTK.Graphics;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Framework.Threading;
using osu.Game.Overlays.Toolbar;
diff --git a/osu.Game/Overlays/OptionsOverlay.cs b/osu.Game/Overlays/OptionsOverlay.cs
index ab3d561e00..6d47e628ea 100644
--- a/osu.Game/Overlays/OptionsOverlay.cs
+++ b/osu.Game/Overlays/OptionsOverlay.cs
@@ -8,7 +8,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Overlays.Options;
using System;
using osu.Game.Graphics;
@@ -55,6 +55,7 @@ namespace osu.Game.Overlays
new EditorSection(),
new OnlineSection(),
new MaintenanceSection(),
+ new DebugSection(),
};
Children = new Drawable[]
{
diff --git a/osu.Game/Overlays/Pause/PauseOverlay.cs b/osu.Game/Overlays/Pause/PauseOverlay.cs
index 04bc8fbd5a..ba472b2c20 100644
--- a/osu.Game/Overlays/Pause/PauseOverlay.cs
+++ b/osu.Game/Overlays/Pause/PauseOverlay.cs
@@ -11,7 +11,7 @@ using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Containers;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics.Sprites;
namespace osu.Game.Overlays.Pause
diff --git a/osu.Game/Overlays/Toolbar/Toolbar.cs b/osu.Game/Overlays/Toolbar/Toolbar.cs
index 7a112ae070..caed663c04 100644
--- a/osu.Game/Overlays/Toolbar/Toolbar.cs
+++ b/osu.Game/Overlays/Toolbar/Toolbar.cs
@@ -6,7 +6,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Colour;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Graphics;
using osu.Game.Modes;
diff --git a/osu.Game/Overlays/Toolbar/ToolbarButton.cs b/osu.Game/Overlays/Toolbar/ToolbarButton.cs
index 8b8010821d..9c3c1095a3 100644
--- a/osu.Game/Overlays/Toolbar/ToolbarButton.cs
+++ b/osu.Game/Overlays/Toolbar/ToolbarButton.cs
@@ -9,7 +9,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Graphics;
using osu.Game.Graphics.Backgrounds;
diff --git a/osu.Game/Overlays/Toolbar/ToolbarModeSelector.cs b/osu.Game/Overlays/Toolbar/ToolbarModeSelector.cs
index 6ef737c25f..b3d1d29ae9 100644
--- a/osu.Game/Overlays/Toolbar/ToolbarModeSelector.cs
+++ b/osu.Game/Overlays/Toolbar/ToolbarModeSelector.cs
@@ -8,7 +8,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Modes;
using OpenTK;
using OpenTK.Graphics;
diff --git a/osu.Game/Screens/BackgroundScreen.cs b/osu.Game/Screens/BackgroundScreen.cs
index fb934551e1..a71eac5fae 100644
--- a/osu.Game/Screens/BackgroundScreen.cs
+++ b/osu.Game/Screens/BackgroundScreen.cs
@@ -6,7 +6,7 @@ using System.Threading;
using osu.Framework.Allocation;
using osu.Framework.Screens;
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using OpenTK;
diff --git a/osu.Game/Screens/Backgrounds/BackgroundScreenBeatmap.cs b/osu.Game/Screens/Backgrounds/BackgroundScreenBeatmap.cs
index 2856d52113..6a8328cf8c 100644
--- a/osu.Game/Screens/Backgrounds/BackgroundScreenBeatmap.cs
+++ b/osu.Game/Screens/Backgrounds/BackgroundScreenBeatmap.cs
@@ -3,7 +3,7 @@
using osu.Framework.Allocation;
using OpenTK;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Beatmaps;
using osu.Game.Graphics.Backgrounds;
diff --git a/osu.Game/Screens/GameScreenWhiteBox.cs b/osu.Game/Screens/GameScreenWhiteBox.cs
index 360dec504c..a172726e67 100644
--- a/osu.Game/Screens/GameScreenWhiteBox.cs
+++ b/osu.Game/Screens/GameScreenWhiteBox.cs
@@ -7,7 +7,7 @@ using osu.Framework.Screens;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Graphics.UserInterface;
using osu.Game.Graphics.Sprites;
using osu.Game.Screens.Backgrounds;
diff --git a/osu.Game/Screens/Menu/Button.cs b/osu.Game/Screens/Menu/Button.cs
index 0c4c6fc1e8..b1e39c8a35 100644
--- a/osu.Game/Screens/Menu/Button.cs
+++ b/osu.Game/Screens/Menu/Button.cs
@@ -9,7 +9,7 @@ using osu.Framework.Audio.Sample;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Graphics;
using osu.Game.Graphics.Sprites;
@@ -138,7 +138,7 @@ namespace osu.Game.Screens.Menu
int duration = 0; //(int)(Game.Audio.BeatLength / 2);
if (duration == 0) duration = 250;
- icon.ClearTransformations();
+ icon.ClearTransforms();
icon.ScaleTo(1, 500, EasingTypes.OutElasticHalf);
@@ -219,7 +219,7 @@ namespace osu.Game.Screens.Menu
protected override void OnHoverLost(InputState state)
{
- icon.ClearTransformations();
+ icon.ClearTransforms();
icon.RotateTo(0, 500, EasingTypes.Out);
icon.MoveTo(Vector2.Zero, 500, EasingTypes.Out);
icon.ScaleTo(0.7f, 500, EasingTypes.OutElasticHalf);
@@ -274,7 +274,7 @@ namespace osu.Game.Screens.Menu
clickAction?.Invoke();
- boxHoverLayer.ClearTransformations();
+ boxHoverLayer.ClearTransforms();
boxHoverLayer.Alpha = 0.9f;
boxHoverLayer.FadeOut(800, EasingTypes.OutExpo);
}
diff --git a/osu.Game/Screens/Menu/ButtonSystem.cs b/osu.Game/Screens/Menu/ButtonSystem.cs
index 0118a7fd41..dad7490c69 100644
--- a/osu.Game/Screens/Menu/ButtonSystem.cs
+++ b/osu.Game/Screens/Menu/ButtonSystem.cs
@@ -10,7 +10,7 @@ using osu.Framework.Audio;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Graphics;
using osu.Game.Overlays.Toolbar;
diff --git a/osu.Game/Screens/Menu/Intro.cs b/osu.Game/Screens/Menu/Intro.cs
index 6d513c1286..cf804de0f4 100644
--- a/osu.Game/Screens/Menu/Intro.cs
+++ b/osu.Game/Screens/Menu/Intro.cs
@@ -7,7 +7,7 @@ using osu.Framework.Audio.Sample;
using osu.Framework.Audio.Track;
using osu.Framework.Screens;
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics.Containers;
using osu.Game.Screens.Backgrounds;
using OpenTK.Graphics;
@@ -69,23 +69,20 @@ namespace osu.Game.Screens.Menu
{
base.OnEntering(last);
- Scheduler.Add(delegate
+ welcome.Play();
+
+ Scheduler.AddDelayed(delegate
{
- welcome.Play();
+ bgm.Start();
+
+ (mainMenu = new MainMenu()).LoadAsync(Game);
Scheduler.AddDelayed(delegate
{
- bgm.Start();
-
- (mainMenu = new MainMenu()).LoadAsync(Game);
-
- Scheduler.AddDelayed(delegate
- {
- DidLoadMenu = true;
- Push(mainMenu);
- }, 2300);
- }, 600);
- });
+ DidLoadMenu = true;
+ Push(mainMenu);
+ }, 2300);
+ }, 600);
logo.ScaleTo(0.4f);
logo.FadeOut();
diff --git a/osu.Game/Screens/Menu/MainMenu.cs b/osu.Game/Screens/Menu/MainMenu.cs
index c0ccbd044e..3ef8eff457 100644
--- a/osu.Game/Screens/Menu/MainMenu.cs
+++ b/osu.Game/Screens/Menu/MainMenu.cs
@@ -5,7 +5,7 @@ using osu.Framework.Allocation;
using osu.Framework.Screens;
using osu.Framework.Screens.Testing;
using osu.Framework.Graphics;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics.Containers;
using osu.Game.Screens.Backgrounds;
using osu.Game.Screens.Charts;
diff --git a/osu.Game/Screens/Menu/OsuLogo.cs b/osu.Game/Screens/Menu/OsuLogo.cs
index a3b852e7a4..09e746f842 100644
--- a/osu.Game/Screens/Menu/OsuLogo.cs
+++ b/osu.Game/Screens/Menu/OsuLogo.cs
@@ -9,7 +9,7 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Textures;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Input;
using osu.Game.Graphics;
using osu.Game.Graphics.Backgrounds;
@@ -204,7 +204,7 @@ namespace osu.Game.Screens.Menu
sampleClick.Play();
- flashLayer.ClearTransformations();
+ flashLayer.ClearTransforms();
flashLayer.Alpha = 0.4f;
flashLayer.FadeOut(1500, EasingTypes.OutExpo);
diff --git a/osu.Game/Screens/OsuGameScreen.cs b/osu.Game/Screens/OsuGameScreen.cs
index 7aa3d5a5d0..871d3a6780 100644
--- a/osu.Game/Screens/OsuGameScreen.cs
+++ b/osu.Game/Screens/OsuGameScreen.cs
@@ -24,43 +24,20 @@ namespace osu.Game.Screens
protected new OsuGameBase Game => base.Game as OsuGameBase;
- private bool boundToBeatmap;
- private Bindable beatmap;
+ private readonly Bindable beatmap = new Bindable();
public WorkingBeatmap Beatmap
{
get
{
- bindBeatmap();
return beatmap.Value;
}
set
{
- bindBeatmap();
beatmap.Value = value;
}
}
- private void bindBeatmap()
- {
- if (beatmap == null)
- beatmap = new Bindable();
-
- if (!boundToBeatmap)
- {
- beatmap.ValueChanged += beatmap_ValueChanged;
- boundToBeatmap = true;
- }
- }
-
- protected override void Dispose(bool isDisposing)
- {
- if (boundToBeatmap)
- beatmap.ValueChanged -= beatmap_ValueChanged;
-
- base.Dispose(isDisposing);
- }
-
private void beatmap_ValueChanged(object sender, EventArgs e)
{
OnBeatmapChanged(beatmap.Value);
@@ -69,19 +46,16 @@ namespace osu.Game.Screens
[BackgroundDependencyLoader(permitNulls: true)]
private void load(OsuGameBase game)
{
- if (beatmap == null)
- beatmap = game?.Beatmap;
- }
-
- public override bool Push(Screen screen)
- {
- OsuScreen nextOsu = screen as OsuScreen;
- if (nextOsu != null)
+ if (game != null)
{
- nextOsu.beatmap = beatmap;
+ //if we were given a beatmap at ctor time, we want to pass this on to the game-wide beatmap.
+ var localMap = beatmap.Value;
+ beatmap.BindTo(game.Beatmap);
+ if (localMap != null)
+ beatmap.Value = localMap;
}
- return base.Push(screen);
+ beatmap.ValueChanged += beatmap_ValueChanged;
}
protected virtual void OnBeatmapChanged(WorkingBeatmap beatmap)
diff --git a/osu.Game/Screens/Play/KeyCounterKeyboard.cs b/osu.Game/Screens/Play/KeyCounterKeyboard.cs
index 83f6526c91..79b75c47c8 100644
--- a/osu.Game/Screens/Play/KeyCounterKeyboard.cs
+++ b/osu.Game/Screens/Play/KeyCounterKeyboard.cs
@@ -1,7 +1,6 @@
// Copyright (c) 2007-2017 ppy Pty Ltd .
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
-using osu.Framework.Graphics;
using osu.Framework.Input;
using OpenTK.Input;
diff --git a/osu.Game/Screens/Play/KeyCounterMouse.cs b/osu.Game/Screens/Play/KeyCounterMouse.cs
index ef3bf3ccba..ad2ee54e2d 100644
--- a/osu.Game/Screens/Play/KeyCounterMouse.cs
+++ b/osu.Game/Screens/Play/KeyCounterMouse.cs
@@ -1,7 +1,6 @@
// Copyright (c) 2007-2017 ppy Pty Ltd .
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
-using osu.Framework.Graphics;
using osu.Framework.Input;
using OpenTK;
using OpenTK.Input;
diff --git a/osu.Game/Screens/Play/Player.cs b/osu.Game/Screens/Play/Player.cs
index 35154b2f45..b552601458 100644
--- a/osu.Game/Screens/Play/Player.cs
+++ b/osu.Game/Screens/Play/Player.cs
@@ -22,7 +22,7 @@ using System;
using System.Linq;
using OpenTK.Graphics;
using osu.Framework.Graphics.Containers;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Logging;
namespace osu.Game.Screens.Play
diff --git a/osu.Game/Screens/Play/PlayerLoader.cs b/osu.Game/Screens/Play/PlayerLoader.cs
index 87d6a82404..c5c9e6722f 100644
--- a/osu.Game/Screens/Play/PlayerLoader.cs
+++ b/osu.Game/Screens/Play/PlayerLoader.cs
@@ -6,9 +6,10 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Framework.Screens;
using osu.Game.Beatmaps;
+using osu.Game.Database;
using osu.Game.Graphics;
using osu.Game.Graphics.Sprites;
using osu.Game.Screens.Backgrounds;
@@ -38,7 +39,6 @@ namespace osu.Game.Screens.Play
Interactive = false,
},
};
-
}
[BackgroundDependencyLoader]
@@ -92,11 +92,6 @@ namespace osu.Game.Screens.Play
Content.ScaleTo(0.7f, 150, EasingTypes.InQuint);
FadeOut(150);
- //OsuScreens are currently never finalised due to the Bindable bindings.
- //can be removed once we solve that one.
- if (player != null && player.LoadState != LoadState.Alive)
- player.Dispose();
-
return base.OnExiting(next);
}
@@ -131,6 +126,8 @@ namespace osu.Game.Screens.Play
public BeatmapMetadataDisplay(WorkingBeatmap beatmap)
{
+ var metadata = beatmap?.BeatmapInfo?.Metadata ?? new BeatmapMetadata();
+
AutoSizeAxes = Axes.Both;
Children = new Drawable[]
{
@@ -144,7 +141,7 @@ namespace osu.Game.Screens.Play
{
new OsuSpriteText
{
- Text = beatmap.BeatmapInfo.Metadata.Title,
+ Text = metadata.Title,
TextSize = 36,
Font = @"Exo2.0-MediumItalic",
Origin = Anchor.TopCentre,
@@ -152,7 +149,7 @@ namespace osu.Game.Screens.Play
},
new OsuSpriteText
{
- Text = beatmap.BeatmapInfo.Metadata.Artist,
+ Text = metadata.Artist,
TextSize = 26,
Font = @"Exo2.0-MediumItalic",
Origin = Anchor.TopCentre,
@@ -179,7 +176,7 @@ namespace osu.Game.Screens.Play
},
new OsuSpriteText
{
- Text = beatmap.BeatmapInfo.Version,
+ Text = beatmap.BeatmapInfo?.Version,
TextSize = 26,
Font = @"Exo2.0-MediumItalic",
Origin = Anchor.TopCentre,
@@ -189,7 +186,7 @@ namespace osu.Game.Screens.Play
Bottom = 40
},
},
- new MetadataLine("Source", beatmap.BeatmapInfo.Metadata.Source)
+ new MetadataLine("Source", metadata.Source)
{
Origin = Anchor.TopCentre,
Anchor = Anchor.TopCentre,
@@ -199,7 +196,7 @@ namespace osu.Game.Screens.Play
Origin = Anchor.TopCentre,
Anchor = Anchor.TopCentre,
},
- new MetadataLine("Mapper", beatmap.BeatmapInfo.Metadata.Author)
+ new MetadataLine("Mapper", metadata.Author)
{
Origin = Anchor.TopCentre,
Anchor = Anchor.TopCentre,
diff --git a/osu.Game/Screens/Ranking/Results.cs b/osu.Game/Screens/Ranking/Results.cs
index 9f5e1f8e5f..33c680e539 100644
--- a/osu.Game/Screens/Ranking/Results.cs
+++ b/osu.Game/Screens/Ranking/Results.cs
@@ -4,7 +4,7 @@
using osu.Framework.Screens;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics.Sprites;
using osu.Game.Modes;
using osu.Game.Screens.Backgrounds;
diff --git a/osu.Game/Screens/Select/BeatmapInfoWedge.cs b/osu.Game/Screens/Select/BeatmapInfoWedge.cs
index 7856d0b031..4a3b9b7fcd 100644
--- a/osu.Game/Screens/Select/BeatmapInfoWedge.cs
+++ b/osu.Game/Screens/Select/BeatmapInfoWedge.cs
@@ -27,7 +27,7 @@ namespace osu.Game.Screens.Select
{
private static readonly Vector2 wedged_container_shear = new Vector2(0.15f, 0);
- private Container beatmapInfoContainer;
+ private BufferedContainer beatmapInfoContainer;
private OsuGameBase game;
@@ -61,8 +61,8 @@ namespace osu.Game.Screens.Select
float newDepth = lastContainer?.Depth + 1 ?? 0;
- BeatmapSetInfo beatmapSetInfo = beatmap.BeatmapSetInfo;
BeatmapInfo beatmapInfo = beatmap.BeatmapInfo;
+ BeatmapMetadata metadata = beatmap.BeatmapInfo?.Metadata ?? beatmap.BeatmapSetInfo?.Metadata ?? new BeatmapMetadata();
List labels = new List();
@@ -133,7 +133,7 @@ namespace osu.Game.Screens.Select
new OsuSpriteText
{
Font = @"Exo2.0-MediumItalic",
- Text = beatmapSetInfo.Metadata.Artist + " -- " + beatmapSetInfo.Metadata.Title,
+ Text = metadata.Artist + " -- " + metadata.Title,
TextSize = 28,
Shadow = true,
},
@@ -161,7 +161,7 @@ namespace osu.Game.Screens.Select
new OsuSpriteText
{
Font = @"Exo2.0-Bold",
- Text = beatmapSetInfo.Metadata.Author,
+ Text = metadata.Author,
TextSize = 15,
Shadow = true,
},
diff --git a/osu.Game/Screens/Select/CarouselContainer.cs b/osu.Game/Screens/Select/CarouselContainer.cs
index bd477f7fdd..9d8f489755 100644
--- a/osu.Game/Screens/Select/CarouselContainer.cs
+++ b/osu.Game/Screens/Select/CarouselContainer.cs
@@ -4,7 +4,7 @@
using OpenTK;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Database;
using System;
using System.Collections.Generic;
diff --git a/osu.Game/Screens/Select/Footer.cs b/osu.Game/Screens/Select/Footer.cs
index 8cde771b50..05ed670673 100644
--- a/osu.Game/Screens/Select/Footer.cs
+++ b/osu.Game/Screens/Select/Footer.cs
@@ -7,7 +7,7 @@ using OpenTK.Graphics;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics;
using osu.Game.Graphics.UserInterface;
using osu.Game.Screens.Menu;
diff --git a/osu.Game/Screens/Select/FooterButton.cs b/osu.Game/Screens/Select/FooterButton.cs
index 77456d2918..daa09f03a3 100644
--- a/osu.Game/Screens/Select/FooterButton.cs
+++ b/osu.Game/Screens/Select/FooterButton.cs
@@ -8,7 +8,7 @@ using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Input;
using System;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Graphics.Sprites;
namespace osu.Game.Screens.Select
@@ -113,7 +113,7 @@ namespace osu.Game.Screens.Select
protected override bool OnClick(InputState state)
{
- box.ClearTransformations();
+ box.ClearTransforms();
box.Alpha = 1;
box.FadeOut(Footer.TRANSITION_LENGTH * 3, EasingTypes.OutQuint);
return base.OnClick(state);
diff --git a/osu.Game/Screens/Select/PlaySongSelect.cs b/osu.Game/Screens/Select/PlaySongSelect.cs
index ff8bf24ec6..3011b5bf23 100644
--- a/osu.Game/Screens/Select/PlaySongSelect.cs
+++ b/osu.Game/Screens/Select/PlaySongSelect.cs
@@ -19,7 +19,7 @@ using osu.Game.Screens.Backgrounds;
using OpenTK;
using osu.Game.Screens.Play;
using osu.Framework.Audio.Sample;
-using osu.Framework.Graphics.Transformations;
+using osu.Framework.Graphics.Transforms;
using osu.Game.Beatmaps.Drawables;
using osu.Game.Graphics.Containers;
using osu.Game.Graphics;
diff --git a/osu.Game/osu.Game.csproj b/osu.Game/osu.Game.csproj
index 2e998cf750..220d72fe23 100644
--- a/osu.Game/osu.Game.csproj
+++ b/osu.Game/osu.Game.csproj
@@ -40,19 +40,19 @@
True
- ..\packages\ppy.OpenTK.2.0.50727.1339\lib\net45\OpenTK.dll
+ $(SolutionDir)\packages\ppy.OpenTK.2.0.50727.1340\lib\net45\OpenTK.dll
True
- ..\packages\SQLite.Net.Core-PCL.3.1.1\lib\portable-win8+net45+wp8+wpa81+MonoAndroid1+MonoTouch1\SQLite.Net.dll
+ $(SolutionDir)\packages\SQLite.Net.Core-PCL.3.1.1\lib\portable-win8+net45+wp8+wpa81+MonoAndroid1+MonoTouch1\SQLite.Net.dll
True
- ..\packages\SQLite.Net-PCL.3.1.1\lib\net40\SQLite.Net.Platform.Generic.dll
+ $(SolutionDir)\packages\SQLite.Net-PCL.3.1.1\lib\net40\SQLite.Net.Platform.Generic.dll
True
- ..\packages\SQLite.Net-PCL.3.1.1\lib\net4\SQLite.Net.Platform.Win32.dll
+ $(SolutionDir)\packages\SQLite.Net-PCL.3.1.1\lib\net4\SQLite.Net.Platform.Win32.dll
True
@@ -63,6 +63,8 @@
$(SolutionDir)\packages\SQLiteNetExtensions.1.3.0\lib\portable-net45+netcore45+wpa81+wp8+MonoAndroid1+MonoTouch1\SQLiteNetExtensions.dll
+
+
@@ -118,6 +120,8 @@
+
+
diff --git a/osu.Game/packages.config b/osu.Game/packages.config
index 0249d173ac..15d28ca24f 100644
--- a/osu.Game/packages.config
+++ b/osu.Game/packages.config
@@ -6,7 +6,7 @@ Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/maste
-
+