Code/Systems/Scripts/Assets/Asset.cs
using Sandbox;
namespace VNBase.Assets;
/// <summary>
/// An on disk asset that can be used in VNBase scripts.
/// </summary>
public interface IAsset
{
/// <summary>
/// The path to the asset on disk.
/// </summary>
[FilePath]
public string Path { get; set; }
}
/// <summary>
/// A base class for all VNBase asset resources.
/// You should still mark asset classes that inherit from this with [AssetType(...)]
/// </summary>
public abstract class AssetResource : GameResource, IAsset
{
[Hide, FilePath]
public string Path { get => ResourcePath; set => ResourcePath = value; }
}