Explorar o código

Merge branch 'HybridCLR'

guodong %!s(int64=2) %!d(string=hai) anos
pai
achega
64505ca87b
Modificáronse 100 ficheiros con 3361 adicións e 393 borrados
  1. 6 0
      AndroidLibrary/.idea/compiler.xml
  2. 1 1
      AndroidLibrary/.idea/gradle.xml
  3. 1 1
      AndroidLibrary/.idea/misc.xml
  4. 0 12
      AndroidLibrary/.idea/runConfigurations.xml
  5. 6 0
      AndroidLibrary/.idea/vcs.xml
  6. 3 3
      AndroidLibrary/gfglibrary/src/main/java/com/gfg/gfglibrary/SaveImage.java
  7. 55 0
      GameClient/Assets/Editor/BuildEditor/BuildDllHelper.cs
  8. 1 1
      GameClient/Assets/Editor/BuildEditor/BuildDllHelper.cs.meta
  9. 1 1
      GameClient/Assets/Editor/BuildEditor/BuildHotfixEditor.cs
  10. 1 2
      GameClient/Assets/Editor/Excel/ExcelReader.cs
  11. 25 2
      GameClient/Assets/Editor/ToolsMenu.cs
  12. 1 12
      GameClient/Assets/Editor/Xasset/MenuItems.cs
  13. 1 3
      GameClient/Assets/Game/HotUpdate/Game.HotUpdate.asmdef
  14. 17 0
      GameClient/Assets/Game/HotUpdate/HotUpdateEntry.cs
  15. 2 1
      GameClient/Assets/Game/HotUpdate/ServerProxy/PictureStorageHelper.cs
  16. 2 1
      GameClient/Assets/Game/Launcher/Game.Launcher.asmdef
  17. 3 21
      GameClient/Assets/Game/Launcher/GameLauncher.cs
  18. 50 9
      GameClient/Assets/Game/Launcher/HotUpdateProxy/HotUpdateCodeLoader.cs
  19. 0 274
      GameClient/Assets/Game/Launcher/HybridCLR/RefTypes.cs
  20. 0 36
      GameClient/Assets/Game/Launcher/HybridCLR/RuntimeApi.cs
  21. 0 2
      GameClient/Assets/Game/Launcher/LauncherConfig.cs
  22. 1 1
      GameClient/Assets/Game/Launcher/Net/Http/HttpTool.cs
  23. 1 1
      GameClient/Assets/Plugins/Android/AndroidManifest.xml
  24. 3 3
      GameClient/Assets/Resources/PlayerSettings.asset
  25. 94 1
      GameClient/Assets/Scenes/GameLauncher.unity
  26. 1 1
      GameClient/Assets/StreamingAssets/Bundles/Manifest
  27. 1 1
      GameClient/Assets/StreamingAssets/Bundles/Manifest.version
  28. BIN=BIN
      GameClient/Assets/StreamingAssets/Bundles/privacypolicy_c7060c9c13648be551883ca188d5e817
  29. 1 1
      GameClient/Assets/StreamingAssets/Bundles/privacypolicychildren_a17f5598281df0170822d3dcee83535c.meta
  30. BIN=BIN
      GameClient/Assets/StreamingAssets/Bundles/serviceprotocal_2a9fb82f27455f3d072d313f69b4fdc5
  31. 1 0
      GameClient/Assets/StreamingAssets/build_info
  32. 1 1
      GameClient/Assets/StreamingAssets/build_info.meta
  33. 1 1
      GameClient/Assets/Unity-Logs-Viewer.meta
  34. 40 0
      GameClient/Assets/Unity-Logs-Viewer/README.md
  35. 7 0
      GameClient/Assets/Unity-Logs-Viewer/README.md.meta
  36. 8 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter.meta
  37. 5 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Editor.meta
  38. 94 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Editor/ReporterEditor.cs
  39. 8 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Editor/ReporterEditor.cs.meta
  40. 5 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images.meta
  41. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/ComputerIcon.png
  42. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/ComputerIcon.png.meta
  43. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/Save.png
  44. 101 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/Save.png.meta
  45. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/UnityIcon.png
  46. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/UnityIcon.png.meta
  47. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/back.png
  48. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/back.png.meta
  49. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/bar.png
  50. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/bar.png.meta
  51. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/buildFrom.png
  52. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/buildFrom.png.meta
  53. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/button_active.png
  54. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/button_active.png.meta
  55. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/chart.png
  56. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/chart.png.meta
  57. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/clear.png
  58. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/clear.png.meta
  59. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/clearOnSceneLoaded.png
  60. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/clearOnSceneLoaded.png.meta
  61. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/close.png
  62. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/close.png.meta
  63. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/collapse.png
  64. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/collapse.png.meta
  65. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/copy.png
  66. 112 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/copy.png.meta
  67. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/date.png
  68. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/date.png.meta
  69. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/error_icon.png
  70. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/error_icon.png.meta
  71. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/even_log.png
  72. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/even_log.png.meta
  73. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/fps.png
  74. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/fps.png.meta
  75. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/graphicCard.png
  76. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/graphicCard.png.meta
  77. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/info.png
  78. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/info.png.meta
  79. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/log_icon.png
  80. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/log_icon.png.meta
  81. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/memory.png
  82. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/memory.png.meta
  83. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/odd_log.png
  84. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/odd_log.png.meta
  85. 1427 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/reporterScrollerSkin.guiskin
  86. 4 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/reporterScrollerSkin.guiskin.meta
  87. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_down_arraw.png
  88. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_down_arraw.png.meta
  89. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_horizental_back.png
  90. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_horizental_back.png.meta
  91. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_horizental_thumb.png
  92. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_horizental_thumb.png.meta
  93. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_left_arraw.png
  94. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_left_arraw.png.meta
  95. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_right_arraw.png
  96. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_right_arraw.png.meta
  97. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_up_arraw.png
  98. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_up_arraw.png.meta
  99. BIN=BIN
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_vertical_back.png
  100. 47 0
      GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_vertical_back.png.meta

+ 6 - 0
AndroidLibrary/.idea/compiler.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="CompilerConfiguration">
+    <bytecodeTargetLevel target="1.8" />
+  </component>
+</project>

+ 1 - 1
AndroidLibrary/.idea/gradle.xml

@@ -4,7 +4,7 @@
   <component name="GradleSettings">
     <option name="linkedExternalProjectsSettings">
       <GradleProjectSettings>
-        <option name="testRunner" value="PLATFORM" />
+        <option name="testRunner" value="GRADLE" />
         <option name="distributionType" value="DEFAULT_WRAPPED" />
         <option name="externalProjectPath" value="$PROJECT_DIR$" />
         <option name="gradleJvm" value="1.8" />

+ 1 - 1
AndroidLibrary/.idea/misc.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="1.8" project-jdk-type="JavaSDK">
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/build/classes" />
   </component>
   <component name="ProjectType">

+ 0 - 12
AndroidLibrary/.idea/runConfigurations.xml

@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="RunConfigurationProducerService">
-    <option name="ignoredProducers">
-      <set>
-        <option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" />
-        <option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" />
-        <option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" />
-      </set>
-    </option>
-  </component>
-</project>

+ 6 - 0
AndroidLibrary/.idea/vcs.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="VcsDirectoryMappings">
+    <mapping directory="$PROJECT_DIR$/.." vcs="Git" />
+  </component>
+</project>

+ 3 - 3
AndroidLibrary/gfglibrary/src/main/java/com/gfg/gfglibrary/SaveImage.java

@@ -152,7 +152,7 @@ public class SaveImage {
                 catch (IOException e)
                 {
                     e.printStackTrace();
-                    Toast.makeText(getActivity(), "保存失败1", Toast.LENGTH_SHORT).show();
+                    Toast.makeText(getActivity(), "保存失败", Toast.LENGTH_SHORT).show();
                     return;
                 }
             }
@@ -167,10 +167,10 @@ public class SaveImage {
                     }
                     fis.close();
                     out.close();
