mirror of
https://github.com/wabbajack-tools/wabbajack.git
synced 2024-08-30 18:42:17 +00:00
Added PropertyFile
This commit is contained in:
parent
14a05beba8
commit
4f8e996863
@ -272,9 +272,6 @@ namespace Wabbajack
|
||||
GatherArchives();
|
||||
BuildPatches();
|
||||
|
||||
if (ModList != null)
|
||||
if (File.Exists(ModListImage) && !File.Exists(Path.Combine(MO2ProfileDir, Path.GetFileName(ModListImage)))) File.Copy(ModListImage, Path.Combine(MO2ProfileDir, Path.GetFileName(ModListImage)));
|
||||
|
||||
ModList = new ModList
|
||||
{
|
||||
GameType = GameRegistry.Games.Values.First(f => f.MO2Name == MO2Ini.General.gameName).Game,
|
||||
@ -283,7 +280,7 @@ namespace Wabbajack
|
||||
Name = ModListName ?? MO2Profile,
|
||||
Author = ModListAuthor ?? "",
|
||||
Description = ModListDescription ?? "",
|
||||
Image = ModListImage != null ? Path.Combine("profiles", MO2Profile, Path.GetFileName(ModListImage)) : "",
|
||||
Image = ModListImage ?? "",
|
||||
Website = ModListWebsite ?? ""
|
||||
};
|
||||
|
||||
@ -617,6 +614,7 @@ namespace Wabbajack
|
||||
Info("Generating compilation stack");
|
||||
return new List<Func<RawSourceFile, Directive>>
|
||||
{
|
||||
IncludePropertyFiles(),
|
||||
IgnoreStartsWith("logs\\"),
|
||||
IncludeRegex("^downloads\\\\.*\\.meta"),
|
||||
IgnoreStartsWith("downloads\\"),
|
||||
@ -673,6 +671,20 @@ namespace Wabbajack
|
||||
};
|
||||
}
|
||||
|
||||
private Func<RawSourceFile, Directive> IncludePropertyFiles()
|
||||
{
|
||||
return source =>
|
||||
{
|
||||
if (source.AbsolutePath != ModListImage) return null;
|
||||
if (!File.Exists(ModListImage)) return null;
|
||||
var result = source.EvolveTo<PropertyFile>();
|
||||
result.Type = PropertyType.Banner;
|
||||
result.SourceDataID = IncludeFile(File.ReadAllBytes(ModListImage));
|
||||
ModListImage = result.SourceDataID;
|
||||
return result;
|
||||
};
|
||||
}
|
||||
|
||||
private Func<RawSourceFile, Directive> IgnoreWabbajackInstallCruft()
|
||||
{
|
||||
var cruft_files = new HashSet<string>
|
||||
|
@ -111,6 +111,17 @@ namespace Wabbajack
|
||||
public string SourceDataID;
|
||||
}
|
||||
|
||||
public enum PropertyType { Banner }
|
||||
|
||||
/// <summary>
|
||||
/// File meant to be extracted before the installation
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class PropertyFile : InlineFile
|
||||
{
|
||||
public PropertyType Type;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class CleanedESM : InlineFile
|
||||
{
|
||||
|
@ -104,6 +104,9 @@ namespace Wabbajack
|
||||
foreach (var directive in files.OrderBy(f => f.GetType().Name).ThenByDescending(f => f.To))
|
||||
switch (directive)
|
||||
{
|
||||
case PropertyFile i:
|
||||
NoWrapText($"* `{i.OriginalName}` as a `{Enum.GetName(typeof(PropertyType),i.Type)}`");
|
||||
break;
|
||||
case FromArchive f:
|
||||
//NoWrapText($"* `{f.To}` from `{f.FullPath}`");
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user