// Copyright (c) 2007-2018 ppy Pty Ltd . // Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE using OpenTK; namespace osu.Game.Rulesets.Replays.Legacy { public class LegacyReplayFrame : ReplayFrame { public Vector2 Position => new Vector2(MouseX ?? 0, MouseY ?? 0); public float? MouseX; public float? MouseY; public bool MouseLeft => MouseLeft1 || MouseLeft2; public bool MouseRight => MouseRight1 || MouseRight2; public bool MouseLeft1 => (ButtonState & ReplayButtonState.Left1) > 0; public bool MouseRight1 => (ButtonState & ReplayButtonState.Right1) > 0; public bool MouseLeft2 => (ButtonState & ReplayButtonState.Left2) > 0; public bool MouseRight2 => (ButtonState & ReplayButtonState.Right2) > 0; public ReplayButtonState ButtonState; public LegacyReplayFrame(double time, float? mouseX, float? mouseY, ReplayButtonState buttonState) : base(time) { MouseX = mouseX; MouseY = mouseY; ButtonState = buttonState; } public override string ToString() { return $"{Time}\t({MouseX},{MouseY})\t{MouseLeft}\t{MouseRight}\t{MouseLeft1}\t{MouseRight1}\t{MouseLeft2}\t{MouseRight2}\t{ButtonState}"; } } }