-                    str += "!!";
+                    str += "!";
                 } catch (IOException e) {
                     e.printStackTrace();
-                    Toast.makeText(getActivity(), "保存失败2", Toast.LENGTH_SHORT).show();
+                    Toast.makeText(getActivity(), "保存失败", Toast.LENGTH_SHORT).show();
                     return;
                 }
             }

+ 55 - 0
GameClient/Assets/Editor/BuildEditor/BuildDllHelper.cs

@@ -0,0 +1,55 @@
+using System.IO;
+using HybridCLR.Editor;
+using UnityEditor;
+using UnityEngine;
+using GFGGame;
+using HybridCLR.Editor.Commands;
+
+namespace GFGEditor
+{
+    public class BuildDllHelper
+    {
+        public static void BuildHotUpdateDll()
+        {
+            CompileDllCommand.CompileDllActiveBuildTarget();
+            CopyHotUpdateAssembliesToStreamingAssets();
+        }
+
+        public static void CopyHotUpdateAssembliesToStreamingAssets()
+        {
+            var target = EditorUserBuildSettings.activeBuildTarget;
+
+            string hotfixDllSrcDir = SettingsUtil.GetHotUpdateDllsOutputDirByTarget(target);
+            string hotfixAssembliesDstDir = LauncherConfig.DllDirHotfix;
+            foreach (var dll in SettingsUtil.HotUpdateAssemblyFiles)
+            {
+                string dllPath = $"{hotfixDllSrcDir}/{dll}";
+                string dllBytesPath = $"{hotfixAssembliesDstDir}{dll}.bytes";
+                File.Copy(dllPath, dllBytesPath, true);
+                Debug.Log($"[CopyHotUpdateAssembliesToStreamingAssets] copy hotfix dll {dllPath} -> {dllBytesPath}");
+            }
+        }
+
+
+        public static void CopyAOTAssembliesToStreamingAssets()
+        {
+            var target = EditorUserBuildSettings.activeBuildTarget;
+            string aotAssembliesSrcDir = SettingsUtil.GetAssembliesPostIl2CppStripDir(target);
+            string aotAssembliesDstDir = LauncherConfig.DllDirAOT;
+
+            foreach (var dll in HotUpdateCodeLoader.AOTMetaAssemblyNames)
+            {
+                string srcDllPath = $"{aotAssembliesSrcDir}/{dll}";
+                if (!File.Exists(srcDllPath))
+                {
+                    Debug.LogError($"ab中添加AOT补充元数据dll:{srcDllPath} 时发生错误,文件不存在。裁剪后的AOT dll在BuildPlayer时才能生成,因此需要你先构建一次游戏App后再打包。");
+                    continue;
+                }
+                string dllBytesPath = $"{aotAssembliesDstDir}{dll}.bytes";
+                File.Copy(srcDllPath, dllBytesPath, true);
+                Debug.Log($"[CopyAOTAssembliesToStreamingAssets] copy AOT dll {srcDllPath} -> {dllBytesPath}");
+            }
+        }
+
+    }
+}

+ 1 - 1
GameClient/Assets/Game/Launcher/HybridCLR/RuntimeApi.cs.meta → GameClient/Assets/Editor/BuildEditor/BuildDllHelper.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 3c8b35876046d1747ae7d62244ec693f
+guid: 14fa1ff212389c444b0709cf5e6087c0
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 1 - 1
GameClient/Assets/Editor/BuildEditor/BuildHotfixEditor.cs

@@ -21,7 +21,7 @@ namespace GFGEditor
 
         static BuildHotfixEditor()
         {
-            CopyCode();
+            //CopyCode();
         }
 
         static void CopyCode()

+ 1 - 2
GameClient/Assets/Editor/Excel/ExcelReader.cs

@@ -234,8 +234,7 @@ namespace GFGEditor
             string path = ExcelConfig.excelsCacheFolderPath;
             if (Directory.Exists(path) == false)
             {
-                ET.Log.Debug("Path is not Existed!");
-                return;
+                Directory.CreateDirectory(path);
             }
             DirectoryInfo dir = new DirectoryInfo(path);
             // FileInfo[] files = dir.GetFiles();

+ 25 - 2
GameClient/Assets/Editor/ToolsMenu.cs

@@ -62,10 +62,11 @@ namespace GFGEditor
         }
 
         [MenuItem("策划/更新至内网版本", false, (int)TOOL_MENU_PRIORITY.BuildBundlesRes)]
-        public static void BuildBundlesRes()
+        public static void ReleaseLocalVersion()
         {
             EditorUtility.DisplayProgressBar("进度", "正在更新至内网", 1);
-            VEngine.Editor.Builds.BuildScript.BuildCustomBundles(new string[] { "Res", "ResIn" }, "BuildSetting");
+            BuildDllHelper.BuildHotUpdateDll();
+            BuildScript.BuildCustomBundles(new string[] { "Res", "ResIn" }, "BuildSetting");
             EditorUtility.ClearProgressBar();
             if (CommitWhenRelease)
             {
@@ -274,9 +275,31 @@ namespace GFGEditor
         public static void BuildBundlesResTemp()
         {
             EditorUtility.DisplayProgressBar("进度", "正在发布临时版本", 1);
+            BuildDllHelper.BuildHotUpdateDll();
             BuildScript.BuildCustomBundles(new string[] { "Res", "ResIn" }, "BuildSetting1");
             EditorUtility.ClearProgressBar();
         }
 
+        [MenuItem("Tools/BuildTest/copy AOT dll", false, (int)TOOL_MENU_PRIORITY.BuildBundlesRes)]
+        public static void CopyDll()
+        {
+            EditorUtility.DisplayProgressBar("进度", "正在拷贝", 1);
+            BuildDllHelper.CopyAOTAssembliesToStreamingAssets();
+            EditorUtility.ClearProgressBar();
+        }
+
+        [MenuItem("Tools/BuildTest/Build Bundles Res Init")]
+        public static void BuildBundlesResIn()
+        {
+            BuildScript.BuildCustomBundles(new string[] { "ResIn/Txt" }, "BuildSetting");
+        }
+
+        [MenuItem("Tools/BuildTest/Build Bundles All")]
+        public static void BuildBundlesRes()
+        {
+            BuildDllHelper.BuildHotUpdateDll();
+            BuildScript.BuildCustomBundles(new string[] { "Res", "ResIn" }, "BuildSetting");
+        }
+
     }
 }

+ 1 - 12
GameClient/Assets/Editor/Xasset/MenuItems.cs

@@ -1,4 +1,5 @@
 using System.IO;
+using GFGEditor;
 using UnityEditor;
 using UnityEngine;
 using VEngine.Editor.Builds;
@@ -22,18 +23,6 @@ namespace VEngine.Editor
             BuildScript.BuildBundles();
         }
 
-        [MenuItem("XAssets/Versions/Build Bundles Res Init")]
-        public static void BuildBundlesResIn() 
-        {
-            BuildScript.BuildCustomBundles(new string[] { "ResIn/Txt" }, "BuildSetting");
-        }
-
-        [MenuItem("XAssets/Versions/Build Bundles All")]
-        public static void BuildBundlesRes()
-        {
-            BuildScript.BuildCustomBundles(new string[] { "Res", "ResIn" }, "BuildSetting");
-        }
-
         [MenuItem("XAssets/Versions/Build Player")]
         public static void BuildPlayer()
         {

+ 1 - 3
GameClient/Assets/Game/HotUpdate/Game.HotUpdate.asmdef

@@ -6,9 +6,7 @@
         "GUID:7a41fac89c3ce014e99efb3723e6a98e",
         "GUID:7b430a36dc40f416cbc65566155a0e56"
     ],
-    "includePlatforms": [
-        "Editor"
-    ],
+    "includePlatforms": [],
     "excludePlatforms": [],
     "allowUnsafeCode": true,
     "overrideReferences": false,

+ 17 - 0
GameClient/Assets/Game/HotUpdate/HotUpdateEntry.cs

@@ -2,6 +2,7 @@
 using ET;
 using FairyGUI;
 using System;
