2019-01-24 16:43:03 +08:00
|
|
|
|
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
|
|
|
|
|
// See the LICENCE file in the repository root for full licence text.
|
2018-04-13 17:19:50 +08:00
|
|
|
|
|
2022-06-17 15:37:17 +08:00
|
|
|
|
#nullable disable
|
|
|
|
|
|
2019-08-23 19:54:39 +08:00
|
|
|
|
using System.Collections.Generic;
|
2018-04-13 17:19:50 +08:00
|
|
|
|
using osu.Framework.Graphics;
|
2019-08-23 19:54:39 +08:00
|
|
|
|
using osu.Game.Audio;
|
2018-06-28 12:43:56 +08:00
|
|
|
|
using osu.Game.Storyboards.Drawables;
|
2018-04-13 17:19:50 +08:00
|
|
|
|
|
|
|
|
|
namespace osu.Game.Storyboards
|
|
|
|
|
{
|
2019-08-23 19:54:39 +08:00
|
|
|
|
public class StoryboardSampleInfo : IStoryboardElement, ISampleInfo
|
2018-04-13 17:19:50 +08:00
|
|
|
|
{
|
2019-08-23 19:54:39 +08:00
|
|
|
|
public string Path { get; }
|
2018-06-28 12:43:56 +08:00
|
|
|
|
public bool IsDrawable => true;
|
2018-04-13 17:19:50 +08:00
|
|
|
|
|
2019-03-26 15:16:28 +08:00
|
|
|
|
public double StartTime { get; }
|
|
|
|
|
|
2019-08-23 19:54:39 +08:00
|
|
|
|
public int Volume { get; }
|
2018-04-13 17:19:50 +08:00
|
|
|
|
|
2019-08-23 19:55:06 +08:00
|
|
|
|
public IEnumerable<string> LookupNames => new[]
|
|
|
|
|
{
|
|
|
|
|
// Try first with the full name, then attempt with no path
|
|
|
|
|
Path,
|
|
|
|
|
System.IO.Path.ChangeExtension(Path, null),
|
|
|
|
|
};
|
|
|
|
|
|
2019-08-23 19:54:39 +08:00
|
|
|
|
public StoryboardSampleInfo(string path, double time, int volume)
|
2018-04-13 17:19:50 +08:00
|
|
|
|
{
|
|
|
|
|
Path = path;
|
2019-03-26 15:16:28 +08:00
|
|
|
|
StartTime = time;
|
2018-04-13 17:19:50 +08:00
|
|
|
|
Volume = volume;
|
|
|
|
|
}
|
|
|
|
|
|
2018-06-28 12:43:56 +08:00
|
|
|
|
public Drawable CreateDrawable() => new DrawableStoryboardSample(this);
|
2018-04-13 17:19:50 +08:00
|
|
|
|
}
|
|
|
|
|
}
|