diff --git a/AssetStudio/BuildType.cs b/AssetStudio/BuildType.cs deleted file mode 100644 index acee230..0000000 --- a/AssetStudio/BuildType.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace AssetStudio -{ - public class BuildType - { - private string buildType; - - public BuildType(string type) - { - buildType = type; - } - - public bool IsAlpha => buildType == "a"; - public bool IsPatch => buildType == "p"; - } -} diff --git a/AssetStudio/Classes/Mesh.cs b/AssetStudio/Classes/Mesh.cs index 5251f7d..feccf7e 100644 --- a/AssetStudio/Classes/Mesh.cs +++ b/AssetStudio/Classes/Mesh.cs @@ -546,7 +546,7 @@ namespace AssetStudio //Unity fixed it in 2017.3.1p1 and later versions if (version >= (2017, 4) //2017.4 - || version == (2017, 3, 1) && buildType.IsPatch //fixed after 2017.3.1px + || version == (2017, 3, 1) && version.IsPatch //fixed after 2017.3.1px || version == (2017, 3) && m_MeshCompression == 0)//2017.3.xfx with no compression { var m_IndexFormat = reader.ReadInt32(); diff --git a/AssetStudio/Classes/Object.cs b/AssetStudio/Classes/Object.cs index 664d3f7..6da762e 100644 --- a/AssetStudio/Classes/Object.cs +++ b/AssetStudio/Classes/Object.cs @@ -14,7 +14,6 @@ namespace AssetStudio public long m_PathID; [JsonIgnore] public UnityVersion version; - protected BuildType buildType; [JsonIgnore] public BuildTarget platform; [JsonConverter(typeof(JsonStringEnumConverter))] @@ -48,7 +47,6 @@ namespace AssetStudio type = reader.type; m_PathID = reader.m_PathID; version = reader.version; - buildType = reader.buildType; platform = reader.platform; serializedType = reader.serializedType; classID = reader.classID; diff --git a/AssetStudio/Classes/Sprite.cs b/AssetStudio/Classes/Sprite.cs index 2ca4846..0c4be9c 100644 --- a/AssetStudio/Classes/Sprite.cs +++ b/AssetStudio/Classes/Sprite.cs @@ -214,7 +214,7 @@ namespace AssetStudio m_PixelsToUnits = reader.ReadSingle(); if (version >= (5, 4, 2) - || version == (5, 4, 1) && buildType.IsPatch && version.Build >= 3) //5.4.1p3 and up + || version == (5, 4, 1) && version.IsPatch && version.Build >= 3) //5.4.1p3 and up { m_Pivot = reader.ReadVector2(); } diff --git a/AssetStudio/ObjectReader.cs b/AssetStudio/ObjectReader.cs index 309678e..6f2493f 100644 --- a/AssetStudio/ObjectReader.cs +++ b/AssetStudio/ObjectReader.cs @@ -15,7 +15,6 @@ namespace AssetStudio public SerializedFileFormatVersion m_Version; public UnityVersion version => assetsFile.version; - public BuildType buildType => assetsFile.buildType; public ObjectReader(EndianBinaryReader reader, SerializedFile assetsFile, ObjectInfo objectInfo) : base(reader.BaseStream, reader.Endian) { diff --git a/AssetStudio/SerializedFile.cs b/AssetStudio/SerializedFile.cs index e1b26c6..e10c38b 100644 --- a/AssetStudio/SerializedFile.cs +++ b/AssetStudio/SerializedFile.cs @@ -14,7 +14,6 @@ namespace AssetStudio public string originalPath; public string fileName; public UnityVersion version = new UnityVersion(); - public BuildType buildType; public List Objects; public Dictionary ObjectsDic; @@ -222,7 +221,6 @@ namespace AssetStudio if (unityVer != null && !unityVer.IsStripped) { unityVersion = unityVer.FullVersion; - buildType = new BuildType(unityVer.BuildType); version = unityVer; } } diff --git a/AssetStudio/UnityVersion.cs b/AssetStudio/UnityVersion.cs index 5a957d6..6c2ac0d 100644 --- a/AssetStudio/UnityVersion.cs +++ b/AssetStudio/UnityVersion.cs @@ -4,6 +4,16 @@ using System.Text.RegularExpressions; namespace AssetStudio { + public static class BuildTypes + { + public static readonly string + Alpha = "a", + Beta = "b", + Final = "f", + Patch = "p", + Tuanjie = "t"; + } + public class UnityVersion : IComparable { public int Major { get; } @@ -14,6 +24,10 @@ namespace AssetStudio public string FullVersion { get; } public bool IsStripped => this == (0, 0, 0); + public bool IsAlpha => BuildType == BuildTypes.Alpha; + public bool IsBeta => BuildType == BuildTypes.Beta; + public bool IsPatch => BuildType == BuildTypes.Patch; + public bool IsTuanjie => BuildType == BuildTypes.Tuanjie; public UnityVersion(string version) { @@ -47,7 +61,7 @@ namespace AssetStudio if (!IsStripped) { Build = 1; - BuildType = "f"; + BuildType = BuildTypes.Final; FullVersion += $"{BuildType}{Build}"; } }