using AssetRipper.IO.Files; using AssetRipper.IO.Files.SerializedFiles; using AssetRipper.SourceGenerated.Classes.ClassID_310; namespace AssetRipper.SourceGenerated.Extensions; public static class UnityConnectSettingsExtensions { public static void ConvertToEditorFormat(this IUnityConnectSettings settings) { settings.CrashReportingSettings?.ConvertToEditorFormat(); } /// /// 5.4.0 and greater and (Not Release or IsSupported) /// public static bool HasCrashReportingSettings(UnityVersion version, BuildTarget platform, TransferInstructionFlags flags) { if (version.LessThan(5, 4)) { return false; } if (!flags.IsRelease()) { return true; } switch (platform) { case BuildTarget.NoTarget: case BuildTarget.Android: case BuildTarget.iOS: case BuildTarget.tvOS: case BuildTarget.StandaloneWinPlayer: case BuildTarget.StandaloneWin64Player: case BuildTarget.StandaloneLinux: case BuildTarget.StandaloneLinux64: case BuildTarget.StandaloneLinuxUniversal: case BuildTarget.StandaloneOSXUniversal: case BuildTarget.StandaloneOSXIntel: case BuildTarget.StandaloneOSXIntel64: case BuildTarget.MetroPlayerX64: case BuildTarget.MetroPlayerX86: case BuildTarget.MetroPlayerARM: case BuildTarget.WebPlayerLZMA: case BuildTarget.WebPlayerLZMAStreamed: case BuildTarget.WebGL: return true; case BuildTarget.Tizen: return version.GreaterThanOrEquals(5, 6); default: return false; } } /// /// Less than 5.4.0 or Not Release or IsSupported /// public static bool HasUnityPurchasingSettings(UnityVersion version, BuildTarget platform, TransferInstructionFlags flags) { if (version.LessThan(5, 4)) { return true; } if (!flags.IsRelease()) { return true; } switch (platform) { case BuildTarget.NoTarget: case BuildTarget.Android: case BuildTarget.iOS: case BuildTarget.tvOS: case BuildTarget.Tizen: case BuildTarget.StandaloneWinPlayer: case BuildTarget.StandaloneWin64Player: case BuildTarget.StandaloneLinux: case BuildTarget.StandaloneLinux64: case BuildTarget.StandaloneLinuxUniversal: case BuildTarget.StandaloneOSXUniversal: case BuildTarget.StandaloneOSXIntel: case BuildTarget.StandaloneOSXIntel64: case BuildTarget.MetroPlayerX64: case BuildTarget.MetroPlayerX86: case BuildTarget.MetroPlayerARM: case BuildTarget.WebGL: return true; default: return false; } } /// /// Less than 5.4.0 or Not Release or IsSupported /// public static bool HasUnityAnalyticsSettings(UnityVersion version, BuildTarget platform, TransferInstructionFlags flags) { if (version.LessThan(5, 4)) { return true; } if (!flags.IsRelease()) { return true; } switch (platform) { case BuildTarget.NoTarget: case BuildTarget.Android: case BuildTarget.iOS: case BuildTarget.tvOS: case BuildTarget.Tizen: case BuildTarget.StandaloneWinPlayer: case BuildTarget.StandaloneWin64Player: case BuildTarget.StandaloneLinux: case BuildTarget.StandaloneLinux64: case BuildTarget.StandaloneLinuxUniversal: case BuildTarget.StandaloneOSXUniversal: case BuildTarget.StandaloneOSXIntel: case BuildTarget.StandaloneOSXIntel64: case BuildTarget.MetroPlayerX64: case BuildTarget.MetroPlayerX86: case BuildTarget.MetroPlayerARM: case BuildTarget.WebGL: return true; default: return false; } } /// /// 5.5.0 and greater and (Not Release or IsSupported) /// public static bool HasUnityAdsSettings(UnityVersion version, BuildTarget platform, TransferInstructionFlags flags) { if (version.LessThan(5, 5)) { return false; } if (!flags.IsRelease()) { return true; } switch (platform) { case BuildTarget.NoTarget: case BuildTarget.Android: case BuildTarget.iOS: case BuildTarget.tvOS: case BuildTarget.Tizen: case BuildTarget.StandaloneWinPlayer: case BuildTarget.StandaloneWin64Player: case BuildTarget.StandaloneLinux: case BuildTarget.StandaloneLinux64: case BuildTarget.StandaloneLinuxUniversal: case BuildTarget.StandaloneOSXUniversal: case BuildTarget.StandaloneOSXIntel: case BuildTarget.StandaloneOSXIntel64: case BuildTarget.MetroPlayerX64: case BuildTarget.MetroPlayerX86: case BuildTarget.MetroPlayerARM: case BuildTarget.WebGL: return true; default: return false; } } /// /// 5.6.0 and greater and (Not Release or IsSupported) /// public static bool HasPerformanceReportingSettings(UnityVersion version, BuildTarget platform, TransferInstructionFlags flags) { if (version.LessThan(5, 6)) { return false; } if (!flags.IsRelease()) { return true; } switch (platform) { case BuildTarget.NoTarget: case BuildTarget.Android: case BuildTarget.iOS: case BuildTarget.tvOS: case BuildTarget.Tizen: case BuildTarget.StandaloneWinPlayer: case BuildTarget.StandaloneWin64Player: case BuildTarget.StandaloneLinux: case BuildTarget.StandaloneLinux64: case BuildTarget.StandaloneLinuxUniversal: case BuildTarget.StandaloneOSXUniversal: case BuildTarget.StandaloneOSXIntel: case BuildTarget.StandaloneOSXIntel64: case BuildTarget.MetroPlayerX64: case BuildTarget.MetroPlayerX86: case BuildTarget.MetroPlayerARM: case BuildTarget.WebGL: return true; default: return false; } } }