add wangyue(test)
This commit is contained in:
@@ -628,6 +628,10 @@ namespace AssetStudio
|
|||||||
{
|
{
|
||||||
FairGuardUtils.Decrypt(compressedBytesSpan);
|
FairGuardUtils.Decrypt(compressedBytesSpan);
|
||||||
}
|
}
|
||||||
|
if (Game.Type.IsWangYue() && i == 0 && compressedBytesSpan[..32].Count((byte)0xa6) > 5)
|
||||||
|
{
|
||||||
|
FairGuardUtils.Decrypt(compressedBytesSpan);
|
||||||
|
}
|
||||||
if (Game.Type.IsOPFP())
|
if (Game.Type.IsOPFP())
|
||||||
{
|
{
|
||||||
OPFPUtils.Decrypt(compressedBytesSpan, reader.FullPath);
|
OPFPUtils.Decrypt(compressedBytesSpan, reader.FullPath);
|
||||||
@@ -646,7 +650,7 @@ namespace AssetStudio
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case CompressionType.Lz4Inv when Game.Type.IsArknightsEndfield():
|
case CompressionType.Lz4Inv when (Game.Type.IsArknightsEndfield() || Game.Type.IsWangYue()):
|
||||||
{
|
{
|
||||||
var compressedSize = (int)blockInfo.compressedSize;
|
var compressedSize = (int)blockInfo.compressedSize;
|
||||||
var uncompressedSize = (int)blockInfo.uncompressedSize;
|
var uncompressedSize = (int)blockInfo.uncompressedSize;
|
||||||
|
|||||||
@@ -1148,7 +1148,7 @@ namespace AssetStudio
|
|||||||
m_nEulerCurves = reader.ReadUInt32();
|
m_nEulerCurves = reader.ReadUInt32();
|
||||||
m_nScaleCurves = reader.ReadUInt32();
|
m_nScaleCurves = reader.ReadUInt32();
|
||||||
}
|
}
|
||||||
else if (reader.Game.Type.IsExAstris())
|
else if (reader.Game.Type.IsExAstris() || reader.Game.Type.IsWangYue())
|
||||||
{
|
{
|
||||||
m_nPositionCurves = reader.ReadUInt32();
|
m_nPositionCurves = reader.ReadUInt32();
|
||||||
m_nRotationCurves = reader.ReadUInt32();
|
m_nRotationCurves = reader.ReadUInt32();
|
||||||
@@ -1316,7 +1316,7 @@ namespace AssetStudio
|
|||||||
{
|
{
|
||||||
var version = reader.version;
|
var version = reader.version;
|
||||||
m_StreamedClip = new StreamedClip(reader);
|
m_StreamedClip = new StreamedClip(reader);
|
||||||
if (reader.Game.Type.IsArknightsEndfield() || reader.Game.Type.IsExAstris())
|
if (reader.Game.Type.IsArknightsEndfield() || reader.Game.Type.IsWangYue() || reader.Game.Type.IsExAstris())
|
||||||
{
|
{
|
||||||
m_DenseClip = new ACLDenseClip(reader);
|
m_DenseClip = new ACLDenseClip(reader);
|
||||||
}
|
}
|
||||||
@@ -1931,7 +1931,7 @@ namespace AssetStudio
|
|||||||
|
|
||||||
m_SampleRate = reader.ReadSingle();
|
m_SampleRate = reader.ReadSingle();
|
||||||
m_WrapMode = reader.ReadInt32();
|
m_WrapMode = reader.ReadInt32();
|
||||||
if (reader.Game.Type.IsArknightsEndfield())
|
if (reader.Game.Type.IsArknightsEndfield() || reader.Game.Type.IsWangYue())
|
||||||
{
|
{
|
||||||
var m_aclType = reader.ReadInt32();
|
var m_aclType = reader.ReadInt32();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ namespace AssetStudio
|
|||||||
Games.Add(index++, new Game(GameType.GirlsFrontline));
|
Games.Add(index++, new Game(GameType.GirlsFrontline));
|
||||||
Games.Add(index++, new Game(GameType.Reverse1999));
|
Games.Add(index++, new Game(GameType.Reverse1999));
|
||||||
Games.Add(index++, new Game(GameType.ArknightsEndfield));
|
Games.Add(index++, new Game(GameType.ArknightsEndfield));
|
||||||
|
Games.Add(index++, new Game(GameType.WangYue));
|
||||||
Games.Add(index++, new Game(GameType.JJKPhantomParade));
|
Games.Add(index++, new Game(GameType.JJKPhantomParade));
|
||||||
Games.Add(index++, new Game(GameType.MuvLuvDimensions));
|
Games.Add(index++, new Game(GameType.MuvLuvDimensions));
|
||||||
Games.Add(index++, new Game(GameType.PartyAnimals));
|
Games.Add(index++, new Game(GameType.PartyAnimals));
|
||||||
@@ -171,6 +172,7 @@ namespace AssetStudio
|
|||||||
SchoolGirlStrikers,
|
SchoolGirlStrikers,
|
||||||
ExAstris,
|
ExAstris,
|
||||||
PerpetualNovelty,
|
PerpetualNovelty,
|
||||||
|
WangYue,
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class GameTypes
|
public static class GameTypes
|
||||||
@@ -194,6 +196,7 @@ namespace AssetStudio
|
|||||||
public static bool IsOPFP(this GameType type) => type == GameType.OPFP;
|
public static bool IsOPFP(this GameType type) => type == GameType.OPFP;
|
||||||
public static bool IsNetEase(this GameType type) => type == GameType.NetEase;
|
public static bool IsNetEase(this GameType type) => type == GameType.NetEase;
|
||||||
public static bool IsArknightsEndfield(this GameType type) => type == GameType.ArknightsEndfield;
|
public static bool IsArknightsEndfield(this GameType type) => type == GameType.ArknightsEndfield;
|
||||||
|
public static bool IsWangYue(this GameType type) => type == GameType.WangYue;
|
||||||
public static bool IsLoveAndDeepspace(this GameType type) => type == GameType.LoveAndDeepspace;
|
public static bool IsLoveAndDeepspace(this GameType type) => type == GameType.LoveAndDeepspace;
|
||||||
public static bool IsExAstris(this GameType type) => type == GameType.ExAstris;
|
public static bool IsExAstris(this GameType type) => type == GameType.ExAstris;
|
||||||
public static bool IsPerpetualNovelty(this GameType type) => type == GameType.PerpetualNovelty;
|
public static bool IsPerpetualNovelty(this GameType type) => type == GameType.PerpetualNovelty;
|
||||||
@@ -223,7 +226,7 @@ namespace AssetStudio
|
|||||||
|
|
||||||
public static bool IsBlockFile(this GameType type) => type switch
|
public static bool IsBlockFile(this GameType type) => type switch
|
||||||
{
|
{
|
||||||
GameType.BH3 or GameType.BH3Pre 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.WangYue or GameType.ArknightsEndfield => true,
|
||||||
_ => false,
|
_ => false,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user