+using System.Threading;
 using UnityEngine;
 namespace GFGGame.HotUpdate
 {
@@ -12,6 +13,22 @@ namespace GFGGame.HotUpdate
         {
             VEngine.Logger.Loggable = false;
             //ET
+            System.AppDomain.CurrentDomain.UnhandledException += (sender, e) =>
+            {
+                Log.Error(e.ExceptionObject.ToString());
+            };
+
+            SynchronizationContext.SetSynchronizationContext(ThreadSynchronizationContext.Instance);
+
+            LitJson.UnityTypeBindings.Register();
+
+            ETTask.ExceptionHandler += Log.Error;
+
+            Log.ILog = new UnityLogger();
+
+            Options.Instance = new Options();
+
+            TimeInfo.Instance.TimeZone = 8;
             try
             {
                 HotUpdateProxy.Instance.update = Game.Update;

+ 2 - 1
GameClient/Assets/Game/HotUpdate/ServerProxy/PictureStorageHelper.cs

@@ -4,6 +4,7 @@ using System.Collections.Generic;
 using System.IO;
 using System.Net;
 using System.Net.Http;
+using System.Threading.Tasks;
 using ET;
 using FairyGUI;
 using UnityEngine;
@@ -38,7 +39,7 @@ namespace GFGGame
         }
 
         //将图片上传到华为云
-        public static async ETTask<bool> PushToHWCloud(string signUrl, byte[] buffer)
+        public static async Task<bool> PushToHWCloud(string signUrl, byte[] buffer)
         {
 
             HttpContent content = new ByteArrayContent(buffer);

+ 2 - 1
GameClient/Assets/Game/Launcher/Game.Launcher.asmdef

@@ -2,7 +2,8 @@
     "name": "Game.Launcher",
     "rootNamespace": "",
     "references": [
-        "GUID:7a41fac89c3ce014e99efb3723e6a98e"
+        "GUID:7a41fac89c3ce014e99efb3723e6a98e",
+        "GUID:13ba8ce62aa80c74598530029cb2d649"
     ],
     "includePlatforms": [],
     "excludePlatforms": [],

+ 3 - 21
GameClient/Assets/Game/Launcher/GameLauncher.cs

@@ -1,33 +1,15 @@
 using UnityEngine;
 using GFGGame;
-using ET;
-using System.Threading;
 using GFGGame.Launcher;
 using FairyGUI;
+using System;
 
 public class GameLauncher : MonoBehaviour
 {
     private void Awake()
     {
-        //ET
-        System.AppDomain.CurrentDomain.UnhandledException += (sender, e) =>
-        {
-            Log.Error(e.ExceptionObject.ToString());
-        };
-
-        SynchronizationContext.SetSynchronizationContext(ThreadSynchronizationContext.Instance);
-
         DontDestroyOnLoad(gameObject);
-
-        LitJson.UnityTypeBindings.Register();
-
-        ETTask.ExceptionHandler += Log.Error;
-
-        Log.ILog = new UnityLogger();
-
-        Options.Instance = new Options();
-
-        TimeInfo.Instance.TimeZone = 8;
+        
     }
 
     // Start is called before the first frame update
@@ -58,7 +40,7 @@ public class GameLauncher : MonoBehaviour
     {
         LauncherView.Instance.SetDesc("正在初始化..");
         var url = LauncherConfig.cfgUrl.Replace("{cfgName}", LauncherConfig.cfgName);
-        url = url + "?t=" + TimeHelper.ClientNow();
+        url = url + "?t=" + DateTime.Now.Ticks;
         HttpTool.Instance.Get(url, (string json) =>
         {
             LauncherConfig.InitPlatform(json);

+ 50 - 9
GameClient/Assets/Game/Launcher/HotUpdateProxy/HotUpdateCodeLoader.cs

@@ -3,11 +3,24 @@ using System.Collections;
 using System.Reflection;
 using UnityEngine;
 using GFGGame.Launcher;
+using System.Collections.Generic;
+using HybridCLR;
+using System.Linq;
 
 namespace GFGGame
 {
     public class HotUpdateCodeLoader : SingletonMonoBase<HotUpdateCodeLoader>
     {
+
+        public static List<string> AOTMetaAssemblyNames { get; } = new List<string>()
+        {
+            "mscorlib.dll",
+            "System.dll",
+            "System.Core.dll",
+            "Game.Launcher.dll",
+            "ThirdParty.dll"
+        };
+
         public Type[] allTypes;
 
         public Type[] GetTypes()
@@ -17,7 +30,15 @@ namespace GFGGame
 
         public void StartLoad()
         {
+
+#if !UNITY_EDITOR
+            LoadMetadataForAOTAssemblies();
             StartCoroutine(StartLoadAssemblyHotfix());
+#else
+            var gameAss = AppDomain.CurrentDomain.GetAssemblies().First(assembly => assembly.GetName().Name == "Game.HotUpdate");
+            LoadAssemblyJustInTime(gameAss);
+#endif
+
         }
 
 
@@ -29,23 +50,43 @@ namespace GFGGame
             var dllPath = $"{LauncherConfig.DllDirHotfix}Game.HotUpdate.dll.bytes";
             var asset = GFGAsset.Load<TextAsset>(dllPath);
             byte[] assBytes = asset.bytes;
-            var pdbPath = $"{LauncherConfig.DllDirHotfix}Game.HotUpdate.pdb.bytes";
-            asset = GFGAsset.Load<TextAsset>(pdbPath);
-            byte[] pdbBytes = asset.bytes;
-            StartCoroutine(LoadAssemblyJustInTime(assBytes, pdbBytes));
+            var assembly = Assembly.Load(assBytes);
+            LoadAssemblyJustInTime(assembly);
             GFGAsset.Release(dllPath);
-            GFGAsset.Release(pdbPath);
         }
 
-        IEnumerator LoadAssemblyJustInTime(byte[] assBytes, byte[] pdbBytes)
+        void LoadAssemblyJustInTime(Assembly assembly)
         {
             //mono模式
-            var assembly = Assembly.Load(assBytes, pdbBytes);
             this.allTypes = assembly.GetTypes();
             System.Type type = assembly.GetType("GFGGame.HotUpdate.HotUpdateEntry");
-            type.GetMethod("Start").Invoke(type, null);
-            yield break;
+            var method = type.GetMethod("Start");
+            var startDel = (Action)System.Delegate.CreateDelegate(typeof(Action), null, method);
+            startDel();
         }
 
+        /// <summary>
+        /// 为aot assembly加载原始metadata, 这个代码放aot或者热更新都行。
+        /// 一旦加载后,如果AOT泛型函数对应native实现不存在,则自动替换为解释模式执行
+        /// </summary>
+        private void LoadMetadataForAOTAssemblies()
+        {
+            // 可以加载任意aot assembly的对应的dll。但要求dll必须与unity build过程中生成的裁剪后的dll一致,而不能直接使用原始dll。
+            // 我们在BuildProcessors里添加了处理代码,这些裁剪后的dll在打包时自动被复制到 {项目目录}/HybridCLRData/AssembliesPostIl2CppStrip/{Target} 目录。
+
+            /// 注意,补充元数据是给AOT dll补充元数据,而不是给热更新dll补充元数据。
+            /// 热更新dll不缺元数据,不需要补充,如果调用LoadMetadataForAOTAssembly会返回错误
+            /// 
+            HomologousImageMode mode = HomologousImageMode.SuperSet;
+            foreach (var aotDllName in AOTMetaAssemblyNames)
+            {
+                var dllPath = $"{LauncherConfig.DllDirAOT}{aotDllName}.bytes";
+                var asset = GFGAsset.Load<TextAsset>(dllPath);
+                byte[] dllBytes = asset.bytes;
+                // 加载assembly对应的dll,会自动为它hook。一旦aot泛型函数的native函数不存在,用解释器版本代码
+                LoadImageErrorCode err = RuntimeApi.LoadMetadataForAOTAssembly(dllBytes, mode);
+                Debug.Log($"LoadMetadataForAOTAssembly:{aotDllName}. mode:{mode} ret:{err}");
+            }
+        }
     }
 }

+ 0 - 274
GameClient/Assets/Game/Launcher/HybridCLR/RefTypes.cs

@@ -1,274 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Runtime.CompilerServices;
-using System.Threading.Tasks;
-using UnityEngine;
-using UnityEngine.Scripting;
-using System.IO;
-
-[assembly: Preserve]
-enum IntEnum : int
-{
-    A,
-    B,
-}
-
-public class MyComparer<T> : Comparer<T>
-{
-    public override int Compare(T x, T y)
-    {
-        return 0;
-    }
-}
-
-class MyStateMachine : IAsyncStateMachine
-{
-    public void MoveNext()
-    {
-        throw new NotImplementedException();
-    }
-
-    public void SetStateMachine(IAsyncStateMachine stateMachine)
-    {
-        throw new NotImplementedException();
-    }
-}
-
-public class RefTypes : MonoBehaviour
-{
-    List<Type> GetTypes()
-    {
-        return new List<Type>
-        {
-            typeof(SpriteMask)
-        };
-    }
-
-    // Start is called before the first frame update
-    void Start()
-    {
-        Debug.Log(GetTypes());
-        GameObject.Instantiate<GameObject>(null);
-        Instantiate<GameObject>(null, null);
-        Instantiate<GameObject>(null, null, false);
-        Instantiate<GameObject>(null, new Vector3(), new Quaternion());
-        Instantiate<GameObject>(null, new Vector3(), new Quaternion(), null);
-    }
-
-    public void RefNumerics()
-    {
-        var a = new System.Numerics.BigInteger();
-        a.ToString();
-    }
-
-
-    void RefMisc()
-    {
-
-    }
-
-    void RefComparers()
-    {
-        var a = new object[]
-        {
-            new MyComparer<int>(),
-            new MyComparer<long>(),
-            new MyComparer<float>(),
-            new MyComparer<double>(),
-            new MyComparer<object>(),
-        };
-
-        new MyComparer<int>().Compare(default, default);
-        new MyComparer<long>().Compare(default, default);
-        new MyComparer<float>().Compare(default, default);
-        new MyComparer<double>().Compare(default, default);
-        new MyComparer<object>().Compare(default, default);
-
-        object b = EqualityComparer<int>.Default;
-        b = EqualityComparer<long>.Default;
-        b = EqualityComparer<float>.Default;
-        b = EqualityComparer<double>.Default;
-        b = EqualityComparer<object>.Default;
-    }
-
-
-    void RefNullable()
-    {
-        // nullable
-        object b = null;
-        int? a = 5;
-        b = a;
-        int d = (int?)b ?? 7;
-        int e = (int)b;
-        a = d;
-        b = a;
-        b = Enumerable.Range(0, 1).Reverse().Take(1).TakeWhile(x => true).Skip(1).All(x => true);
-        b = new WaitForSeconds(1f);
-        b = new WaitForSecondsRealtime(1f);
-        b = new WaitForFixedUpdate();
-        b = new WaitForEndOfFrame();
-        b = new WaitWhile(() => true);
-        b = new WaitUntil(() => true);
-    }
-
-    void RefContainer()
-    {
-        //int, long,float,double, IntEnum,object
-        List<object> b = new List<object>()
-        {
-
-        };
-    }
-
-    void RefAsyncMethod()
-    {
-        var stateMachine = new MyStateMachine();
-
-        TaskAwaiter aw = default;
-        var c0 = new AsyncTaskMethodBuilder();
-        c0.Start(ref stateMachine);
-        c0.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c0.SetException(null);
-        c0.SetResult();
-
-        var c1 = new AsyncTaskMethodBuilder();
-        c1.Start(ref stateMachine);
-        c1.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c1.SetException(null);
-        c1.SetResult();
-
-        var c2 = new AsyncTaskMethodBuilder<bool>();
-        c2.Start(ref stateMachine);
-        c2.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c2.SetException(null);
-        c2.SetResult(default);
-
-        var c3 = new AsyncTaskMethodBuilder<int>();
-        c3.Start(ref stateMachine);
-        c3.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c3.SetException(null);
-        c3.SetResult(default);
-
-        var c4 = new AsyncTaskMethodBuilder<long>();
-        c4.Start(ref stateMachine);
-        c4.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c4.SetException(null);
-
-        var c5 = new AsyncTaskMethodBuilder<float>();
-        c5.Start(ref stateMachine);
-        c5.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c5.SetException(null);
-        c5.SetResult(default);
-
-        var c6 = new AsyncTaskMethodBuilder<double>();
-        c6.Start(ref stateMachine);
-        c6.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c6.SetException(null);
-        c6.SetResult(default);
-
-        var c7 = new AsyncTaskMethodBuilder<object>();
-        c7.Start(ref stateMachine);
-        c7.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c7.SetException(null);
-        c7.SetResult(default);
-
-        var c8 = new AsyncTaskMethodBuilder<IntEnum>();
-        c8.Start(ref stateMachine);
-        c8.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c8.SetException(null);
-        c8.SetResult(default);
-
-        var c9 = new AsyncVoidMethodBuilder();
-        var b = AsyncVoidMethodBuilder.Create();
-        c9.Start(ref stateMachine);
-        c9.AwaitUnsafeOnCompleted(ref aw, ref stateMachine);
-        c9.SetException(null);
-        c9.SetResult();
-        Debug.Log(b);
-    }
-
-    void RefNewtonsoftJson()
-    {
-        //AotHelper.EnsureList<int>();
-        //AotHelper.EnsureList<long>();
-        //AotHelper.EnsureList<float>();
-        //AotHelper.EnsureList<double>();
-        //AotHelper.EnsureList<string>();
-        //AotHelper.EnsureDictionary<int, int>();
-        //AotHelper.EnsureDictionary<int, string>();
-    }
-
-    public void RefProtobufNet()
-    {
-        
-    }
-
-    public void RefGoogleProtobuf()
-    {
-    }
-
-    class TestTable
-    {
-        public int Id { get; set; }
-
-        public string Name { get; set; }
-    }
-
-    public void RefSQLite()
-    {
-    }
-
-    public static async void TestAsync3()
-    {
-        Debug.Log("async task 1");
-        await Task.Delay(10);
-        Debug.Log("async task 2");
-    }
-
-    public static int Main_1()
-    {
-        Debug.Log("hello,hybridclr");
-
-        var task = Task.Run(async () =>
-        {
-            await TestAsync2();
-        });
-
-        task.Wait();
-
-        Debug.Log("async task end");
-        Debug.Log("async task end2");
-
-        return 0;
-    }
-
-    public static async Task TestAsync2()
-    {
-        Debug.Log("async task 1");
-        await Task.Delay(3000);
-        Debug.Log("async task 2");
-    }
-
-    // Update is called once per frame
-    void Update()
-    {
-        TestAsync();
-    }
-
-    public static int TestAsync()
-    {
-        var t0 = Task.Run(async () =>
-        {
-            await Task.Delay(10);
-        });
-        t0.Wait();
-        var task = Task.Run(async () =>
-        {
-            await Task.Delay(10);
-            return 100;
-        });
-        Debug.Log(task.Result);
-        return 0;
-    }
-}

+ 0 - 36
GameClient/Assets/Game/Launcher/HybridCLR/RuntimeApi.cs

@@ -1,36 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using System.Runtime.InteropServices;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace HybridCLR
-{
-    public static class RuntimeApi
-    {
-#if UNITY_STANDALONE_WIN
-        private const string dllName = "GameAssembly";
-#elif UNITY_IOS || UNITY_STANDALONE_OSX || UNITY_WEBGL
-    private const string dllName = "__Internal";
-#else
-    private const string dllName = "il2cpp";
-#endif
-
-        [DllImport(dllName, EntryPoint = "RuntimeApi_LoadMetadataForAOTAssembly")]
-        public static extern int LoadMetadataForAOTAssembly(IntPtr dllBytes, int dllSize);
-
-        [DllImport(dllName, EntryPoint = "RuntimeApi_GetInterpreterThreadObjectStackSize")]
-        public static extern int GetInterpreterThreadObjectStackSize();
-
-        [DllImport(dllName, EntryPoint = "RuntimeApi_SetInterpreterThreadObjectStackSize")]
-        public static extern void SetInterpreterThreadObjectStackSize(int size);
-
-        [DllImport(dllName, EntryPoint = "RuntimeApi_GetInterpreterThreadFrameStackSize")]
-        public static extern int GetInterpreterThreadFrameStackSize();
-
-        [DllImport(dllName, EntryPoint = "RuntimeApi_SetInterpreterThreadFrameStackSize")]
-        public static extern void SetInterpreterThreadFrameStackSize(int size);
-    }
-}

+ 0 - 2
GameClient/Assets/Game/Launcher/LauncherConfig.cs

@@ -64,7 +64,6 @@ namespace GFGGame
 
         public static void InitPlatform(string json)
         {
-            ET.Log.Debug($"ptcfg \n{json}");
             var result = JsonMapper.ToObject<Result>(json);
             LauncherConfig.CDN_ROOT = result.cdnRoot;
             //CDN_ROOT = "http://10.108.64.127/";
@@ -75,7 +74,6 @@ namespace GFGGame
             LauncherConfig.platformId = int.Parse(result.platformId);
             LauncherConfig.onDebug = int.Parse(result.onDebug);
             LauncherConfig.manifest_v = result.manifest_v;
-            ET.Log.Debug($"platformId {LauncherConfig.platformId}");
         }
 
         private struct Result

+ 1 - 1
GameClient/Assets/Game/Launcher/Net/Http/HttpTool.cs

@@ -117,7 +117,7 @@ namespace GFGGame
             string paramCallback = null;
             if (webRequest.result == UnityWebRequest.Result.ProtocolError || webRequest.result == UnityWebRequest.Result.ConnectionError)
             {
-                ET.Log.Warning(webRequest.error + "\n" + webRequest.downloadHandler.text + "\nby " + tag);
+                Debug.LogWarning(webRequest.error + "\n" + webRequest.downloadHandler.text + "\nby " + tag);
                 retryFunc?.Invoke();
             }
             else

+ 1 - 1
GameClient/Assets/Plugins/Android/AndroidManifest.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!-- GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN-->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.unity3d.player"
-    xmlns:tools="http://schemas.android.com/tools">
+    xmlns:tools="http://schemas.android.com/tools" android:installLocation="preferExternal">
     <application android:networkSecurityConfig="@xml/network_security_config">
 
     </application>

+ 3 - 3
GameClient/Assets/Resources/PlayerSettings.asset

@@ -13,9 +13,9 @@ MonoBehaviour:
   m_Name: PlayerSettings
   m_EditorClassIdentifier: 
   assets:
-  - privacypolicy_5177dd9afec4830d784008bb5adc6ade
-  - privacypolicychildren_20d086cd3eb4971e23c338d9a3d885d5
-  - serviceprotocal_bd8f44b0ae9e2dac4cfbf2ede199c4c8
+  - privacypolicy_e461d2650407bfd62eed05528a42a930
+  - privacypolicychildren_a17f5598281df0170822d3dcee83535c
+  - serviceprotocal_0c71ba09ca81c447e69fed2f73917c27
   - Manifest.version
   - Manifest
   offlineMode: 0

+ 94 - 1
GameClient/Assets/Scenes/GameLauncher.unity

@@ -277,7 +277,7 @@ Transform:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 170410349}
   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 2.25, y: -5, z: 0}
+  m_LocalPosition: {x: 2.5, y: -5, z: 0}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_Children: []
   m_Father: {fileID: 0}
@@ -431,3 +431,96 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 4b2b7d724105420439593585dd395c41, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
+--- !u!1 &1597865575
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1597865578}
+  - component: {fileID: 1597865577}
+  - component: {fileID: 1597865576}
+  m_Layer: 0
+  m_Name: Reporter
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!114 &1597865576
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1597865575}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 6767a180de870304caa2013b2772dd62, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+--- !u!114 &1597865577
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1597865575}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 600c02144c4813244abd262cbcbe8825, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  show: 0
+  UserData: 
+  fps: 0
+  fpsText: 
+  images:
+    clearImage: {fileID: 2800000, guid: 112c6fcf56e349449ab2e6ad76b67816, type: 3}
+    collapseImage: {fileID: 2800000, guid: 4623f326a884a2546ab39078bf7822c3, type: 3}
+    clearOnNewSceneImage: {fileID: 2800000, guid: 3a6bc61a8319b1949ab9f1f2db1302b4, type: 3}
+    showTimeImage: {fileID: 2800000, guid: 782e03669fa4a614e89ef56252134250, type: 3}
+    showSceneImage: {fileID: 2800000, guid: ff4dfb29f203a174ab8e4c498afe908a, type: 3}
+    userImage: {fileID: 2800000, guid: 2bcdc012e7356f1449ce7d3a31dc458c, type: 3}
+    showMemoryImage: {fileID: 2800000, guid: f447d62f2dacf9843be7cbf168a3a9d0, type: 3}
+    softwareImage: {fileID: 2800000, guid: 6c91fc88ee6c791468318d85febfb48d, type: 3}
+    dateImage: {fileID: 2800000, guid: a7561cd0a9f62a84e99bff1abce2a222, type: 3}
+    showFpsImage: {fileID: 2800000, guid: 90b2f48155dc0e74f8e428561ac79da5, type: 3}
+    infoImage: {fileID: 2800000, guid: 2954bef266e6d794aba08ceacc887a0f, type: 3}
+    saveLogsImage: {fileID: 2800000, guid: 4a4821d80a1fc774fb76eac6213544e7, type: 3}
+    searchImage: {fileID: 2800000, guid: bfef37b5a26d2264798616d960451329, type: 3}
+    copyImage: {fileID: 2800000, guid: 7f36d71624c630046b855909c497be17, type: 3}
+    closeImage: {fileID: 2800000, guid: b65e9be99974bc94eab5d6698811d0b8, type: 3}
+    buildFromImage: {fileID: 2800000, guid: 8702be598dd9f504ca33be2afee2ca33, type: 3}
+    systemInfoImage: {fileID: 2800000, guid: e9011b1dc9256ad4d9c19a31c595f95f, type: 3}
+    graphicsInfoImage: {fileID: 2800000, guid: 999d31716332cc04eb4abc9c9270b0ca, type: 3}
+    backImage: {fileID: 2800000, guid: a0632a18e7c665641b94fea66506ab50, type: 3}
+    logImage: {fileID: 2800000, guid: e876b803a4dd5c5488078071d15aa9c0, type: 3}
+    warningImage: {fileID: 2800000, guid: 1066be8e7b994b94c8a182b8dbe30705, type: 3}
+    errorImage: {fileID: 2800000, guid: 7640ebf8b3a92124d821d3b4b8b3fd7e, type: 3}
+    barImage: {fileID: 2800000, guid: 8128d4f4c0193e34586f9631ef7d4787, type: 3}
+    button_activeImage: {fileID: 2800000, guid: 2580a2e903691e44282e56ed6e0ff37a, type: 3}
+    even_logImage: {fileID: 2800000, guid: d27aad55b568c6544b0b95a95da44bc7, type: 3}
+    odd_logImage: {fileID: 2800000, guid: 8ffbb44a2c3adae45913474e4fd487f5, type: 3}
+    selectedImage: {fileID: 2800000, guid: 17117a429b08e7e43b0b6c8421de69fe, type: 3}
+    reporterScrollerSkin: {fileID: 11400000, guid: 1cc68832d00d3284a9324a4dc05be753, type: 2}
+  size: {x: 32, y: 32}
+  maxSize: 20
+  numOfCircleToShow: 2
+  Initialized: 0
+--- !u!4 &1597865578
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1597865575}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 0}
+  m_RootOrder: 4
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

