1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-16 17:43:12 +08:00

Fix test and spawn smoke immediately

This commit is contained in:
Alden Wu 2022-09-19 10:16:05 -07:00
parent 74056201e7
commit c3b8e1d718
4 changed files with 14 additions and 7 deletions

View File

@ -10,7 +10,6 @@ using osu.Framework.Input.Bindings;
using osu.Framework.Input.Events; using osu.Framework.Input.Events;
using osu.Framework.Input.StateChanges.Events; using osu.Framework.Input.StateChanges.Events;
using osu.Game.Rulesets.UI; using osu.Game.Rulesets.UI;
using osu.Game.Screens.Play;
namespace osu.Game.Rulesets.Osu namespace osu.Game.Rulesets.Osu
{ {

View File

@ -166,17 +166,21 @@ namespace osu.Game.Rulesets.Osu.Skinning
{ {
base.LoadComplete(); base.LoadComplete();
Anchor = Anchor.TopLeft;
Origin = Anchor.TopLeft;
SmokeStartTime = Time.Current;
totalDistance = PointInterval;
if (smokeContainer != null) if (smokeContainer != null)
{ {
smokeContainer.SmokeMoved += onSmokeMoved; smokeContainer.SmokeMoved += onSmokeMoved;
smokeContainer.SmokeEnded += onSmokeEnded; smokeContainer.SmokeEnded += onSmokeEnded;
IsActive = true; IsActive = true;
onSmokeMoved(smokeContainer.LastMousePosition, Time.Current);
} }
Anchor = Anchor.TopLeft;
Origin = Anchor.TopLeft;
SmokeStartTime = Time.Current;
} }
private Vector2 nextPointDirection() private Vector2 nextPointDirection()

View File

@ -19,6 +19,8 @@ namespace osu.Game.Rulesets.Osu.UI
public event Action<Vector2, double>? SmokeMoved; public event Action<Vector2, double>? SmokeMoved;
public event Action<double>? SmokeEnded; public event Action<double>? SmokeEnded;
public Vector2 LastMousePosition;
private bool isSmoking; private bool isSmoking;
public override bool ReceivePositionalInputAt(Vector2 _) => true; public override bool ReceivePositionalInputAt(Vector2 _) => true;
@ -50,6 +52,8 @@ namespace osu.Game.Rulesets.Osu.UI
if (isSmoking) if (isSmoking)
SmokeMoved?.Invoke(e.MousePosition, Time.Current); SmokeMoved?.Invoke(e.MousePosition, Time.Current);
LastMousePosition = e.MousePosition;
return base.OnMouseMove(e); return base.OnMouseMove(e);
} }
} }

View File

@ -31,7 +31,7 @@ namespace osu.Game.Tests.Visual.Gameplay
AddUntilStep("wait for track to start running", () => Beatmap.Value.Track.IsRunning); AddUntilStep("wait for track to start running", () => Beatmap.Value.Track.IsRunning);
addSeekStep(3000); addSeekStep(3000);
AddAssert("all judged", () => Player.DrawableRuleset.Playfield.AllHitObjects.All(h => h.Judged)); AddAssert("all judged", () => Player.DrawableRuleset.Playfield.AllHitObjects.All(h => h.Judged));
AddUntilStep("key counter counted keys", () => Player.HUDOverlay.KeyCounter.Children.All(kc => kc.CountPresses >= 7)); AddUntilStep("key counter counted keys", () => Player.HUDOverlay.KeyCounter.Children.Select(kc => kc.CountPresses).Sum() == 15);
AddStep("clear results", () => Player.Results.Clear()); AddStep("clear results", () => Player.Results.Clear());
addSeekStep(0); addSeekStep(0);
AddAssert("none judged", () => Player.DrawableRuleset.Playfield.AllHitObjects.All(h => !h.Judged)); AddAssert("none judged", () => Player.DrawableRuleset.Playfield.AllHitObjects.All(h => !h.Judged));