- [Core] fix issue with parsing types for new entry
This commit is contained in:
18
AssetStudio.GUI/MainForm.Designer.cs
generated
18
AssetStudio.GUI/MainForm.Designer.cs
generated
@@ -117,6 +117,7 @@ namespace AssetStudio.GUI
|
||||
assetMapTypeMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
toolStripSeparator8 = new System.Windows.Forms.ToolStripSeparator();
|
||||
loadAIToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
loadCABMapToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
assetBrowserToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
assetHelpersToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
MapToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
@@ -172,7 +173,6 @@ namespace AssetStudio.GUI
|
||||
exportAnimatorwithselectedAnimationClipMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
goToSceneHierarchyToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
showOriginalFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
loadCABMapToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
menuStrip1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)splitContainer1).BeginInit();
|
||||
splitContainer1.Panel1.SuspendLayout();
|
||||
@@ -659,7 +659,7 @@ namespace AssetStudio.GUI
|
||||
allToolStripMenuItem.CheckOnClick = true;
|
||||
allToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
allToolStripMenuItem.Name = "allToolStripMenuItem";
|
||||
allToolStripMenuItem.Size = new System.Drawing.Size(88, 22);
|
||||
allToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
|
||||
allToolStripMenuItem.Text = "All";
|
||||
allToolStripMenuItem.Click += typeToolStripMenuItem_Click;
|
||||
//
|
||||
@@ -794,6 +794,13 @@ namespace AssetStudio.GUI
|
||||
loadAIToolStripMenuItem.Text = "Load AI";
|
||||
loadAIToolStripMenuItem.Click += loadAIToolStripMenuItem_Click;
|
||||
//
|
||||
// loadCABMapToolStripMenuItem
|
||||
//
|
||||
loadCABMapToolStripMenuItem.Name = "loadCABMapToolStripMenuItem";
|
||||
loadCABMapToolStripMenuItem.Size = new System.Drawing.Size(181, 22);
|
||||
loadCABMapToolStripMenuItem.Text = "Load CABMap";
|
||||
loadCABMapToolStripMenuItem.Click += loadCABMapToolStripMenuItem_Click;
|
||||
//
|
||||
// assetBrowserToolStripMenuItem
|
||||
//
|
||||
assetBrowserToolStripMenuItem.Name = "assetBrowserToolStripMenuItem";
|
||||
@@ -1345,13 +1352,6 @@ namespace AssetStudio.GUI
|
||||
showOriginalFileToolStripMenuItem.Visible = false;
|
||||
showOriginalFileToolStripMenuItem.Click += showOriginalFileToolStripMenuItem_Click;
|
||||
//
|
||||
// loadCABMapToolStripMenuItem
|
||||
//
|
||||
loadCABMapToolStripMenuItem.Name = "loadCABMapToolStripMenuItem";
|
||||
loadCABMapToolStripMenuItem.Size = new System.Drawing.Size(181, 22);
|
||||
loadCABMapToolStripMenuItem.Text = "Load CABMap";
|
||||
loadCABMapToolStripMenuItem.Click += loadCABMapToolStripMenuItem_Click;
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
AllowDrop = true;
|
||||
|
||||
@@ -161,33 +161,30 @@ namespace AssetStudio
|
||||
switch (header.signature)
|
||||
{
|
||||
case "UnityFS":
|
||||
if (Game.Type.IsBH3Group() || Game.Type.IsBH3PrePre())
|
||||
{
|
||||
if (Game.Type.IsBH3Group())
|
||||
{
|
||||
var version = Game.Type.IsBH3PrePre() ? 12 : reader.ReadUInt32();
|
||||
if (version > 11)
|
||||
var key = reader.ReadUInt32();
|
||||
if (key <= 11)
|
||||
{
|
||||
if (Game.Type.IsBH3PrePre())
|
||||
reader.Position -= 4;
|
||||
goto default;
|
||||
}
|
||||
Logger.Verbose($"Encrypted bundle header with key {key}");
|
||||
XORShift128.InitSeed(key);
|
||||
}
|
||||
else if (Game.Type.IsBH3PrePre())
|
||||
{
|
||||
Logger.Verbose($"Encrypted bundle header with key {reader.Length}");
|
||||
XORShift128.InitSeed((uint)reader.Length);
|
||||
}
|
||||
else
|
||||
{
|
||||
Logger.Verbose($"Encrypted bundle header with key {version}");
|
||||
XORShift128.InitSeed(version);
|
||||
}
|
||||
|
||||
header.version = 6;
|
||||
header.unityVersion = "5.x.x";
|
||||
header.unityRevision = "2017.4.18f1";
|
||||
}
|
||||
else
|
||||
{
|
||||
reader.Position -= 4;
|
||||
goto default;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
header.version = reader.ReadUInt32();
|
||||
header.unityVersion = reader.ReadStringToNull();
|
||||
@@ -333,7 +330,7 @@ namespace AssetStudio
|
||||
|
||||
private void ReadHeader(FileReader reader)
|
||||
{
|
||||
if (Game.Type.IsBH3Group() && XORShift128.Init)
|
||||
if (XORShift128.Init)
|
||||
{
|
||||
if (Game.Type.IsBH3PrePre())
|
||||
{
|
||||
|
||||
@@ -194,7 +194,7 @@ namespace AssetStudio
|
||||
|
||||
public static bool IsBH3Group(this GameType type) => type switch
|
||||
{
|
||||
GameType.BH3 or GameType.BH3Pre or GameType.BH3PrePre => true,
|
||||
GameType.BH3 or GameType.BH3Pre => true,
|
||||
_ => false,
|
||||
};
|
||||
|
||||
@@ -206,7 +206,7 @@ namespace AssetStudio
|
||||
|
||||
public static bool IsBlockFile(this GameType type) => type switch
|
||||
{
|
||||
GameType.BH3 or GameType.BH3Pre or GameType.BH3PrePre or GameType.SR or GameType.GI_Pack or GameType.TOT or GameType.ArknightsEndfield => true,
|
||||
GameType.BH3 or GameType.BH3Pre or GameType.SR or GameType.GI_Pack or GameType.TOT or GameType.ArknightsEndfield => true,
|
||||
_ => false,
|
||||
};
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ namespace AssetStudio
|
||||
Logger.Verbose($"Parsed target format {m_TargetPlatform} doesn't match any of supported formats, defaulting to {BuildTarget.UnknownPlatform}");
|
||||
m_TargetPlatform = BuildTarget.UnknownPlatform;
|
||||
}
|
||||
else if (game.Type.IsMhyGroup())
|
||||
else if (m_TargetPlatform == BuildTarget.NoTarget && game.Type.IsMhyGroup())
|
||||
{
|
||||
Logger.Verbose($"Selected game {game.Name} is a mhy game, forcing target format {BuildTarget.StandaloneWindows64}");
|
||||
m_TargetPlatform = BuildTarget.StandaloneWindows64;
|
||||
|
||||
Reference in New Issue
Block a user