+ 1 - 1
GameClient/Assets/StreamingAssets/Bundles/Manifest

@@ -1 +1 @@
-{"version":1,"appVersion":"1.1","bundles":[{"id":0,"name":"privacypolicy","assets":["Assets/ResIn/Txt/privacyPolicy.txt"],"size":9283,"crc":423193950,"nameWithAppendHash":"privacypolicy_c7060c9c13648be551883ca188d5e817","dependencies":[]},{"id":1,"name":"privacypolicychildren","assets":["Assets/ResIn/Txt/privacyPolicyChildren.txt"],"size":12857,"crc":2519968594,"nameWithAppendHash":"privacypolicychildren_a17f5598281df0170822d3dcee83535c","dependencies":[]},{"id":2,"name":"serviceprotocal","assets":["Assets/ResIn/Txt/serviceProtocal.txt"],"size":14575,"crc":181435187,"nameWithAppendHash":"serviceprotocal_2a9fb82f27455f3d072d313f69b4fdc5","dependencies":[]}]}
+{"version":1,"appVersion":"1.3","bundles":[{"id":0,"name":"privacypolicy","assets":["Assets/ResIn/Txt/privacyPolicy.txt"],"size":9314,"crc":572161448,"nameWithAppendHash":"privacypolicy_e461d2650407bfd62eed05528a42a930","dependencies":[]},{"id":1,"name":"privacypolicychildren","assets":["Assets/ResIn/Txt/privacyPolicyChildren.txt"],"size":12857,"crc":2519968594,"nameWithAppendHash":"privacypolicychildren_a17f5598281df0170822d3dcee83535c","dependencies":[]},{"id":2,"name":"serviceprotocal","assets":["Assets/ResIn/Txt/serviceProtocal.txt"],"size":14562,"crc":72902517,"nameWithAppendHash":"serviceprotocal_0c71ba09ca81c447e69fed2f73917c27","dependencies":[]}]}

