summaryrefslogtreecommitdiff
path: root/src/StardewModdingAPI/IAssetLoader.cs
blob: ad97b9417b2c20da5d642015eeac89e92265f680 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
namespace StardewModdingAPI
{
    /// <summary>Provides the initial version for matching assets loaded by the game. SMAPI will raise an error if two mods try to load the same asset; in most cases you should use <see cref="IAssetEditor"/> instead.</summary>
    public interface IAssetLoader
    {
        /*********
        ** Public methods
        *********/
        /// <summary>Get whether this instance can load the initial version of the given asset.</summary>
        /// <param name="asset">Basic metadata about the asset being loaded.</param>
        bool CanLoad<T>(IAssetInfo asset);

        /// <summary>Load a matched asset.</summary>
        /// <param name="asset">Basic metadata about the asset being loaded.</param>
        T Load<T>(IAssetInfo asset);
    }
}