- Added publicized assemblies to LuaCsForBarotrauma package via ModConfig.xml

- Added XmlAttribute tags for ModConfig.xml defined properties.
- GetType and GetImplementingTypes<T> rework.
This commit is contained in:
MapleWheels
2026-02-09 21:32:57 -05:00
parent fb4648d759
commit 30149b504d
10 changed files with 114 additions and 48 deletions
@@ -2,6 +2,7 @@
using System.Collections.Immutable;
using System.Globalization;
using System.Runtime.CompilerServices;
using System.Xml.Serialization;
namespace Barotrauma.LuaCs.Data;
@@ -18,6 +19,7 @@ public interface ILuaScriptResourceInfo : IBaseResourceInfo
/// <summary>
/// Should this script be run automatically.
/// </summary>
[XmlAttribute("IsAutorun")]
public bool IsAutorun { get; }
}
@@ -27,17 +29,27 @@ public interface IAssemblyResourceInfo : IBaseResourceInfo
/// 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>
[XmlAttribute("FriendlyName")]
public string FriendlyName { get; }
/// <summary>
/// Is this entry referring to a script file collection.
/// </summary>
[XmlAttribute("IsScript")]
public bool IsScript { get; }
/// <summary>
/// <b>[Required(IsScript: true)] Whether the internal compiled assembly name should be named to enabled use of the
/// <see cref="InternalsVisibleToAttribute"/> attribute.</b>
/// </summary>
[XmlAttribute("UseInternalAccessName")]
public bool UseInternalAccessName { get; }
/// <summary>
/// Should the following resources only be used for Compilation MetadataReference.
/// NOTE: Affects the entire package's assembly resources, meant for internal use only.
/// </summary>
[XmlAttribute("IsReferenceModeOnly")]
public bool IsReferenceModeOnly { get; }
}