+ 1 - 1
GameClient/Assets/StreamingAssets/Bundles/Manifest.version

@@ -1 +1 @@
-{"crc":1838226871,"size":665,"version":1,"appVersion":"1.1"}
+{"crc":77799902,"size":664,"version":1,"appVersion":"1.3"}

BIN=BIN
GameClient/Assets/StreamingAssets/Bundles/privacypolicy_c7060c9c13648be551883ca188d5e817


+ 1 - 1
GameClient/Assets/StreamingAssets/Bundles/privacypolicychildren_a17f5598281df0170822d3dcee83535c.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: a3494ae8a9ea63543a34245477f0b58d
+guid: 17c718991dc526a47a48d0af3263a820
 DefaultImporter:
   externalObjects: {}
   userData: 

BIN=BIN
GameClient/Assets/StreamingAssets/Bundles/serviceprotocal_2a9fb82f27455f3d072d313f69b4fdc5


+ 1 - 0
GameClient/Assets/StreamingAssets/build_info

@@ -0,0 +1 @@
+Build from PC-20220613VZOA at 2022/11/26 15:39:26

+ 1 - 1
GameClient/Assets/StreamingAssets/Bundles/serviceprotocal_2a9fb82f27455f3d072d313f69b4fdc5.meta → GameClient/Assets/StreamingAssets/build_info.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 025d471ca5c80f540963c67c9f8ae8ed
+guid: a57acf03bb846c54aa34d0d589502214
 DefaultImporter:
   externalObjects: {}
   userData: 

