+ Fixed async operations lock for Dispose() pattern in working files. + Rewrote StorageService.cs: --- Now uses ContentPath instead of raw strings where possible. --- Now throws exceptions for developer errors and critical program states. + Rewrote ModConfigService.cs: --- All functions are now completely async. + Removed ConfigProfilesResources completely as they exist in common Config xml files. + Somewhat simplified package data and processes.
55 lines
1.3 KiB
C#
55 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using System.Collections.Immutable;
|
|
using System.Globalization;
|
|
|
|
namespace Barotrauma.LuaCs.Data;
|
|
|
|
|
|
public interface IBaseResourceInfo : IResourceInfo, IDataInfo, IDependencyInfo {}
|
|
|
|
public interface IConfigResourceInfo : IBaseResourceInfo {}
|
|
|
|
/// <summary>
|
|
/// Represents loadable Lua files.
|
|
/// </summary>
|
|
public interface ILuaScriptResourceInfo : IBaseResourceInfo
|
|
{
|
|
/// <summary>
|
|
/// Should this script be run automatically.
|
|
/// </summary>
|
|
public bool IsAutorun { get; }
|
|
}
|
|
|
|
public interface IAssemblyResourceInfo : IBaseResourceInfo
|
|
{
|
|
/// <summary>
|
|
/// The friendly name of the assembly. Script files belonging to the same assembly should all have the same name.
|
|
/// Legacy scripts will all be given the sanitized name of the Content Package they belong to.
|
|
/// </summary>
|
|
public string FriendlyName { get; }
|
|
/// <summary>
|
|
/// Is this entry referring to a script file collection.
|
|
/// </summary>
|
|
public bool IsScript { get; }
|
|
}
|
|
|
|
|
|
#region Collections
|
|
|
|
public interface IAssembliesResourcesInfo
|
|
{
|
|
ImmutableArray<IAssemblyResourceInfo> Assemblies { get; }
|
|
}
|
|
|
|
public interface ILuaScriptsResourcesInfo
|
|
{
|
|
ImmutableArray<ILuaScriptResourceInfo> LuaScripts { get; }
|
|
}
|
|
|
|
public interface IConfigsResourcesInfo
|
|
{
|
|
ImmutableArray<IConfigResourceInfo> Configs { get; }
|
|
}
|
|
|
|
#endregion
|