| | |
| | | using System.IO;
|
| | | using System.Text.RegularExpressions;
|
| | | using System.Text;
|
| | | using TableConfig;
|
| | |
|
| | | using Beebyte.Obfuscator;
|
| | |
|
| | | public class ClientPackage
|
| | |
| | |
|
| | | if (smallPackages.Count > 0)
|
| | | {
|
| | | FileExtersion.DirectoryCopy(_assetBundlePath, ResourcesPath.Instance.StreamingAssetPath);
|
| | |
|
| | | var files = new List<FileInfo>();
|
| | | FileExtersion.GetAllDirectoryFileInfos(ResourcesPath.Instance.StreamingAssetPath, files);
|
| | | var builtInFiles = new List<FileInfo>();
|
| | |
|
| | | FileExtersion.GetAllDirectoryFileInfos(_assetBundlePath, files);
|
| | | foreach (var file in files)
|
| | | {
|
| | | var fileName = Path.GetFileName(file.FullName);
|
| | | if (fileName.Contains("builtin"))
|
| | |
|
| | | if (file.FullName.Contains("builtin"))
|
| | | {
|
| | | builtInFiles.Add(file);
|
| | | continue;
|
| | | }
|
| | |
|
| | | if (file.FullName.Contains("config/Contact.txt")
|
| | | || file.FullName.Contains("config/HelpInfo.txt")
|
| | | || file.FullName.Contains("config/PriorBundle.txt")
|
| | | || file.FullName.Contains("config/PriorLanguage.txt"))
|
| | | if (file.FullName.Contains("Contact.txt")
|
| | | || file.FullName.Contains("HelpInfo.txt")
|
| | | || file.FullName.Contains("PriorBundle.txt")
|
| | | || file.FullName.Contains("PriorLanguage.txt")
|
| | | || file.FullName.Contains("ApkUpdateUrl.txt"))
|
| | | {
|
| | | builtInFiles.Add(file);
|
| | | continue;
|
| | | }
|
| | |
|
| | | File.Delete(file.FullName);
|
| | | }
|
| | |
|
| | | var totalCount = builtInFiles.Count;
|
| | | var completeCount = 0;
|
| | | foreach (var item in builtInFiles)
|
| | | {
|
| | | var directory = Path.GetDirectoryName(item.FullName);
|
| | | if (!Directory.Exists(directory))
|
| | | {
|
| | | Directory.CreateDirectory(directory);
|
| | | }
|
| | |
|
| | | var relativePath = FileExtersion.GetFileRelativePath(_assetBundlePath, item.FullName);
|
| | | var to = StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, relativePath);
|
| | | #if UNITY_ANDROID
|
| | | var extension = Path.GetExtension(item.FullName);
|
| | | if (extension == ".meta")
|
| | | {
|
| | | continue;
|
| | | }
|
| | |
|
| | | to = to + ".7z";
|
| | | SevenZipUtility.Compress(item.FullName, to);
|
| | | UnityEditor.EditorUtility.DisplayProgressBar("正在压缩资源", item.Name, (float)completeCount / totalCount);
|
| | | #elif UNITY_IOS
|
| | | File.Copy(item.FullName,to,true);
|
| | | #endif
|
| | |
|
| | | completeCount++;
|
| | | }
|
| | |
|
| | | EditorUtility.ClearProgressBar();
|
| | |
|
| | | for (int i = 0; i < smallPackages.Count; i++)
|
| | | {
|
| | |
| | |
|
| | | if (halfPackages.Count > 0)
|
| | | {
|
| | | Config.Instance.LoadPriorBundleConfig();
|
| | | PriorBundleConfig.Init(true);
|
| | |
|
| | | var fromFiles = new List<FileInfo>();
|
| | | FileExtersion.GetAllDirectoryFileInfos(_assetBundlePath, fromFiles);
|
| | |
| | | var completeCount = 0;
|
| | | foreach (var item in fromFiles)
|
| | | {
|
| | | var directory = Path.GetDirectoryName(item.FullName);
|
| | | var relativePath = FileExtersion.GetFileRelativePath(_assetBundlePath, item.FullName);
|
| | | var to = StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, relativePath);
|
| | | var directory = Path.GetDirectoryName(to);
|
| | | if (!Directory.Exists(directory))
|
| | | {
|
| | | Directory.CreateDirectory(directory);
|
| | | }
|
| | |
|
| | | var relativePath = FileExtersion.GetFileRelativePath(_assetBundlePath, item.FullName);
|
| | | var to = StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, relativePath);
|
| | | #if UNITY_ANDROID
|
| | | var extension = Path.GetExtension(item.FullName);
|
| | | if (extension == ".meta")
|
| | | {
|
| | | continue;
|
| | | }
|
| | |
|
| | | to = to + ".7z";
|
| | | SevenZipUtility.Compress(item.FullName, to);
|
| | | UnityEditor.EditorUtility.DisplayProgressBar("正在压缩资源", item.Name, (float)completeCount / totalCount);
|
| | | #elif UNITY_IOS
|
| | | File.Copy(item.FullName,to,true);
|
| | | #endif
|
| | |
|
| | | File.Copy(item.FullName, to, true);
|
| | | completeCount++;
|
| | | }
|
| | |
|
| | |
| | |
|
| | | if (bigPackages.Count > 0)
|
| | | {
|
| | | FileExtersion.DirectoryCopy(_assetBundlePath, ResourcesPath.Instance.StreamingAssetPath);
|
| | | var fromFiles = new List<FileInfo>();
|
| | | FileExtersion.GetAllDirectoryFileInfos(_assetBundlePath, fromFiles);
|
| | |
|
| | | var totalCount = fromFiles.Count;
|
| | | var completeCount = 0;
|
| | | foreach (var item in fromFiles)
|
| | | {
|
| | | var relativePath = FileExtersion.GetFileRelativePath(_assetBundlePath, item.FullName);
|
| | | var to = StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, relativePath);
|
| | | var directory = Path.GetDirectoryName(to);
|
| | | if (!Directory.Exists(directory))
|
| | | {
|
| | | Directory.CreateDirectory(directory);
|
| | | }
|
| | |
|
| | | var extension = Path.GetExtension(item.FullName);
|
| | | if (extension == ".meta")
|
| | | {
|
| | | continue;
|
| | | }
|
| | |
|
| | | File.Copy(item.FullName, to, true);
|
| | | completeCount++;
|
| | | }
|
| | |
|
| | | for (int i = 0; i < bigPackages.Count; i++)
|
| | | {
|
| | | #if UNITY_ANDROID
|
| | |
| | | PlayerSettings.Android.keystorePass = versionConfig.keystorePassword;
|
| | | PlayerSettings.Android.keyaliasName = versionConfig.keystoreAlias;
|
| | | PlayerSettings.Android.keyaliasPass = versionConfig.keystoreAliasPassword;
|
| | | // PlayerSettings.Android.targetSdkVersion = AndroidSdkVersions.AndroidApiLevel22;
|
| | | PlayerSettings.Android.targetSdkVersion = AndroidSdkVersions.AndroidApiLevel22;
|
| | | PlayerSettings.Android.bundleVersionCode = VersionConfig.GetVersionNumber(versionConfig.version);
|
| | |
|
| | | PlayerSettings.enableInternalProfiler = _development;
|
| | |
| | |
|
| | | DateTime outTime;
|
| | | var correct = DateTime.TryParse(auditOutTime, out outTime);
|
| | | var directory = Application.dataPath + Path.DirectorySeparatorChar + "Resources/Config";
|
| | | if (!Directory.Exists(directory))
|
| | | {
|
| | | Directory.CreateDirectory(directory);
|
| | | }
|
| | | File.WriteAllText(Application.dataPath + Path.DirectorySeparatorChar + "Resources/Config/AuditTime.txt", correct ? auditOutTime : "");
|
| | |
|
| | | var option = AssetDatabase.LoadAssetAtPath<Options>("Assets/Editor/Beebyte/Obfuscator/ObfuscatorOptions.asset");
|
| | |
| | | {
|
| | | try
|
| | | {
|
| | | var newVersionConfigPath = StringUtility.Contact("Assets/Resources/ScriptableObject/Config/VersionConfig", ".asset");
|
| | | var newVersionConfigPath = StringUtility.Contact("Assets/Resources/VersionConfig", ".asset");
|
| | | var versionName = string.Empty;
|
| | | var fromVersionConfig = GetVersionConfig(_publisher, out versionName);
|
| | | var newVersionConfig = ScriptableObject.CreateInstance<VersionConfig>();
|
| | |
| | | EditorUtility.SetDirty(newVersionConfig);
|
| | |
|
| | | SetIconAndSplashImage(versionName);
|
| | | SetCreateRoleAnimation();
|
| | |
|
| | | PlayerSettings.companyName = "TheSecondWorld";
|
| | | PlayerSettings.productName = newVersionConfig.productName;
|
| | |
| | | PlayerSettings.allowedAutorotateToPortraitUpsideDown = false;
|
| | | PlayerSettings.bundleVersion = VersionConfig.GetVersionNumber(newVersionConfig.version).ToString();
|
| | |
|
| | | var grachicSettings = new SerializedObject(AssetDatabase.LoadAllAssetsAtPath("ProjectSettings/GraphicsSettings.asset")[0]);
|
| | | var lightmapStripping = grachicSettings.FindProperty("m_LightmapStripping");
|
| | | lightmapStripping.intValue = 0;
|
| | | var fogStripping = grachicSettings.FindProperty("m_FogStripping");
|
| | | fogStripping.intValue = 0;
|
| | |
|
| | | grachicSettings.ApplyModifiedProperties();
|
| | | CSObjectWrapEditor.Generator.ClearAll();
|
| | | CSObjectWrapEditor.Generator.GenAll();
|
| | | }
|
| | | catch (Exception ex)
|
| | | {
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | public static void SetCreateRoleAnimation()
|
| | | {
|
| | | var from = "Assets/Editor/Video/CreateRoleMovie.mp4";
|
| | | var to = "Assets/StreamingAssets/CreateRoleMovie.mp4";
|
| | |
|
| | | if (!Directory.Exists(Application.dataPath + "StreamingAssets"))
|
| | | {
|
| | | Directory.CreateDirectory(Application.dataPath + "StreamingAssets");
|
| | | }
|
| | |
|
| | | if (AssetDatabase.LoadAssetAtPath<UnityEngine.Video.VideoClip>(to) == null)
|
| | | {
|
| | | AssetDatabase.CopyAsset(from, to);
|
| | | }
|
| | | }
|
| | |
|
| | | static BuildTargetGroup GetBuildTarget()
|
| | | {
|
| | | #if UNITY_ANDROID
|