+ 1 - 1
GameClient/Assets/Game/Launcher/HybridCLR.meta → GameClient/Assets/Unity-Logs-Viewer.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 0b7c61fc13b3ce643a4566a850ea20b9
+guid: 151864833b2ce8340a99f88278573517
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 40 - 0
GameClient/Assets/Unity-Logs-Viewer/README.md

@@ -0,0 +1,40 @@
+# Unity-Logs-Viewer
+
+
+Please note with new unity you can view device logs on editor console window, check the new attach menu in editor console window.
+
+
+Using this tool you can easily check your editor console logs inside the game itself! 
+All what you have to do is to make a circle gesture using your mouse (click and drag) or your finger (touch and drag) on the mobile screen to show all these logs! 
+
+You can download also from unity asset store
+https://www.assetstore.unity3d.com/en/#!/content/12047
+
+
+#### To setup log viewer do the following
+    1 - create reporter from menu (Reporter->Create) at first scene your game start.
+    2 - then set the ” Scrip execution order ” in (Edit -> Project Settings ) of Reporter.cs to be the highest.
+
+
+    
+     
+### Version 1.8
+    - Add Copy to clipboard.
+	- Merge Fix for Unity 2019.
+	- Fix ReporterModificationProcessor is annoying.
+	- Fix waste ram.
+    
+### Version 1.7
+    - Add Save logs button( thanks for Ahmed Shbli ).
+    - Fix deprecated code for new unity.
+    - Fix Warnings.
+    - Fix loading scene from asset bundle error.
+
+
+
+    
+    
+<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=J9MX5C6Q7B2NY">
+    <img src="https://www.paypalobjects.com/webstatic/en_US/btn/btn_donate_cc_147x47.png">
+    </img>
+</a>

+ 7 - 0
GameClient/Assets/Unity-Logs-Viewer/README.md.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 7970120b28b7fc040bcf888bbe4e0062
+TextScriptImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 0264958cc64273c46a257dd5bc018605
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 5 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Editor.meta

@@ -0,0 +1,5 @@
+fileFormatVersion: 2
+guid: 15d89de0102fd6743afd4d727f43d481
+folderAsset: yes
+DefaultImporter:
+  userData: 

+ 94 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Editor/ReporterEditor.cs

