A game about forced loneliness, made by TACStudios
at master 1.9 kB view raw
1using System; 2 3using UnityEngine; 4 5namespace Unity.PlasticSCM.Editor.UI 6{ 7 internal class EditorVersion 8 { 9 internal int Year; 10 internal int Release; 11 internal int Update; 12 13 EditorVersion(int year, int release, int update) 14 { 15 Year = year; 16 Release = release; 17 Update = update; 18 } 19 20 21 public override string ToString() 22 { 23 return String.Format("{0}.{1}.{2}", Year, Release, Update); 24 } 25 26 internal static bool IsCurrentEditorOlderThan(string version) 27 { 28 return IsEditorOlderThan(Application.unityVersion, version); 29 } 30 31 internal static bool IsEditorOlderThan(string versionA, string versionB) 32 { 33 var editorA = Parse(versionA); 34 var editorB = Parse(versionB); 35 if (editorA.Year == editorB.Year) 36 { 37 if (editorA.Release == editorB.Release) 38 { 39 return editorA.Update < editorB.Update; 40 } 41 return editorA.Release < editorB.Release; 42 } 43 return editorA.Year < editorB.Year; 44 } 45 46 static int ParseUpdateString(string version) 47 { 48 int pos = 0; 49 char[] characters = version.ToCharArray(); 50 while (Char.IsDigit(characters[pos])) 51 { 52 ++pos; 53 } 54 return int.Parse(version.Substring(0, pos)); 55 } 56 57 static EditorVersion Parse(string version) 58 { 59 var versions = version.Split('.'); 60 61 var year = 0; 62 year = int.Parse(versions[0]); 63 var release = 0; 64 release = int.Parse(versions[1]); 65 var update = 0; 66 update = ParseUpdateString(versions[2]); 67 68 return new EditorVersion(year, release, update); 69 } 70 } 71}