mirror of
https://github.com/ppy/osu.git
synced 2025-02-15 14:33:01 +08:00
Rename PreEmpt to ScrollTime and remove VelocityMultiplier for now.
This commit is contained in:
parent
a5cb233975
commit
1b2713239a
@ -87,7 +87,7 @@ namespace osu.Desktop.VisualTests.Tests
|
|||||||
BarLine bl = new BarLine
|
BarLine bl = new BarLine
|
||||||
{
|
{
|
||||||
StartTime = Time.Current + 1000,
|
StartTime = Time.Current + 1000,
|
||||||
PreEmpt = 1000
|
ScrollTime = 1000
|
||||||
};
|
};
|
||||||
|
|
||||||
playfield.AddBarLine(major ? new DrawableBarLineMajor(bl) : new DrawableBarLine(bl));
|
playfield.AddBarLine(major ? new DrawableBarLineMajor(bl) : new DrawableBarLine(bl));
|
||||||
@ -99,7 +99,7 @@ namespace osu.Desktop.VisualTests.Tests
|
|||||||
{
|
{
|
||||||
StartTime = Time.Current + 1000,
|
StartTime = Time.Current + 1000,
|
||||||
EndTime = Time.Current + 1000,
|
EndTime = Time.Current + 1000,
|
||||||
PreEmpt = 1000
|
ScrollTime = 1000
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -110,7 +110,7 @@ namespace osu.Desktop.VisualTests.Tests
|
|||||||
StartTime = Time.Current + 1000,
|
StartTime = Time.Current + 1000,
|
||||||
IsStrong = strong,
|
IsStrong = strong,
|
||||||
Distance = 1000,
|
Distance = 1000,
|
||||||
PreEmpt = 1000,
|
ScrollTime = 1000,
|
||||||
};
|
};
|
||||||
|
|
||||||
playfield.Add(new DrawableDrumRoll(d));
|
playfield.Add(new DrawableDrumRoll(d));
|
||||||
@ -121,7 +121,7 @@ namespace osu.Desktop.VisualTests.Tests
|
|||||||
Hit h = new Hit
|
Hit h = new Hit
|
||||||
{
|
{
|
||||||
StartTime = Time.Current + 1000,
|
StartTime = Time.Current + 1000,
|
||||||
PreEmpt = 1000
|
ScrollTime = 1000
|
||||||
};
|
};
|
||||||
|
|
||||||
if (strong)
|
if (strong)
|
||||||
@ -135,7 +135,7 @@ namespace osu.Desktop.VisualTests.Tests
|
|||||||
Hit h = new Hit
|
Hit h = new Hit
|
||||||
{
|
{
|
||||||
StartTime = Time.Current + 1000,
|
StartTime = Time.Current + 1000,
|
||||||
PreEmpt = 1000
|
ScrollTime = 1000
|
||||||
};
|
};
|
||||||
|
|
||||||
if (strong)
|
if (strong)
|
||||||
|
@ -48,7 +48,7 @@ namespace osu.Game.Modes.Taiko.Objects.Drawables
|
|||||||
|
|
||||||
protected override TaikoPiece CreateMainPiece() => new ElongatedCirclePiece(HitObject.IsStrong)
|
protected override TaikoPiece CreateMainPiece() => new ElongatedCirclePiece(HitObject.IsStrong)
|
||||||
{
|
{
|
||||||
Length = (float)(HitObject.Duration / HitObject.PreEmpt),
|
Length = (float)(HitObject.Duration / HitObject.ScrollTime),
|
||||||
PlayfieldLengthReference = () => Parent.DrawSize.X
|
PlayfieldLengthReference = () => Parent.DrawSize.X
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -67,7 +67,7 @@ namespace osu.Game.Modes.Taiko.Objects.Drawables
|
|||||||
// is further than mid point of the play field, so the time taken to scroll in should always
|
// is further than mid point of the play field, so the time taken to scroll in should always
|
||||||
// be greater than the time taken to scroll out to the left of the screen.
|
// be greater than the time taken to scroll out to the left of the screen.
|
||||||
// Thus, using PreEmpt here is enough for the drum roll to completely scroll out.
|
// Thus, using PreEmpt here is enough for the drum roll to completely scroll out.
|
||||||
LifetimeEnd = HitObject.EndTime + HitObject.PreEmpt;
|
LifetimeEnd = HitObject.EndTime + HitObject.ScrollTime;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void onTickJudgement(DrawableHitObject<TaikoHitObject, TaikoJudgement> obj)
|
private void onTickJudgement(DrawableHitObject<TaikoHitObject, TaikoJudgement> obj)
|
||||||
|
@ -58,7 +58,7 @@ namespace osu.Game.Modes.Taiko.Objects.Drawables
|
|||||||
|
|
||||||
protected override void LoadComplete()
|
protected override void LoadComplete()
|
||||||
{
|
{
|
||||||
LifetimeStart = HitObject.StartTime - HitObject.PreEmpt * 2;
|
LifetimeStart = HitObject.StartTime - HitObject.ScrollTime * 2;
|
||||||
base.LoadComplete();
|
base.LoadComplete();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ namespace osu.Game.Modes.Taiko.Objects.Drawables
|
|||||||
/// a time value and the HitObject's StartTime.
|
/// a time value and the HitObject's StartTime.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="time"></param>
|
/// <param name="time"></param>
|
||||||
protected virtual void UpdateScrollPosition(double time) => MoveToX((float)((HitObject.StartTime - time) / HitObject.PreEmpt));
|
protected virtual void UpdateScrollPosition(double time) => MoveToX((float)((HitObject.StartTime - time) / HitObject.ScrollTime));
|
||||||
|
|
||||||
protected override void Update()
|
protected override void Update()
|
||||||
{
|
{
|
||||||
|
@ -71,7 +71,7 @@ namespace osu.Game.Modes.Taiko.Objects
|
|||||||
|
|
||||||
double speedAdjutedBeatLength = timing.SpeedMultiplierAt(StartTime) * timing.BeatLengthAt(StartTime);
|
double speedAdjutedBeatLength = timing.SpeedMultiplierAt(StartTime) * timing.BeatLengthAt(StartTime);
|
||||||
|
|
||||||
Velocity = base_distance * difficulty.SliderMultiplier / speedAdjutedBeatLength * VelocityMultiplier;
|
Velocity = base_distance * difficulty.SliderMultiplier / speedAdjutedBeatLength;
|
||||||
tickSpacing = timing.BeatLengthAt(StartTime) / TickRate;
|
tickSpacing = timing.BeatLengthAt(StartTime) / TickRate;
|
||||||
|
|
||||||
RequiredGoodHits = TotalTicks * Math.Min(0.15, 0.05 + 0.10 / 6 * difficulty.OverallDifficulty);
|
RequiredGoodHits = TotalTicks * Math.Min(0.15, 0.05 + 0.10 / 6 * difficulty.OverallDifficulty);
|
||||||
@ -91,7 +91,7 @@ namespace osu.Game.Modes.Taiko.Objects
|
|||||||
ret.Add(new DrumRollTick
|
ret.Add(new DrumRollTick
|
||||||
{
|
{
|
||||||
FirstTick = first,
|
FirstTick = first,
|
||||||
PreEmpt = PreEmpt,
|
ScrollTime = ScrollTime,
|
||||||
TickSpacing = tickSpacing,
|
TickSpacing = tickSpacing,
|
||||||
StartTime = t,
|
StartTime = t,
|
||||||
IsStrong = IsStrong,
|
IsStrong = IsStrong,
|
||||||
|
@ -15,19 +15,14 @@ namespace osu.Game.Modes.Taiko.Objects
|
|||||||
public const float CIRCLE_RADIUS = 42f;
|
public const float CIRCLE_RADIUS = 42f;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Time (in milliseconds) to scroll in the hit object with a speed-adjusted beat length of 1 second.
|
/// The time taken from the initial (off-screen) spawn position to the centre of the hit target for a <see cref="ControlPoint.BeatLength"/> of 1000ms.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public const double BASE_SCROLL_TIME = 6000;
|
public const double SCROLL_TIME = 6000;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The velocity multiplier applied to this hit object.
|
/// Our adjusted <see cref="SCROLL_TIME"/> taking into consideration local <see cref="ControlPoint.BeatLength"/> and other speed multipliers.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public float VelocityMultiplier = 1;
|
public double ScrollTime;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The time from the initial right (off-screen) spawn position to the centre of the hit target.
|
|
||||||
/// </summary>
|
|
||||||
public double PreEmpt;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Whether this HitObject is a "strong" type.
|
/// Whether this HitObject is a "strong" type.
|
||||||
@ -44,7 +39,7 @@ namespace osu.Game.Modes.Taiko.Objects
|
|||||||
{
|
{
|
||||||
base.ApplyDefaults(timing, difficulty);
|
base.ApplyDefaults(timing, difficulty);
|
||||||
|
|
||||||
PreEmpt = BASE_SCROLL_TIME / difficulty.SliderMultiplier * timing.BeatLengthAt(StartTime) * timing.SpeedMultiplierAt(StartTime) / VelocityMultiplier / 1000;
|
ScrollTime = SCROLL_TIME / difficulty.SliderMultiplier * timing.BeatLengthAt(StartTime) * timing.SpeedMultiplierAt(StartTime) / 1000;
|
||||||
|
|
||||||
ControlPoint overridePoint;
|
ControlPoint overridePoint;
|
||||||
Kiai = timing.TimingPointAt(StartTime, out overridePoint).KiaiMode;
|
Kiai = timing.TimingPointAt(StartTime, out overridePoint).KiaiMode;
|
||||||
|
Loading…
Reference in New Issue
Block a user