@@ -0,0 +1,94 @@
+using UnityEngine;
+using UnityEditor;
+using UnityEditor.Callbacks;
+
+using System.IO;
+using System.Collections;
+
+
+public class ReporterEditor : Editor
+{
+	[MenuItem("Reporter/Create")]
+	public static void CreateReporter()
+	{
+		const int ReporterExecOrder = -12000;
+		GameObject reporterObj = new GameObject();
+		reporterObj.name = "Reporter";
+		Reporter reporter = reporterObj.AddComponent<Reporter>();
+		reporterObj.AddComponent<ReporterMessageReceiver>();
+		//reporterObj.AddComponent<TestReporter>();
+		
+		// Register root object for undo.
+		Undo.RegisterCreatedObjectUndo(reporterObj, "Create Reporter Object");
+
+		MonoScript reporterScript = MonoScript.FromMonoBehaviour(reporter);
+		string reporterPath = Path.GetDirectoryName(AssetDatabase.GetAssetPath(reporterScript));
+
+		if (MonoImporter.GetExecutionOrder(reporterScript) != ReporterExecOrder) {
+			MonoImporter.SetExecutionOrder(reporterScript, ReporterExecOrder);
+			//Debug.Log("Fixing exec order for " + reporterScript.name);
+		}
+
+		reporter.images = new Images();
+		reporter.images.clearImage           = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/clear.png"), typeof(Texture2D));
+		reporter.images.collapseImage        = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/collapse.png"), typeof(Texture2D));
+		reporter.images.clearOnNewSceneImage = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/clearOnSceneLoaded.png"), typeof(Texture2D));
+		reporter.images.showTimeImage        = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/timer_1.png"), typeof(Texture2D));
+		reporter.images.showSceneImage       = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/UnityIcon.png"), typeof(Texture2D));
+		reporter.images.userImage            = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/user.png"), typeof(Texture2D));
+		reporter.images.showMemoryImage      = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/memory.png"), typeof(Texture2D));
+		reporter.images.softwareImage        = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/software.png"), typeof(Texture2D));
+		reporter.images.dateImage            = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/date.png"), typeof(Texture2D));
+		reporter.images.showFpsImage         = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/fps.png"), typeof(Texture2D));
+		//reporter.images.graphImage           = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/chart.png"), typeof(Texture2D));
+		reporter.images.infoImage            = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/info.png"), typeof(Texture2D));
+        reporter.images.saveLogsImage        = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/Save.png"), typeof(Texture2D));
+        reporter.images.searchImage          = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/search.png"), typeof(Texture2D));
+        reporter.images.copyImage            = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/copy.png"), typeof(Texture2D));
+        reporter.images.closeImage           = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/close.png"), typeof(Texture2D));
+		reporter.images.buildFromImage       = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/buildFrom.png"), typeof(Texture2D));
+		reporter.images.systemInfoImage      = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/ComputerIcon.png"), typeof(Texture2D));
+		reporter.images.graphicsInfoImage    = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/graphicCard.png"), typeof(Texture2D));
+		reporter.images.backImage            = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/back.png"), typeof(Texture2D));
+		reporter.images.logImage             = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/log_icon.png"), typeof(Texture2D));
+		reporter.images.warningImage         = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/warning_icon.png"), typeof(Texture2D));
+		reporter.images.errorImage           = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/error_icon.png"), typeof(Texture2D));
+		reporter.images.barImage             = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/bar.png"), typeof(Texture2D));
+		reporter.images.button_activeImage   = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/button_active.png"), typeof(Texture2D));
+		reporter.images.even_logImage        = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/even_log.png"), typeof(Texture2D));
+		reporter.images.odd_logImage         = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/odd_log.png"), typeof(Texture2D));
+		reporter.images.selectedImage        = (Texture2D)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/selected.png"), typeof(Texture2D));
+
+		reporter.images.reporterScrollerSkin = (GUISkin)AssetDatabase.LoadAssetAtPath(Path.Combine(reporterPath, "Images/reporterScrollerSkin.guiskin"), typeof(GUISkin));
+	}
+}
+
+public class ReporterModificationProcessor : UnityEditor.AssetModificationProcessor
+{
+	[InitializeOnLoad]
+	public class BuildInfo
+	{
+		static BuildInfo()
+		{
+			EditorApplication.update += Update;
+		}
+
+		static bool isCompiling = true;
+		static void Update()
+		{
+          
+			if (!EditorApplication.isCompiling && isCompiling) {
+				//Debug.Log("Finish Compile");
+				if (!Directory.Exists(Application.dataPath + "/StreamingAssets")) {
+					Directory.CreateDirectory(Application.dataPath + "/StreamingAssets");
+				}
+				string info_path = Application.dataPath + "/StreamingAssets/build_info"; 
+				StreamWriter build_info = new StreamWriter(info_path);
+				build_info.Write("Build from " + SystemInfo.deviceName + " at " + System.DateTime.Now.ToString());
+				build_info.Close();
+			}
+
+			isCompiling = EditorApplication.isCompiling;
+		}
+	}
+}

+ 8 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Editor/ReporterEditor.cs.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 639e2d9db58377f4997f7678b50e7e7a
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 

+ 5 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images.meta

@@ -0,0 +1,5 @@
+fileFormatVersion: 2
+guid: 7482c424dbd8a48489e4b2091f858a69
+folderAsset: yes
+DefaultImporter:
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/ComputerIcon.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/ComputerIcon.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: e9011b1dc9256ad4d9c19a31c595f95f
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/Save.png


+ 101 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/Save.png.meta

@@ -0,0 +1,101 @@
+fileFormatVersion: 2
+guid: 4a4821d80a1fc774fb76eac6213544e7
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 10
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: -1
+    aniso: 1
+    mipBias: -100
+    wrapU: 1
+    wrapV: 1
+    wrapW: -1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 2
+  textureShape: 1
+  singleChannelComponent: 0
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  platformSettings:
+  - serializedVersion: 2
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  - serializedVersion: 2
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/UnityIcon.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/UnityIcon.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: ff4dfb29f203a174ab8e4c498afe908a
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/back.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/back.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: a0632a18e7c665641b94fea66506ab50
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/bar.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/bar.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 8128d4f4c0193e34586f9631ef7d4787
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 32
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/buildFrom.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/buildFrom.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 8702be598dd9f504ca33be2afee2ca33
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/button_active.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/button_active.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 2580a2e903691e44282e56ed6e0ff37a
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/chart.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/chart.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 903d664043815ca4a9cc1f548bdd4b21
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/clear.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/clear.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 112c6fcf56e349449ab2e6ad76b67816
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/clearOnSceneLoaded.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/clearOnSceneLoaded.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 3a6bc61a8319b1949ab9f1f2db1302b4
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/close.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/close.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: b65e9be99974bc94eab5d6698811d0b8
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/collapse.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/collapse.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 4623f326a884a2546ab39078bf7822c3
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/copy.png


+ 112 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/copy.png.meta

@@ -0,0 +1,112 @@
+fileFormatVersion: 2
+guid: 7f36d71624c630046b855909c497be17
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 10
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: -1
+    aniso: 1
+    mipBias: -100
+    wrapU: 1
+    wrapV: 1
+    wrapW: -1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 2
+  textureShape: 1
+  singleChannelComponent: 0
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  platformSettings:
+  - serializedVersion: 2
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  - serializedVersion: 2
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  - serializedVersion: 2
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/date.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/date.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: a7561cd0a9f62a84e99bff1abce2a222
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 1
+    linearTexture: 0
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: -1
+    mipBias: -1
+    wrapMode: -1
+  nPOTScale: 1
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 0
+  textureType: -1
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/error_icon.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/error_icon.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 7640ebf8b3a92124d821d3b4b8b3fd7e
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/even_log.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/even_log.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: d27aad55b568c6544b0b95a95da44bc7
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/fps.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/fps.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 90b2f48155dc0e74f8e428561ac79da5
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/graphicCard.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/graphicCard.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 999d31716332cc04eb4abc9c9270b0ca
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/info.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/info.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 2954bef266e6d794aba08ceacc887a0f
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/log_icon.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/log_icon.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: e876b803a4dd5c5488078071d15aa9c0
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/memory.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/memory.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: f447d62f2dacf9843be7cbf168a3a9d0
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -1
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/odd_log.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/odd_log.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 8ffbb44a2c3adae45913474e4fd487f5
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

+ 1427 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/reporterScrollerSkin.guiskin

