From 224e6a877aa854bdd4cc56e9f80e59592fd83980 Mon Sep 17 00:00:00 2001 From: n4b3l Date: Sat, 17 Dec 2016 20:59:41 +0100 Subject: [PATCH] responsive to dim changes --- osu.Game/Screens/Play/Player.cs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/osu.Game/Screens/Play/Player.cs b/osu.Game/Screens/Play/Player.cs index 427777b739..9b7c1f73d1 100644 --- a/osu.Game/Screens/Play/Player.cs +++ b/osu.Game/Screens/Play/Player.cs @@ -23,6 +23,7 @@ using osu.Game.Modes.UI; using osu.Game.Screens.Ranking; using osu.Game.Configuration; using osu.Framework.Configuration; +using System; namespace osu.Game.Screens.Play { @@ -44,7 +45,7 @@ namespace osu.Game.Screens.Play private ScoreProcessor scoreProcessor; private HitRenderer hitRenderer; - private Bindable dimLevel; + private Bindable dimLevel = new Bindable(); [BackgroundDependencyLoader] private void load(AudioManager audio, BeatmapDatabase beatmaps, OsuGameBase game) @@ -113,11 +114,13 @@ namespace osu.Game.Screens.Play }, scoreOverlay, }; - dimLevel = game.Config.GetBindable(OsuConfig.DimLevel); + dimLevel.Weld(game.Config.GetBindable(OsuConfig.DimLevel)); + dimLevel.ValueChanged += dimChanged; } protected override void LoadComplete() { + base.LoadComplete(); Delay(250, true); @@ -156,10 +159,16 @@ namespace osu.Game.Screens.Play protected override bool OnExiting(GameMode next) { + dimLevel.ValueChanged -= dimChanged; Background?.FadeTo(1f, 200); return base.OnExiting(next); } + private void dimChanged(object sender, EventArgs e) + { + Background?.FadeTo((100f - dimLevel) / 100, 800); + } + class PlayerInputManager : UserInputManager { public PlayerInputManager(BasicGameHost host)