1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2024-09-16 08:18:19 -04:00
OpenDiablo2/OpenDiablo2.Common/Interfaces/Data/IResourceManager.cs
2018-12-08 11:51:11 -05:00

28 lines
1.2 KiB
C#

using System.Collections.Generic;
using OpenDiablo2.Common.Enums;
using OpenDiablo2.Common.Models;
namespace OpenDiablo2.Common.Interfaces
{
/// <summary>
/// A utility class to make it easy to get specific types of resources from the data files in the game.
/// </summary>
public interface IResourceManager
{
/// <summary>
/// Get an <see cref="ImageSet" /> from the game's resources.
/// </summary>
/// <param name="resourcePath">The path to the ImageSet to grab.</param>
/// <returns>The <see cref="ImageSet"/> that was requested. Throw an exception if not found.</returns>
ImageSet GetImageSet(string resourcePath);
MPQFont GetMPQFont(string resourcePath);
MPQDS1 GetMPQDS1(string resourcePath, LevelPreset level, LevelDetail levelDetail, LevelType levelType);
MPQDT1 GetMPQDT1(string resourcePath);
Palette GetPalette(string paletteFile);
MPQCOF GetPlayerAnimation(eHero hero, eWeaponClass weaponClass, eMobMode mobMode);
MPQDCC GetPlayerDCC(MPQCOF.COFLayer cofLayer, eArmorType armorType, Palette palette);
Dictionary<string, List<AnimationData>> Animations { get; }
}
}