@@ -0,0 +1,1427 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_PrefabParentObject: {fileID: 0}
+  m_PrefabInternal: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 1
+  m_Script: {fileID: 12001, guid: 0000000000000000e000000000000000, type: 0}
+  m_Name: reporterScrollerSkin
+  m_EditorClassIdentifier: 
+  m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+  m_box:
+    m_Name: box
+    m_Normal:
+      m_Background: {fileID: 11001, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.79999995, g: 0.79999995, b: 0.79999995, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 6
+      m_Right: 6
+      m_Top: 6
+      m_Bottom: 6
+    m_Margin:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Padding:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 1
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_button:
+    m_Name: button
+    m_Normal:
+      m_Background: {fileID: 11006, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
+    m_Hover:
+      m_Background: {fileID: 11003, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_Active:
+      m_Background: {fileID: 11002, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 11005, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 11004, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 11002, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 6
+      m_Right: 6
+      m_Top: 6
+      m_Bottom: 4
+    m_Margin:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Padding:
+      m_Left: 6
+      m_Right: 6
+      m_Top: 3
+      m_Bottom: 3
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 4
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_toggle:
+    m_Name: toggle
+    m_Normal:
+      m_Background: {fileID: 11018, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.89112896, g: 0.89112896, b: 0.89112896, a: 1}
+    m_Hover:
+      m_Background: {fileID: 11014, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_Active:
+      m_Background: {fileID: 11013, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 11016, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.8901961, g: 0.8901961, b: 0.8901961, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 11015, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 11017, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 14
+      m_Right: 0
+      m_Top: 14
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Padding:
+      m_Left: 15
+      m_Right: 0
+      m_Top: 3
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: -1
+      m_Right: 0
+      m_Top: -4
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_label:
+    m_Name: label
+    m_Normal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 3
+      m_Bottom: 3
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 1
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_textField:
+    m_Name: textfield
+    m_Normal:
+      m_Background: {fileID: 11024, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.79999995, g: 0.79999995, b: 0.79999995, a: 1}
+    m_Hover:
+      m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 11025, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Margin:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Padding:
+      m_Left: 3
+      m_Right: 3
+      m_Top: 3
+      m_Bottom: 3
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 0
+    m_TextClipping: 1
+    m_ImagePosition: 3
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_textArea:
+    m_Name: textarea
+    m_Normal:
+      m_Background: {fileID: 11024, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 1}
+    m_Hover:
+      m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0.79999995, g: 0.79999995, b: 0.79999995, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 11025, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Margin:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Padding:
+      m_Left: 3
+      m_Right: 3
+      m_Top: 3
+      m_Bottom: 3
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 1
+    m_RichText: 0
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_window:
+    m_Name: window
+    m_Normal:
+      m_Background: {fileID: 11023, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 11022, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 8
+      m_Right: 8
+      m_Top: 18
+      m_Bottom: 8
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 10
+      m_Right: 10
+      m_Top: 20
+      m_Bottom: 10
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 1
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: -18}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_horizontalSlider:
+    m_Name: horizontalslider
+    m_Normal:
+      m_Background: {fileID: 11009, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 3
+      m_Right: 3
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Padding:
+      m_Left: -1
+      m_Right: -1
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: -2
+      m_Bottom: -3
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 2
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 12
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_horizontalSliderThumb:
+    m_Name: horizontalsliderthumb
+    m_Normal:
+      m_Background: {fileID: 11011, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 11012, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 11010, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 7
+      m_Right: 7
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: -1
+      m_Right: -1
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 2
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 12
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_verticalSlider:
+    m_Name: verticalslider
+    m_Normal:
+      m_Background: {fileID: 11021, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 3
+      m_Bottom: 3
+    m_Margin:
+      m_Left: 4
+      m_Right: 4
+      m_Top: 4
+      m_Bottom: 4
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: -1
+      m_Bottom: -1
+    m_Overflow:
+      m_Left: -2
+      m_Right: -3
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 0
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 12
+    m_FixedHeight: 0
+    m_StretchWidth: 0
+    m_StretchHeight: 1
+  m_verticalSliderThumb:
+    m_Name: verticalsliderthumb
+    m_Normal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 11012, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 11010, guid: 0000000000000000e000000000000000, type: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 7
+      m_Bottom: 7
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: -1
+      m_Bottom: -1
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 12
+    m_FixedHeight: 0
+    m_StretchWidth: 0
+    m_StretchHeight: 1
+  m_horizontalScrollbar:
+    m_Name: horizontalscrollbar
+    m_Normal:
+      m_Background: {fileID: 2800000, guid: 65382a9375963d842a164495d6431d6d, type: 3}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 9
+      m_Right: 9
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 1
+      m_Right: 1
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 2
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 0
+    m_StretchHeight: 1
+  m_horizontalScrollbarThumb:
+    m_Name: horizontalscrollbarthumb
+    m_Normal:
+      m_Background: {fileID: 2800000, guid: ea91678cb5fa4914d9a87d5882e46bf9, type: 3}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 6
+      m_Right: 6
+      m_Top: 6
+      m_Bottom: 6
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 6
+      m_Right: 6
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: -1
+      m_Bottom: 1
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 64
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_horizontalScrollbarLeftButton:
+    m_Name: horizontalscrollbarleftbutton
+    m_Normal:
+      m_Background: {fileID: 2800000, guid: 2b898d54956773c4ca8dac4becfff81d, type: 3}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_horizontalScrollbarRightButton:
+    m_Name: horizontalscrollbarrightbutton
+    m_Normal:
+      m_Background: {fileID: 2800000, guid: 1054f346b49bc774e84a30b01e173cd8, type: 3}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_verticalScrollbar:
+    m_Name: verticalscrollbar
+    m_Normal:
+      m_Background: {fileID: 2800000, guid: f44f16dd98d65e74e8001cf19cec1868, type: 3}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 9
+      m_Bottom: 9
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 1
+      m_Bottom: 1
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 64
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_verticalScrollbarThumb:
+    m_Name: verticalscrollbarthumb
+    m_Normal:
+      m_Background: {fileID: 2800000, guid: 7eafdff7daf79fe4ea883940862a3b9e, type: 3}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 6
+      m_Right: 6
+      m_Top: 6
+      m_Bottom: 6
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 6
+      m_Bottom: 6
+    m_Overflow:
+      m_Left: -1
+      m_Right: -1
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 2
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 64
+    m_FixedHeight: 0
+    m_StretchWidth: 0
+    m_StretchHeight: 1
+  m_verticalScrollbarUpButton:
+    m_Name: verticalscrollbarupbutton
+    m_Normal:
+      m_Background: {fileID: 2800000, guid: 844af5f04b57ce841a17503f7e44ac44, type: 3}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_verticalScrollbarDownButton:
+    m_Name: verticalscrollbardownbutton
+    m_Normal:
+      m_Background: {fileID: 2800000, guid: 564b866f40be55d40bb624f85197535c, type: 3}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 32, y: 32}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_ScrollView:
+    m_Name: scrollview
+    m_Normal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 1
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_CustomStyles:
+  - m_Name: 
+    m_Normal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Hover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Active:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Focused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnNormal:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnHover:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnActive:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_OnFocused:
+      m_Background: {fileID: 0}
+      m_ScaledBackgrounds: []
+      m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+    m_Border:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Margin:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Padding:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Overflow:
+      m_Left: 0
+      m_Right: 0
+      m_Top: 0
+      m_Bottom: 0
+    m_Font: {fileID: 0}
+    m_FontSize: 0
+    m_FontStyle: 0
+    m_Alignment: 0
+    m_WordWrap: 0
+    m_RichText: 1
+    m_TextClipping: 0
+    m_ImagePosition: 0
+    m_ContentOffset: {x: 0, y: 0}
+    m_FixedWidth: 0
+    m_FixedHeight: 0
+    m_StretchWidth: 1
+    m_StretchHeight: 0
+  m_Settings:
+    m_DoubleClickSelectsWord: 1
+    m_TripleClickSelectsLine: 1
+    m_CursorColor: {r: 1, g: 1, b: 1, a: 1}
+    m_CursorFlashSpeed: -1
+    m_SelectionColor: {r: 1, g: 0.38403907, b: 0, a: 0.7}

+ 4 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/reporterScrollerSkin.guiskin.meta

@@ -0,0 +1,4 @@
+fileFormatVersion: 2
+guid: 1cc68832d00d3284a9324a4dc05be753
+NativeFormatImporter:
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_down_arraw.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_down_arraw.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 564b866f40be55d40bb624f85197535c
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_horizental_back.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_horizental_back.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 65382a9375963d842a164495d6431d6d
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_horizental_thumb.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_horizental_thumb.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: ea91678cb5fa4914d9a87d5882e46bf9
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_left_arraw.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_left_arraw.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 2b898d54956773c4ca8dac4becfff81d
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_right_arraw.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_right_arraw.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 1054f346b49bc774e84a30b01e173cd8
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_up_arraw.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_up_arraw.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: 844af5f04b57ce841a17503f7e44ac44
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

BIN=BIN
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_vertical_back.png


+ 47 - 0
GameClient/Assets/Unity-Logs-Viewer/Reporter/Images/scroller_vertical_back.png.meta

@@ -0,0 +1,47 @@
+fileFormatVersion: 2
+guid: f44f16dd98d65e74e8001cf19cec1868
+TextureImporter:
+  fileIDToRecycleName: {}
+  serializedVersion: 2
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    linearTexture: 1
+    correctGamma: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: .25
+    normalMapFilter: 0
+  isReadable: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 0
+  seamlessCubemap: 0
+  textureFormat: -3
+  maxTextureSize: 1024
+  textureSettings:
+    filterMode: -1
+    aniso: 1
+    mipBias: -1
+    wrapMode: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 0
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: .5, y: .5}
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spritePixelsToUnits: 100
+  alphaIsTransparency: 1
+  textureType: 2
+  buildTargetSettings: []
+  spriteSheet:
+    sprites: []
+  spritePackingTag: 
+  userData: 

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio