Browse Source

add excel exporter

gsgundam 8 năm trước cách đây
mục cha
commit
35acd5d5a8
100 tập tin đã thay đổi với 1763 bổ sung27 xóa
  1. 73 0
      .gitignore
  2. 9 0
      Assets/Plugins.meta
  3. BIN
      Assets/Plugins/Debuger.dll
  4. 25 0
      Assets/Plugins/Debuger.dll.meta
  5. BIN
      Assets/Plugins/LitJson.dll
  6. 25 0
      Assets/Plugins/LitJson.dll.meta
  7. 9 0
      Assets/Plugins/Xlsx.meta
  8. BIN
      Assets/Plugins/Xlsx/Excel.dll
  9. 72 0
      Assets/Plugins/Xlsx/Excel.dll.meta
  10. BIN
      Assets/Plugins/Xlsx/ICSharpCode.SharpZipLib.dll
  11. 72 0
      Assets/Plugins/Xlsx/ICSharpCode.SharpZipLib.dll.meta
  12. BIN
      Assets/Plugins/Xlsx/System.Data.dll
  13. 70 0
      Assets/Plugins/Xlsx/System.Data.dll.meta
  14. 1 1
      Assets/Resources/Sprite/Garden/Flower4.png.meta
  15. 9 0
      Assets/Resources/XML/Config.meta
  16. 101 0
      Assets/Resources/XML/Config/ability_config.xml
  17. 8 0
      Assets/Resources/XML/Config/ability_config.xml.meta
  18. 31 0
      Assets/Resources/XML/Config/flower_config.xml
  19. 8 0
      Assets/Resources/XML/Config/flower_config.xml.meta
  20. 75 0
      Assets/Resources/XML/Config/pack_config.xml
  21. 8 0
      Assets/Resources/XML/Config/pack_config.xml.meta
  22. 118 0
      Assets/Resources/XML/Config/skill_config.xml
  23. 8 0
      Assets/Resources/XML/Config/skill_config.xml.meta
  24. 403 0
      Assets/Script/Editor/EditorConfigExporter.cs
  25. 12 0
      Assets/Script/Editor/EditorConfigExporter.cs.meta
  26. 9 0
      Assets/Script/Utils.meta
  27. 96 0
      Assets/Script/Utils/DGFileUtil.cs
  28. 12 0
      Assets/Script/Utils/DGFileUtil.cs.meta
  29. 41 0
      Assets/Script/Utils/JsonUtil.cs
  30. 12 0
      Assets/Script/Utils/JsonUtil.cs.meta
  31. 79 0
      Assets/Script/Utils/MD5Util.cs
  32. 12 0
      Assets/Script/Utils/MD5Util.cs.meta
  33. 160 0
      Assets/Script/Utils/NumberUtil.cs
  34. 12 0
      Assets/Script/Utils/NumberUtil.cs.meta
  35. 110 0
      Assets/Script/Utils/StringUtil.cs
  36. 12 0
      Assets/Script/Utils/StringUtil.cs.meta
  37. 9 0
      Assets/XlsxSource.meta
  38. BIN
      Assets/XlsxSource/ability_config.xlsx
  39. 8 0
      Assets/XlsxSource/ability_config.xlsx.meta
  40. BIN
      Assets/XlsxSource/flower_config.xlsx
  41. 8 0
      Assets/XlsxSource/flower_config.xlsx.meta
  42. BIN
      Assets/XlsxSource/pack_config.xlsx
  43. 8 0
      Assets/XlsxSource/pack_config.xlsx.meta
  44. BIN
      Assets/XlsxSource/skill_config.xlsx
  45. 8 0
      Assets/XlsxSource/skill_config.xlsx.meta
  46. BIN
      Library/CurrentLayout.dwlt
  47. BIN
      Library/CurrentMaximizeLayout.dwlt
  48. BIN
      Library/ScriptAssemblies/Assembly-CSharp-Editor.dll
  49. BIN
      Library/ScriptAssemblies/Assembly-CSharp-Editor.dll.mdb
  50. BIN
      Library/ScriptAssemblies/Assembly-CSharp.dll
  51. BIN
      Library/ScriptAssemblies/Assembly-CSharp.dll.mdb
  52. BIN
      Library/UnityAssemblies/SyntaxTree.VisualStudio.Unity.Bridge.dll
  53. BIN
      Library/UnityAssemblies/UnityEditor.Advertisements.dll
  54. BIN
      Library/UnityAssemblies/UnityEditor.Analytics.dll
  55. BIN
      Library/UnityAssemblies/UnityEditor.Android.Extensions.dll
  56. BIN
      Library/UnityAssemblies/UnityEditor.EditorTestsRunner.dll
  57. BIN
      Library/UnityAssemblies/UnityEditor.Graphs.dll
  58. BIN
      Library/UnityAssemblies/UnityEditor.HoloLens.dll
  59. BIN
      Library/UnityAssemblies/UnityEditor.Networking.dll
  60. BIN
      Library/UnityAssemblies/UnityEditor.PlaymodeTestsRunner.dll
  61. BIN
      Library/UnityAssemblies/UnityEditor.TreeEditor.dll
  62. BIN
      Library/UnityAssemblies/UnityEditor.UI.dll
  63. BIN
      Library/UnityAssemblies/UnityEditor.VR.dll
  64. BIN
      Library/UnityAssemblies/UnityEditor.WebGL.Extensions.dll
  65. BIN
      Library/UnityAssemblies/UnityEditor.WindowsStandalone.Extensions.dll
  66. BIN
      Library/UnityAssemblies/UnityEditor.iOS.Extensions.Common.dll
  67. BIN
      Library/UnityAssemblies/UnityEditor.iOS.Extensions.Xcode.dll
  68. 30 26
      Library/UnityAssemblies/version.txt
  69. BIN
      Library/assetDatabase3
  70. BIN
      Library/expandedItems
  71. BIN
      Library/metadata/00/00000000000000002000000000000000
  72. BIN
      Library/metadata/00/00000000000000003000000000000000
  73. BIN
      Library/metadata/00/00000000000000004000000000000000
  74. BIN
      Library/metadata/00/00000000000000004100000000000000
  75. BIN
      Library/metadata/00/00000000000000005000000000000000
  76. BIN
      Library/metadata/00/00000000000000005100000000000000
  77. BIN
      Library/metadata/00/00000000000000006000000000000000
  78. BIN
      Library/metadata/00/00000000000000006100000000000000
  79. BIN
      Library/metadata/00/00000000000000007000000000000000
  80. BIN
      Library/metadata/00/00000000000000007100000000000000
  81. BIN
      Library/metadata/00/00000000000000008000000000000000
  82. BIN
      Library/metadata/00/00000000000000009000000000000000
  83. BIN
      Library/metadata/00/0000000000000000a000000000000000
  84. BIN
      Library/metadata/00/0000000000000000a100000000000000
  85. BIN
      Library/metadata/00/0000000000000000b000000000000000
  86. BIN
      Library/metadata/00/0000000000000000c000000000000000
  87. BIN
      Library/metadata/06/06892e67e81ef9742a9a2846b54363ab
  88. BIN
      Library/metadata/06/06892e67e81ef9742a9a2846b54363ab.info
  89. BIN
      Library/metadata/0d/0d3bb855445e36e479c85976fc88383a
  90. BIN
      Library/metadata/12/12fd8a0055b84bb59e84c9835a37e333
  91. BIN
      Library/metadata/17/17910131ed5b5ca4db56342fb7df41a4
  92. BIN
      Library/metadata/18/18dbc98b4def64543ae0446a3e9161dd.info
  93. BIN
      Library/metadata/1c/1c6d1fbb51834b64847b1b73a75bfc77
  94. BIN
      Library/metadata/20/208285e407aecc040abae18a57915b26.info
  95. BIN
      Library/metadata/21/2142878b27d222a41b430f27cbf7f4be
  96. BIN
      Library/metadata/21/2142878b27d222a41b430f27cbf7f4be.info
  97. BIN
      Library/metadata/21/21eff446d50eaf44a85985cd4c0b6fa1
  98. BIN
      Library/metadata/22/224c92a9460ab28458454690ed628ff5
  99. BIN
      Library/metadata/22/224c92a9460ab28458454690ed628ff5.info
  100. BIN
      Library/metadata/22/2281497cc8538ec46aa8e611d10bf5b1

+ 73 - 0
.gitignore

@@ -0,0 +1,73 @@
+**/[Ll]ibrary/
+**/[Tt]emp/
+**/[Oo]bj/
+**/[Bb]uild/
+**/[Bb]uilds/
+**/[Ii]OS/
+**/Assets/StreamingAssets/
+**/Assets/AssetStoreTools*
+
+# Autogenerated VS/MD solution and project files
+ExportedObj/
+*.csproj
+*.unityproj
+*.sln
+*.suo
+*.tmp
+*.user
+*.userprefs
+*.pidb
+*.booproj
+*.svd
+
+**/Assets/tolua/Source/Generate/
+# Unity3D generated meta files
+*.pidb.meta
+
+# Unity3D Generated File On Crash Reports
+sysinfo.txt
+
+# Builds
+*.apk
+*.unitypackage
+*.zip
+*.7z
+*.rar
+.DS_Store
+
+*.DS_Store
+*.orig.meta
+*.orig
+*/.DS_Store
+[Bb]undle/*
+
+*/.DS_Store
+*/\~\$*
+*/~$*
+
+
+*.tmp
+
+# Word temporary
+~$*.doc*
+
+# Excel temporary
+~$*.xls*
+
+# Excel Backup File
+*.xlk
+
+# PowerPoint temporary
+~$*.ppt*
+
+# Visio autosave temporary files
+*.~vsdx
+**/.DS_Store
+[Bb]undle/
+[Bb]undle.meta
+[Ll]og/
+[Ss]treamingAssets/
+[Ss]treamingAssets.meta
+UnityVS
+
+Fight/fight.txt

+ 9 - 0
Assets/Plugins.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: e81904ae23498ec4d848400bd6e23d29
+folderAsset: yes
+timeCreated: 1487574346
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/Plugins/Debuger.dll


+ 25 - 0
Assets/Plugins/Debuger.dll.meta

@@ -0,0 +1,25 @@
+fileFormatVersion: 2
+guid: 8d0d99797c400f14497caa0b7959eb15
+timeCreated: 1487574612
+licenseType: Pro
+PluginImporter:
+  serializedVersion: 1
+  iconMap: {}
+  executionOrder: {}
+  isPreloaded: 0
+  isOverridable: 0
+  platformData:
+    Any:
+      enabled: 1
+      settings: {}
+    Editor:
+      enabled: 0
+      settings:
+        DefaultValueInitialized: true
+    WindowsStoreApps:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/Plugins/LitJson.dll


+ 25 - 0
Assets/Plugins/LitJson.dll.meta

@@ -0,0 +1,25 @@
+fileFormatVersion: 2
+guid: f9c5a7972ae437940994c8fc73755bb1
+timeCreated: 1487574512
+licenseType: Pro
+PluginImporter:
+  serializedVersion: 1
+  iconMap: {}
+  executionOrder: {}
+  isPreloaded: 0
+  isOverridable: 0
+  platformData:
+    Any:
+      enabled: 1
+      settings: {}
+    Editor:
+      enabled: 0
+      settings:
+        DefaultValueInitialized: true
+    WindowsStoreApps:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 9 - 0
Assets/Plugins/Xlsx.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 5fa93de68772d5f459727961c6d042f3
+folderAsset: yes
+timeCreated: 1487574351
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/Plugins/Xlsx/Excel.dll


+ 72 - 0
Assets/Plugins/Xlsx/Excel.dll.meta

@@ -0,0 +1,72 @@
+fileFormatVersion: 2
+guid: 567d5cc0423785e47a30bc72b55d295e
+timeCreated: 1433401754
+licenseType: Pro
+PluginImporter:
+  serializedVersion: 1
+  iconMap: {}
+  executionOrder: {}
+  isPreloaded: 0
+  platformData:
+    Android:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    Any:
+      enabled: 0
+      settings: {}
+    Editor:
+      enabled: 1
+      settings:
+        CPU: AnyCPU
+        DefaultValueInitialized: true
+        OS: AnyOS
+    Linux:
+      enabled: 0
+      settings:
+        CPU: x86
+    Linux64:
+      enabled: 0
+      settings:
+        CPU: x86_64
+    OSXIntel:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    OSXIntel64:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    SamsungTV:
+      enabled: 0
+      settings:
+        STV_MODEL: STANDARD_13
+    WP8:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+        DontProcess: False
+        PlaceholderPath: 
+    Win:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    Win64:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    WindowsStoreApps:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+        DontProcess: False
+        PlaceholderPath: 
+        SDK: AnySDK
+    iOS:
+      enabled: 0
+      settings:
+        CompileFlags: 
+        FrameworkDependencies: 
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/Plugins/Xlsx/ICSharpCode.SharpZipLib.dll


+ 72 - 0
Assets/Plugins/Xlsx/ICSharpCode.SharpZipLib.dll.meta

@@ -0,0 +1,72 @@
+fileFormatVersion: 2
+guid: d4703fe77746f7241aa5dadd75e5c311
+timeCreated: 1433401755
+licenseType: Pro
+PluginImporter:
+  serializedVersion: 1
+  iconMap: {}
+  executionOrder: {}
+  isPreloaded: 0
+  platformData:
+    Android:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    Any:
+      enabled: 0
+      settings: {}
+    Editor:
+      enabled: 1
+      settings:
+        CPU: AnyCPU
+        DefaultValueInitialized: true
+        OS: AnyOS
+    Linux:
+      enabled: 0
+      settings:
+        CPU: x86
+    Linux64:
+      enabled: 0
+      settings:
+        CPU: x86_64
+    OSXIntel:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    OSXIntel64:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    SamsungTV:
+      enabled: 0
+      settings:
+        STV_MODEL: STANDARD_13
+    WP8:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+        DontProcess: False
+        PlaceholderPath: 
+    Win:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    Win64:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    WindowsStoreApps:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+        DontProcess: False
+        PlaceholderPath: 
+        SDK: AnySDK
+    iOS:
+      enabled: 0
+      settings:
+        CompileFlags: 
+        FrameworkDependencies: 
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/Plugins/Xlsx/System.Data.dll


+ 70 - 0
Assets/Plugins/Xlsx/System.Data.dll.meta

@@ -0,0 +1,70 @@
+fileFormatVersion: 2
+guid: f793feb5b35df4d18b87616d42104af3
+PluginImporter:
+  serializedVersion: 1
+  iconMap: {}
+  executionOrder: {}
+  isPreloaded: 0
+  platformData:
+    Android:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    Any:
+      enabled: 0
+      settings: {}
+    Editor:
+      enabled: 1
+      settings:
+        CPU: AnyCPU
+        DefaultValueInitialized: true
+        OS: AnyOS
+    Linux:
+      enabled: 0
+      settings:
+        CPU: x86
+    Linux64:
+      enabled: 0
+      settings:
+        CPU: x86_64
+    OSXIntel:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    OSXIntel64:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    SamsungTV:
+      enabled: 0
+      settings:
+        STV_MODEL: STANDARD_13
+    WP8:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+        DontProcess: False
+        PlaceholderPath: 
+    Win:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    Win64:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+    WindowsStoreApps:
+      enabled: 0
+      settings:
+        CPU: AnyCPU
+        DontProcess: False
+        PlaceholderPath: 
+        SDK: AnySDK
+    iOS:
+      enabled: 0
+      settings:
+        CompileFlags: 
+        FrameworkDependencies: 
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 1 - 1
Assets/Resources/Sprite/Garden/Flower4.png.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 5b1fced0349fac045a4a4acaa5694450
+guid: 04646b581a791c649978e5eda6410c06
 timeCreated: 1486900934
 licenseType: Pro
 TextureImporter:

+ 9 - 0
Assets/Resources/XML/Config.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 35d48b1ba6c53aa42bedca9552bb8c96
+folderAsset: yes
+timeCreated: 1487574636
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 101 - 0
Assets/Resources/XML/Config/ability_config.xml

@@ -0,0 +1,101 @@
+<data>
+  <item id="1" name="花园" class="1" class_id="1" coin_person="10" person="0.1" skill_cd="" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="1" upgrade_amnt="200" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="0.1" upgrade_cd="" desc="每人次收入 金币%coin_person%" icon="" anim="" label="" />
+  <item id="2" name="炼金石" class="1" class_id="5" coin_person="" person="0.3" skill_cd="" unlock_lv="300" unlock_ahead_cur="2" unlock_ahead_amt="200" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="" upgrade_person="1" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="3" name="神秘灌木" class="1" class_id="6" coin_person="1" person="" skill_cd="" unlock_lv="500" unlock_ahead_cur="2" unlock_ahead_amt="300" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="0.5" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="4" name="滴哩哩的小黄鹂" class="1" class_id="7" coin_person="" person="" skill_cd="0.05" unlock_lv="500" unlock_ahead_cur="2" unlock_ahead_amt="500" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="" upgrade_person="" upgrade_cd="0.05" desc="" icon="" anim="" label="" />
+  <item id="5" name="黄色小蜜蜂" class="2" class_id="1" coin_person="10" person="" skill_cd="" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="1" upgrade_amnt="1600" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="6" name="紫色小蜜蜂" class="2" class_id="2" coin_person="10" person="" skill_cd="" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="86400" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="7" name="蓝色小蜜蜂" class="2" class_id="3" coin_person="10" person="" skill_cd="" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="22118000" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="8" name="红色小蜜蜂" class="2" class_id="4" coin_person="10" person="" skill_cd="" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="16588000000" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="9" name="白色小蜜蜂" class="2" class_id="5" coin_person="10" person="" skill_cd="" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="28665000000000" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="10" name="黄色小蝴蝶" class="2" class_id="6" coin_person="20" person="" skill_cd="" unlock_lv="300" unlock_ahead_cur="2" unlock_ahead_amt="100" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="28665000000000" upgrade_fml="a*1.07" upgrade_plus="20" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="11" name="紫色小蝴蝶" class="2" class_id="7" coin_person="20" person="" skill_cd="" unlock_lv="300" unlock_ahead_cur="2" unlock_ahead_amt="100" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="28665000000000" upgrade_fml="a*1.07" upgrade_plus="20" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="12" name="蓝色小蝴蝶" class="2" class_id="8" coin_person="20" person="" skill_cd="" unlock_lv="300" unlock_ahead_cur="2" unlock_ahead_amt="100" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="28665000000000" upgrade_fml="a*1.07" upgrade_plus="20" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="13" name="红色小蝴蝶" class="2" class_id="9" coin_person="20" person="" skill_cd="" unlock_lv="300" unlock_ahead_cur="2" unlock_ahead_amt="100" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="28665000000000" upgrade_fml="a*1.07" upgrade_plus="20" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="14" name="白色小蝴蝶" class="2" class_id="10" coin_person="20" person="" skill_cd="" unlock_lv="300" unlock_ahead_cur="2" unlock_ahead_amt="100" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="28665000000000" upgrade_fml="a*1.07" upgrade_plus="20" upgrade_person="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <comment>
+    <id>
+id
+</id>
+    <name>
+名称
+</name>
+    <class>
+所属类别
+</class>
+    <class_id>
+所属
+类别序号
+</class_id>
+    <coin_person>
+每人次收入
+基础值
+</coin_person>
+    <person>
+每秒参观数
+基础值
+</person>
+    <skill_cd>
+技能冷却
+</skill_cd>
+    <unlock_lv>
+解锁等级
+</unlock_lv>
+    <unlock_ahead_cur>
+提前解锁
+消耗货币
+</unlock_ahead_cur>
+    <unlock_ahead_amt>
+提前解锁
+消耗数值
+</unlock_ahead_amt>
+    <unlock_cur>
+解锁
+消耗货币
+</unlock_cur>
+    <unlock_amnt>
+解锁
+消耗数值
+</unlock_amnt>
+    <unlock_pos>
+解锁
+开启位置数
+</unlock_pos>
+    <upgrade_cur>
+升级
+消耗货币
+</upgrade_cur>
+    <upgrade_amnt>
+升级
+消耗基础值
+</upgrade_amnt>
+    <upgrade_fml>
+升级
+消耗公式
+</upgrade_fml>
+    <upgrade_plus>
+升级
+收入加成
+</upgrade_plus>
+    <upgrade_person>
+升级
+参观数加成
+</upgrade_person>
+    <upgrade_cd>
+升级
+冷却加成
+</upgrade_cd>
+    <desc>
+描述
+</desc>
+    <icon>
+图标
+</icon>
+    <anim>
+场景物件
+</anim>
+    <label>
+标签
+</label>
+  </comment>
+</data>

+ 8 - 0
Assets/Resources/XML/Config/ability_config.xml.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 32f961525833aec4bbbb7f2aaec0a968
+timeCreated: 1487574636
+licenseType: Pro
+TextScriptImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 31 - 0
Assets/Resources/XML/Config/flower_config.xml

@@ -0,0 +1,31 @@
+<data>
+  <item id="1" name="粉色小花" desc="粉色小花的描述" icon="" anim="" />
+  <item id="2" name="紫色小花" desc="紫色小花的描述" icon="" anim="" />
+  <item id="3" name="波斯菊(粉)" desc="波斯菊(粉)的描述" icon="" anim="" />
+  <item id="4" name="康乃馨(红)" desc="康乃馨(红)的描述" icon="" anim="" />
+  <item id="5" name="铃兰(白)" desc="铃兰(白)的描述" icon="" anim="" />
+  <item id="6" name="马蹄莲(白)" desc="马蹄莲(白)的描述" icon="" anim="" />
+  <item id="7" name="蒲公英" desc="蒲公英的描述" icon="" anim="" />
+  <item id="8" name="牵牛花(蓝)" desc="牵牛花(蓝)的描述" icon="" anim="" />
+  <item id="9" name="三色堇(紫)" desc="三色堇(紫)的描述" icon="" anim="" />
+  <item id="10" name="三叶草(粉)" desc="三叶草(粉)的描述" icon="" anim="" />
+  <item id="11" name="向日葵" desc="向日葵的描述" icon="" anim="" />
+  <item id="12" name="郁金香(粉)" desc="郁金香(粉)的描述" icon="" anim="" />
+  <comment>
+    <id>
+id
+</id>
+    <name>
+名称
+</name>
+    <desc>
+描述
+</desc>
+    <icon>
+图标
+</icon>
+    <anim>
+场景物件
+</anim>
+  </comment>
+</data>

+ 8 - 0
Assets/Resources/XML/Config/flower_config.xml.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 8c9a971a3238b1e41bdc2ca883e20a4c
+timeCreated: 1487574638
+licenseType: Pro
+TextScriptImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 75 - 0
Assets/Resources/XML/Config/pack_config.xml

@@ -0,0 +1,75 @@
+<data>
+  <item id="1" name="金币大礼包" class="3" class_id="2" coin_person="" person="" skill_cd="" upgrade_plus="" coin="1000" diamond="" flower="" use_lv="" use_cur="2" use_amnt="200" desc="立即获得金币 %coin%" icon="" anim="" label="" />
+  <item id="2" name="天赐大礼包" class="3" class_id="3" coin_person="" person="" skill_cd="" upgrade_plus="" coin="5000" diamond="" flower="" use_lv="" use_cur="2" use_amnt="400" desc="立即获得金币 %coin%" icon="" anim="" label="" />
+  <item id="3" name="花神大礼包" class="3" class_id="4" coin_person="" person="" skill_cd="" upgrade_plus="" coin="15000" diamond="" flower="" use_lv="" use_cur="2" use_amnt="800" desc="立即获得金币 %coin%" icon="" anim="" label="" />
+  <item id="4" name="新手礼包" class="4" class_id="1" coin_person="" person="" skill_cd="" upgrade_plus="1.1" coin="" diamond="500" flower="10" use_lv="50,150" use_cur="3" use_amnt="6" desc="获得%flower%,%diamond%钻石&#xA;所有金币产出提升%upgrade_plus%,永久有效" icon="" anim="" label="" />
+  <item id="5" name="中级礼包" class="4" class_id="2" coin_person="" person="" skill_cd="" upgrade_plus="1.1" coin="" diamond="2000" flower="11" use_lv="" use_cur="3" use_amnt="30" desc="获得%flower%,%diamond%钻石&#xA;所有金币产出提升%upgrade_plus%,永久有效" icon="" anim="" label="" />
+  <item id="6" name="高级礼包" class="4" class_id="3" coin_person="" person="" skill_cd="" upgrade_plus="1.1" coin="" diamond="4000" flower="12" use_lv="" use_cur="3" use_amnt="68" desc="获得%flower%,%diamond%钻石&#xA;所有金币产出提升%upgrade_plus%,永久有效" icon="" anim="" label="" />
+  <item id="7" name="钻石100" class="4" class_id="4" coin_person="" person="" skill_cd="" upgrade_plus="" coin="" diamond="100" flower="" use_lv="" use_cur="3" use_amnt="6" desc="购买 %diamond%钻石" icon="" anim="" label="" />
+  <item id="8" name="钻石500 赠送50" class="4" class_id="5" coin_person="" person="" skill_cd="" upgrade_plus="" coin="" diamond="550" flower="" use_lv="" use_cur="3" use_amnt="30" desc="共计 %diamond%钻石" icon="" anim="" label="热卖" />
+  <item id="9" name="钻石2000 赠送500" class="4" class_id="6" coin_person="" person="" skill_cd="" upgrade_plus="" coin="" diamond="2500" flower="" use_lv="" use_cur="3" use_amnt="68" desc="共计 %diamond%钻石" icon="" anim="" label="超值" />
+  <item id="10" name="钻石6000 赠送600" class="4" class_id="7" coin_person="" person="" skill_cd="" upgrade_plus="" coin="" diamond="6600" flower="" use_lv="" use_cur="3" use_amnt="128" desc="共计 %diamond%钻石" icon="" anim="" label="" />
+  <item id="11" name="钻石10000 赠送2000" class="4" class_id="8" coin_person="" person="" skill_cd="" upgrade_plus="" coin="" diamond="12000" flower="" use_lv="" use_cur="3" use_amnt="328" desc="共计 %diamond%钻石" icon="" anim="" label="" />
+  <comment>
+    <id>
+id
+</id>
+    <name>
+名称
+</name>
+    <class>
+所属类别
+</class>
+    <class_id>
+所属
+类别序号
+</class_id>
+    <coin_person>
+每人次收入
+基础值
+</coin_person>
+    <person>
+每秒参观数
+基础值
+</person>
+    <skill_cd>
+技能冷却
+</skill_cd>
+    <upgrade_plus>
+升级
+收入加成
+</upgrade_plus>
+    <coin>
+获得金币
+</coin>
+    <diamond>
+获得钻石
+</diamond>
+    <flower>
+获得花朵
+</flower>
+    <use_lv>
+使用等级
+</use_lv>
+    <use_cur>
+使用
+消耗货币
+</use_cur>
+    <use_amnt>
+使用
+消耗数值
+</use_amnt>
+    <desc>
+描述
+</desc>
+    <icon>
+图标
+</icon>
+    <anim>
+场景物件
+</anim>
+    <label>
+标签
+</label>
+  </comment>
+</data>

+ 8 - 0
Assets/Resources/XML/Config/pack_config.xml.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 30eb6480196a45d4bb13ef7ce16a2e9e
+timeCreated: 1487574639
+licenseType: Pro
+TextScriptImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 118 - 0
Assets/Resources/XML/Config/skill_config.xml

@@ -0,0 +1,118 @@
+<data>
+  <item id="1" name="人潮涌动" class="1" class_id="2" coin_person="" person="0.1" coin_once="" diamond_once="" duration="300" cd="1800" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" use__cur="" use_amnt="" upgrade_cur="1" upgrade_amnt="200" upgrade_fml="a" upgrade_plus="" upgrade_person="" upgrade_coin_once="" upgrade_duration="60" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="2" name="大亨光临" class="1" class_id="3" coin_person="" person="" coin_once="500" diamond_once="" duration="" cd="3600" unlock_lv="100" unlock_ahead_cur="2" unlock_ahead_amt="200" unlock_cur="" unlock_amnt="" unlock_pos="" use__cur="" use_amnt="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="" upgrade_person="" upgrade_coin_once="50" upgrade_duration="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="3" name="花之祝福" class="1" class_id="4" coin_person="5" person="" coin_once="" diamond_once="" duration="300" cd="3600" unlock_lv="300" unlock_ahead_cur="2" unlock_ahead_amt="300" unlock_cur="" unlock_amnt="" unlock_pos="" use__cur="" use_amnt="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="" upgrade_person="" upgrade_coin_once="" upgrade_duration="60" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="4" name="繁花似锦" class="4" class_id="1" coin_person="" person="" coin_once="" diamond_once="" duration="900" cd="900" unlock_lv="100" unlock_ahead_cur="2" unlock_ahead_amt="100" unlock_cur="" unlock_amnt="" unlock_pos="" use__cur="2" use_amnt="150" upgrade_cur="" upgrade_amnt="" upgrade_fml="" upgrade_plus="" upgrade_person="" upgrade_coin_once="" upgrade_duration="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="5" name="免费获取金币" class="3" class_id="0" coin_person="" person="" coin_once="5" diamond_once="" duration="" cd="900" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" use__cur="5" use_amnt="" upgrade_cur="" upgrade_amnt="" upgrade_fml="" upgrade_plus="" upgrade_person="" upgrade_coin_once="" upgrade_duration="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <item id="6" name="免费获取钻石" class="4" class_id="0" coin_person="" person="" coin_once="" diamond_once="10" duration="" cd="900" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" use__cur="5" use_amnt="" upgrade_cur="" upgrade_amnt="" upgrade_fml="" upgrade_plus="" upgrade_person="" upgrade_coin_once="" upgrade_duration="" upgrade_cd="" desc="" icon="" anim="" label="" />
+  <comment>
+    <id>
+id
+</id>
+    <name>
+名称
+</name>
+    <class>
+所属类别
+</class>
+    <class_id>
+所属
+类别序号
+</class_id>
+    <coin_person>
+每人次收入
+基础值
+</coin_person>
+    <person>
+每秒参观数
+基础值
+</person>
+    <coin_once>
+一次获得金币
+</coin_once>
+    <diamond_once>
+一次获得钻石
+</diamond_once>
+    <duration>
+持续时间
+</duration>
+    <cd>
+冷却时间
+</cd>
+    <unlock_lv>
+解锁等级
+</unlock_lv>
+    <unlock_ahead_cur>
+提前解锁
+消耗货币
+</unlock_ahead_cur>
+    <unlock_ahead_amt>
+提前解锁
+消耗数值
+</unlock_ahead_amt>
+    <unlock_cur>
+解锁
+消耗货币
+</unlock_cur>
+    <unlock_amnt>
+解锁
+消耗数值
+</unlock_amnt>
+    <unlock_pos>
+解锁
+开启位置数
+</unlock_pos>
+    <use__cur>
+使用
+消耗货币
+</use__cur>
+    <use_amnt>
+使用
+消耗数值
+</use_amnt>
+    <upgrade_cur>
+升级
+消耗货币
+</upgrade_cur>
+    <upgrade_amnt>
+升级
+消耗基础值
+</upgrade_amnt>
+    <upgrade_fml>
+升级
+消耗公式
+</upgrade_fml>
+    <upgrade_plus>
+升级
+收入加成
+</upgrade_plus>
+    <upgrade_person>
+升级
+参观数加成
+</upgrade_person>
+    <upgrade_coin_once>
+升级
+一次获得金币
+</upgrade_coin_once>
+    <upgrade_duration>
+升级
+持续时间加成
+</upgrade_duration>
+    <upgrade_cd>
+升级
+冷却加成
+</upgrade_cd>
+    <desc>
+描述
+</desc>
+    <icon>
+图标
+</icon>
+    <anim>
+场景物件
+</anim>
+    <label>
+标签
+</label>
+  </comment>
+</data>

+ 8 - 0
Assets/Resources/XML/Config/skill_config.xml.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e2ad3c2808e87e24cb00385dd07a17a0
+timeCreated: 1487574640
+licenseType: Pro
+TextScriptImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 403 - 0
Assets/Script/Editor/EditorConfigExporter.cs

@@ -0,0 +1,403 @@
+using UnityEditor;
+using UnityEngine;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using Excel;
+using System.Data;
+
+using System.Xml;
+
+public class EditorConfigExporter : EditorWindow
+{
+    [MenuItem("DashGame/Design Tools/Export Config")]
+    public static void AddWindow()
+    {
+        Rect wr = new Rect(0, 0, 350, 220);
+        EditorConfigExporter window = (EditorConfigExporter)EditorWindow.GetWindowWithRect(typeof(EditorConfigExporter), wr, false, "Export Config");
+        window.Show();
+
+    }
+
+    public List<string> nameArray = new List<string>();
+
+    private string defaultPath;
+    private bool shouldDelete = true, ignoreSameVersion = true;
+    private bool isSuccess;
+    private string text;
+    private List<string> idArr;
+    private Dictionary<string, string> md5Dict;
+
+    void Awake()
+    {
+        defaultPath = Application.dataPath + @"/XlsxSource";
+        if (!Directory.Exists(defaultPath))
+            Directory.CreateDirectory(defaultPath);
+        GetObjectNameToArray<string>(defaultPath, "xlsx");
+    }
+
+    void OnGUI()
+    {
+        EditorGUI.LabelField(new Rect(90, 50, 200, 16), new GUIContent("导出所有配置文件到xml目录"));
+
+        shouldDelete = EditorGUI.Toggle(new Rect(90, 80, 200, 16), new GUIContent("覆盖已有文件"), shouldDelete);
+
+        ignoreSameVersion = EditorGUI.Toggle(new Rect(90, 100, 200, 16), new GUIContent("忽略相同版本"), ignoreSameVersion);
+
+        EditorGUI.LabelField(new Rect(2, 200, 350, 16), new GUIContent("Chongqing DashGame Tech. Co.,Ltd, gsgundam, v0.1.0"));
+
+        if (GUI.Button(new Rect(50, 135, 250, 40), "立即导出"))
+            CreateAllXml();
+
+    }
+
+    /// <summary>
+    /// Return all files' name in target path in Assets//
+    /// </summary>
+    /// <returns>File name in array</returns>
+    /// <param name="path">Assets sublevel path</param>
+    /// <param name="pattern">File type filter</param>
+    /// <typeparam name="T">Class name</typeparam>
+    void GetObjectNameToArray<T>(string path, string pattern, string subDirectory = "")
+    {
+        try
+        {
+            //return file name by array in target folder & subfolder, it can be null
+            string[] files = Directory.GetFiles(path);
+
+            for (int i = 0; i < files.Length; i++)
+            {
+                string p = files[i];
+
+                //file
+                int index = p.LastIndexOf("\\");
+                string folder = p.Substring(0, index + 1);
+                string fileName = p.Substring(index + 1);
+
+                //if directoryEntries is not null, tempPaths cannot be null after splited
+                if (fileName.EndsWith(".meta"))
+                    continue;
+
+                string[] pathSplit = StringExtention.SplitWithString(fileName, ".");
+
+                if (pathSplit.Length > 1)
+                {
+                    nameArray.Add(subDirectory + "\\" + pathSplit[0]);
+                }
+            }
+
+            //recursion
+            string[] folders = Directory.GetDirectories(path);
+            for (int i = 0; i < folders.Length; i++)
+            {
+                string p = folders[i];
+                GetObjectNameToArray<T>(p, pattern, p.Substring(defaultPath.Length));
+            }
+        }
+        catch (System.IO.DirectoryNotFoundException)
+        {
+            Debug.Log("The path encapsulated in the " + path + "Directory object does not exist.");
+        }
+    }
+
+    /// <summary>
+    /// custom split string function
+    /// </summary>
+    private class StringExtention
+    {
+
+        public static string[] SplitWithString(string sourceString, string splitString)
+        {
+            string tempSourceString = sourceString;
+            List<string> arrayList = new List<string>();
+            string s = string.Empty;
+            while (sourceString.IndexOf(splitString) > -1)  //split
+            {
+                s = sourceString.Substring(0, sourceString.IndexOf(splitString));
+                sourceString = sourceString.Substring(sourceString.IndexOf(splitString) + splitString.Length);
+                arrayList.Add(s);
+            }
+            arrayList.Add(sourceString);
+            return arrayList.ToArray();
+        }
+    }
+
+    private void CreateAllXml()
+    {
+        foreach (string str in nameArray)
+        {
+            Debug.Log(str);
+            if (str.Contains("xlsx_md5") || str.Contains("language"))
+                continue;
+            if (ignoreSameVersion)
+            {
+                GetMd5Xml(str);
+                if (!CheckVersion(str))
+                {
+                    CreateXml(str);
+                }
+            }
+            else
+            {
+                CreateXml(str);
+            }
+        }
+
+        if (isSuccess)
+        {
+            ShowNotification(new GUIContent( "已成功导出!"));
+            DirectoryInfo di = new DirectoryInfo(defaultPath);
+            DirectoryInfo[] diArr = di.GetDirectories();
+            for (int i = 0; i < diArr.Length; i++)
+                CreateMd5XML(diArr[i].ToString() + "/");
+            AssetDatabase.Refresh();
+        }
+        else
+            ShowNotification(new GUIContent("文件有错误!"));
+    }
+
+    private void CreateXml(string fileName)
+    {
+        idArr = new List<string>();
+
+//        string filepath = Application.dataPath + @"/Resources/XML/Config" + fileName + ".xml";
+		string filepath = Application.dataPath + @"/Resources/XML/Config" + fileName + ".xml";
+        text = "";
+
+        filepath = filepath.Replace("\\", "/");
+        string[] pathArr = filepath.Split('/');
+        string tempPath = "";
+        for(int i = 0; i < pathArr.Length; i++)
+        {
+            tempPath += pathArr[i] + "/";
+            if (i > 1 && i < pathArr.Length - 1)
+            {
+                if (!Directory.Exists(tempPath))
+                {
+                    Directory.CreateDirectory(tempPath);
+                }
+            }
+        }
+
+        if ((!File.Exists(filepath) && !shouldDelete) || shouldDelete)
+        {
+            List<string> labels = new List<string>(), comments = new List<string>();
+
+            XmlDocument xmlDoc = new XmlDocument();
+
+            try
+            {
+                FileStream stream = File.Open(Application.dataPath + @"/XlsxSource" + fileName + ".xlsx", FileMode.Open, FileAccess.Read);
+                IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
+
+                text += "\nexcelReader.ResultsCount is" + excelReader.ResultsCount + "\n";
+
+                text += "start excelReader. \n";
+
+                DataSet result = excelReader.AsDataSet();
+
+                text += "get result successful? result[" + result + "]";
+
+                text += "result columns count is " + result.Tables[0].Columns.Count;
+
+                int columns = result.Tables[0].Columns.Count;
+                int rows = result.Tables[0].Rows.Count;
+
+                //start create xml
+                XmlElement root = xmlDoc.CreateElement("data");
+                XmlElement comment = xmlDoc.CreateElement("comment");
+                for (int i = 0; i < rows; i++)
+                {
+                    XmlElement item = xmlDoc.CreateElement("item");
+                    if (i == 0)
+                    {
+                        continue;
+                    }
+
+                    for (int j = 0; j < columns; j++)
+                    {
+                        string nvalue = result.Tables[0].Rows[i][j].ToString();
+
+                        if (i == 1)
+                        {
+                            if (nvalue != null && nvalue != "")
+                                labels.Add(nvalue);
+                        }
+                        else if (i == 2)
+                        {
+                            if (j < labels.Count)
+                            {
+                                XmlElement commentItem = xmlDoc.CreateElement(labels[j]);
+                                commentItem.InnerText = "\n" + nvalue + "\n";
+                                comment.AppendChild(commentItem);
+                            }
+                        }
+                        else if (j < labels.Count)
+                        {
+                            if (fileName.Contains("shop_config"))
+                                nvalue = nvalue.Replace("\n", "");
+                            item.SetAttribute(labels[j], nvalue);
+
+                            if(j == 0 && !StringUtil.Empty(nvalue))
+                            {
+                                //check duplicate
+                                CheckDuplicate(fileName, nvalue);
+                                idArr.Add(nvalue);
+                            }
+
+                            //Debug.Log("labels[j] is " + labels[j] + ", nvalue is " + nvalue);
+                        }
+                        //Debug.Log(nvalue);
+                    }
+
+                    if (i > 2 && item.GetAttribute("id") != "")
+                    {
+                        root.AppendChild(item);
+                    }
+
+                }
+
+                root.AppendChild(comment);
+                xmlDoc.AppendChild(root);
+				xmlDoc.Save(filepath);
+				AssetDatabase.Refresh(ImportAssetOptions.ForceUpdate);
+//				AssetDatabase.ImportAsset(@"Assets/Resources/XML/Config" + fileName + ".xml", ImportAssetOptions.ForceUpdate);
+                //Debug.Log(fileName + ".xml is saved to " + filepath + ", count is " + idArr.Count);
+
+                isSuccess = true;
+            }
+            catch (Exception e)
+            {
+                text += "Exception " + e.Message;
+                Debug.Log("Exception " + e.Message);
+            }
+        }
+    }
+
+    private void CheckDuplicate(string fileName, string id)
+    {
+        if (idArr.Count < 1)
+            return;
+
+        for (int i = 0; i < idArr.Count; i++)
+        {
+            if (idArr[i] == id)
+                Debug.LogError(id + " in " + fileName + " is a duplicate id.");
+        }
+    }
+
+    private void HideNotification()
+    {
+        this.RemoveNotification();
+    }
+
+    private void CreateMd5XML(string sourcePath)
+    {
+        DirectoryInfo directoryInfo = new DirectoryInfo(sourcePath);
+        List<string> pathList = DGFileUtil.GetAllFiles(directoryInfo, ".meta");
+        XmlDocument xml = CreateMd5XmlDocument(pathList, sourcePath, null, null);
+        string xmlSavePath = sourcePath + "xlsx_md5.xml";
+        xml.Save(xmlSavePath);
+        Debug.Log("Create xlsx xml : " + xmlSavePath);
+
+        AssetDatabase.Refresh(ImportAssetOptions.ForceUpdate);
+    }
+
+
+    private XmlDocument CreateMd5XmlDocument(List<string> pathList, string pathRoot, List<string> exceptList, string exceptRoot)
+    {
+        XmlDocument xml = new XmlDocument();
+
+        XmlElement root = xml.CreateElement("xlsx");
+        xml.AppendChild(root);
+
+        for (int i = 0; i < pathList.Count; i++)
+        {
+            string assetPath = pathList[i];
+            string md5 = MD5Util.GetFileHash(assetPath);
+            string p = assetPath.Substring(pathRoot.Length);
+
+            pathList[i] = p;
+
+            XmlElement e = xml.CreateElement("a");
+            XmlAttribute attr = xml.CreateAttribute("p");
+            attr.Value = p;
+            e.Attributes.Append(attr);
+
+            attr = xml.CreateAttribute("m");
+            attr.Value = md5;
+            e.Attributes.Append(attr);
+
+            root.AppendChild(e);
+        }
+        return xml;
+    }
+
+    private bool CheckVersion(string fileName)
+    {
+        if (md5Dict == null || md5Dict.Count < 1)
+            return false;
+        else
+        {
+            string[] pathArr = StringExtention.SplitWithString(fileName, "\\");
+            if (pathArr.Length < 3)
+                return false;
+            string str = pathArr[2] + ".xlsx";
+            string md5 = MD5Util.GetFileHash(defaultPath + fileName + ".xlsx");
+            if (md5Dict.ContainsKey(str) && md5Dict[str] == md5)
+            {
+                Debug.Log(pathArr[2] + ".xlsx" + " has same version, ignored");
+                return true;
+            }
+            else
+            {
+                if(md5Dict.ContainsKey(str))
+                    Debug.Log(fileName + ": [xml]" + md5Dict[str] + ", [xlsx]" + md5);
+                else
+                    Debug.Log(fileName + "is new xlsx file, [xlsx]" + md5);
+            }
+
+            return false;
+        }
+    }
+
+    private void GetMd5Xml(string fileName)
+    {
+        string[] pathArr = StringExtention.SplitWithString(fileName, "\\");
+        string parent = pathArr[1];
+        string xmlPath = defaultPath + "/" + parent + "/xlsx_md5.xml";
+        if (!File.Exists(xmlPath))
+        {
+            return;
+        }
+
+        StreamReader sr = File.OpenText(xmlPath);
+        string data = sr.ReadToEnd();
+        sr.Close();
+        sr.Dispose();
+
+        XmlDocument xml = new XmlDocument();
+        xml.LoadXml(data);
+        md5Dict = new Dictionary<string, string>();
+        XmlNode mapNode = xml.SelectSingleNode("xlsx");
+        XmlNodeList nodeList = mapNode.SelectNodes("a");
+        for (int i = 0; i < nodeList.Count; i++)
+        {
+            XmlNode node = nodeList[i];
+            string path = node.Attributes["p"].Value;
+            string md5 = node.Attributes["m"].Value;
+            md5Dict.Add(path, md5);
+        }
+    }
+
+    void OnInspectorUpdate()
+    {
+        this.Repaint();
+    }
+
+    void OnDestory()
+    {
+        EditorUtility.UnloadUnusedAssetsImmediate();
+    }
+
+}

+ 12 - 0
Assets/Script/Editor/EditorConfigExporter.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 984b7973bc7f8304ab2000082d640380
+timeCreated: 1487574092
+licenseType: Pro
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 9 - 0
Assets/Script/Utils.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 6a269fb17ce25b94ebbae0562f492919
+folderAsset: yes
+timeCreated: 1487574459
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 96 - 0
Assets/Script/Utils/DGFileUtil.cs

@@ -0,0 +1,96 @@
+using UnityEngine;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+
+public class DGFileUtil
+{
+
+	public static List<string> GetAllFiles(DirectoryInfo dir, string except=null)
+	{
+		List<string> fileList = new List<string>();
+		if(!Directory.Exists(dir.FullName) && !File.Exists(dir.FullName))
+		{
+			Debug.LogError("Directory not exists : "+dir.FullName);
+			return fileList;
+		}
+		
+		FileInfo[] allFile = dir.GetFiles();
+		for(int i=0; i<allFile.Length; i++)
+		{
+			FileInfo fi = allFile[i];
+			if(except != null && fi.Name.IndexOf(except) != -1)
+			{
+				continue;
+			}
+			fileList.Add(fi.FullName);
+		}
+		
+		DirectoryInfo[] allDir= dir.GetDirectories();
+		foreach (DirectoryInfo d in allDir)
+		{
+			if(d.FullName == dir.FullName)
+			{
+				continue;
+			}
+			fileList.AddRange(GetAllFiles(d, except));
+		}
+		return fileList;
+	}
+
+	public static List<string> GetChildrenDirectory(DirectoryInfo dir)
+	{
+		List<string> fileList = new List<string>();
+		if(!Directory.Exists(dir.FullName) && !File.Exists(dir.FullName))
+		{
+			Debug.LogError("Directory not exists : "+dir.FullName);
+			return fileList;
+		}
+		
+		DirectoryInfo[] allDir= dir.GetDirectories();
+		foreach (DirectoryInfo d in allDir)
+		{
+			if(d.FullName == dir.FullName)
+			{
+				continue;
+			}
+			fileList.Add(d.FullName);
+		}
+		return fileList;
+	}
+
+	public static void CreateDirectoryWhenNotExists(string destination)
+	{
+		destination = destination.Replace("\\", "/");
+		string dir = destination.Substring(0, destination.LastIndexOf("/"));
+		if(!Directory.Exists(dir))
+		{
+			Directory.CreateDirectory(dir);
+		}
+	}
+
+	public static void CopyFile(string source, string destination)
+	{
+		CreateDirectoryWhenNotExists(destination);
+		File.Copy(source, destination);
+	}
+
+	public static void CopyFileOrDirectory(string source, string destination, string except=null)
+	{
+		List<string> list = DGFileUtil.GetAllFiles(new DirectoryInfo(source), except);
+		for(int i=0; i<list.Count; i++)
+		{
+			string path = list[i];
+			string destPath = destination + path.Substring(source.Length);
+			DGFileUtil.CopyFile(path, destPath);
+		}
+	}
+
+
+	public static string GetFileNameByPath(string path)
+	{
+		path = path.Replace("\\", "/");
+		return path.Substring(path.LastIndexOf("/")+1);
+	}
+}
+

+ 12 - 0
Assets/Script/Utils/DGFileUtil.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: f771c79b937373246873f7ced81f6edb
+timeCreated: 1487574476
+licenseType: Pro
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 41 - 0
Assets/Script/Utils/JsonUtil.cs

@@ -0,0 +1,41 @@
+using UnityEngine;
+using System.Collections;
+using LitJson;
+
+public class JsonUtil
+{
+
+	public static bool ContainKey(JsonData data, string key)
+	{
+		if(data == null || data.Inst_Object == null)
+			return false;
+		return data.Inst_Object.ContainsKey(key);
+	}
+
+	public static int ToInt(JsonData data)
+	{
+		if(data.IsString)
+		{
+			return StringUtil.ToInt((string)data);
+		}
+		else if(data.IsInt)
+		{
+			return (int)data;
+		}
+		return 0;
+	}
+
+	public static bool ToBool(JsonData data)
+	{
+		if(data.IsString)
+		{
+			return StringUtil.ToBool((string)data);
+		}
+		else if(data.IsBoolean)
+		{
+			return (bool)data;
+		}
+		return false;
+	}
+}
+

+ 12 - 0
Assets/Script/Utils/JsonUtil.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 80efd1d8a30f5244e94cbb802ae7ee87
+timeCreated: 1487574475
+licenseType: Pro
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 79 - 0
Assets/Script/Utils/MD5Util.cs

@@ -0,0 +1,79 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     此代码由工具生成。
+//     运行时版本:4.0.30319.1
+//
+//     对此文件的更改可能会导致不正确的行为,并且如果
+//     重新生成代码,这些更改将会丢失。
+// </auto-generated>
+//------------------------------------------------------------------------------
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.Security.Cryptography;
+using System.IO;
+
+public class MD5Util
+{
+	public static string Encrypt(string input)
+	{
+		MD5 md5 = MD5.Create(); 
+		byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(input); 
+		byte[] hash = md5.ComputeHash(inputBytes); 
+		StringBuilder sb = new StringBuilder(); 
+		for (int i = 0; i < hash.Length; i++) 
+		{
+			sb.Append(hash[i].ToString("x2"));//x2 lowercase, X2 uppercase
+		}
+		return sb.ToString();
+	}
+
+
+	public static string GetFileHash(string filePath)
+	{           
+		try
+		{
+			FileStream fs = File.Open(filePath, FileMode.Open);
+			int len = (int)fs.Length;
+			byte[] data = new byte[len];
+			fs.Read(data, 0, len);
+			fs.Close();
+			fs.Dispose();
+			MD5 md5 = new MD5CryptoServiceProvider();
+			byte[] result = md5.ComputeHash(data);
+			string fileMD5 = "";
+			foreach (byte b in result)
+			{
+				fileMD5 += Convert.ToString(b, 16);
+			}
+			return fileMD5;
+		}
+		catch (Exception e)
+		{
+			Debuger.LogException(e);
+			return "";
+		}
+	}
+
+	public static string GetFileHash(byte[] data)
+	{           
+		try
+		{
+			MD5 md5 = new MD5CryptoServiceProvider();
+			byte[] result = md5.ComputeHash(data);
+			string fileMD5 = "";
+			foreach (byte b in result)
+			{
+				fileMD5 += Convert.ToString(b, 16);
+			}
+			return fileMD5;
+		}
+		catch (Exception e)
+		{
+			Debuger.LogException(e);
+			return "";
+		}
+	}
+
+}
+

+ 12 - 0
Assets/Script/Utils/MD5Util.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: dd27ca4f3d21c82479f18084df9264a2
+timeCreated: 1487574476
+licenseType: Pro
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 160 - 0
Assets/Script/Utils/NumberUtil.cs

@@ -0,0 +1,160 @@
+using System;
+using UnityEngine;
+using System.Collections;
+using System.Collections.Generic;
+
+public class NumberUtil
+{
+
+	public static float angleToRadian(float angle)
+	{
+		return angle/180*Mathf.PI;
+	}
+	
+	public static float radianToAngle(float radian)
+	{
+		return radian/Mathf.PI*180;
+	}
+
+	public static float getRadianByATan(float targetX, float targetY, float originX, float originY)
+	{
+		float dx = targetX-originX;
+		float dy = targetY-originY;
+		return Mathf.Atan2(dy, dx);
+	}
+
+	public static float forceBetween(float origin, float min, float max)
+	{
+		if(origin < min) return min;
+		if(origin > max) return max;
+		return origin;
+	}
+
+	public static int forceBetween(int origin, int min, int max)
+	{
+		if(origin < min) return min;
+		if(origin > max) return max;
+		return origin;
+	}
+	
+	public static float getCloseToTargetAngle(float origin, float target, float step)
+	{
+		origin = corverAngleBetween(origin, -180f, 180f);
+		target = corverAngleBetween(target, -180f, 180f);
+		float deltaAngle = Mathf.Abs(target - origin);
+		if(deltaAngle<=step || deltaAngle >= (360f-step))
+		{
+			origin = target;
+		}
+		else if(target > origin)
+		{
+			if(target-origin > 180f)
+			{
+				origin -= step;
+			}
+			else
+			{
+				origin += step;
+			}
+		}
+		else
+		{
+			if(origin-target > 180f)
+			{
+				origin += step;
+			}
+			else
+			{
+				origin -= step;
+			}
+		}
+		return origin;
+	}
+
+	public static float corverAngleBetween(float angle, float min, float max)
+	{
+		if(angle < min)
+		{
+			while(angle < min)
+			{
+				angle += 360f;
+			}
+		}
+		else if(angle > max)
+		{
+			while(angle > max)
+			{
+				angle -= 360f;
+			}
+		}
+		return angle;
+	}
+
+	public static float distanceVector2(Vector2 origin, Vector2 target)
+	{
+		return Vector2.Distance(origin, target);
+	}
+
+	public static float distanceVector3(Vector3 origin, Vector3 target, bool ignoreY=false)
+	{
+		if(ignoreY)
+			origin.y = target.y = 0;
+		return Vector3.Distance(origin, target);
+	}
+
+	public static string getTimeString(float seconds, bool enableHour=true)
+	{
+		bool isNegative = false;
+		if(seconds < 0)
+		{
+			isNegative = true;
+			seconds = -seconds;
+		}
+
+		int sec = (int)seconds;
+
+		int h = enableHour?sec/(60*60):0;
+		int tempSec = enableHour?sec%(60*60):sec;
+		int m = tempSec/60;
+		tempSec = tempSec%60;
+		int s = tempSec;
+
+		string hStr = enableHour?("00"+h):"";
+		string mStr = "00"+m;
+		string sStr = "00"+s;
+
+		string str = "";
+		if(enableHour)
+			str = hStr.Substring(hStr.Length-2, 2)+":"+mStr.Substring(mStr.Length-2, 2)+":"+sStr.Substring(sStr.Length-2, 2);
+		else
+			str = mStr.Substring(mStr.Length-2, 2)+":"+sStr.Substring(sStr.Length-2, 2);
+
+		if(isNegative)
+			str = "-"+str;
+		return str;
+	}
+
+
+	public static string GetPercentText(double value, int digits)
+	{
+		string str = Math.Round((double)(value * 100), digits).ToString();
+		return str + "%";
+	}
+
+	public static string AddThousandSplit(int value)
+	{
+		List<string> list = new List<string>();
+		do{
+			int num = value%1000;
+			value = value/1000;
+			if(value > 0)
+				list.Insert(0, StringUtil.FillZero(num, 3));
+			else
+				list.Insert(0, num.ToString());
+		}
+		while(value != 0);
+
+		return StringUtil.Join(list, " ");
+	}
+}
+

+ 12 - 0
Assets/Script/Utils/NumberUtil.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: b83d5e2bf1529824dae88f2f7c6ab4c4
+timeCreated: 1487574475
+licenseType: Pro
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 110 - 0
Assets/Script/Utils/StringUtil.cs

@@ -0,0 +1,110 @@
+using UnityEngine;
+using System.Collections;
+using System.Collections.Generic;
+
+public class StringUtil
+{
+	public static string[] Split(string str, char c)
+	{
+		if(Empty(str))
+			return new string[0];
+
+		return str.Split(new char[]{c});
+	}
+
+	public static int[] SplitToInt(string str, char c)
+	{
+		if(Empty(str))
+			return new int[0];
+
+		string[] strArr = Split(str, c);
+		int[] intArr = new int[strArr.Length];
+		for(int i=0; i<strArr.Length; i++)
+		{
+			intArr[i] = ToInt(strArr[i]);
+		}
+		return intArr;
+	}
+
+	public static float[] SplitToFloat(string str, char c)
+	{
+		if(Empty(str))
+			return new float[0];
+
+		string[] strArr = Split(str, c);
+		float[] floatArr = new float[strArr.Length];
+		for(int i=0; i<strArr.Length; i++)
+		{
+			floatArr[i] = ToFloat(strArr[i]);
+		}
+		return floatArr;
+	}
+
+	public static bool Empty(string str)
+	{
+		return str == null || str == "";
+	}
+
+	public static string FillZero(string str, int count)
+	{
+		str = "0000000000000000"+str;
+		str = str.Substring(str.Length-count, count);
+		return str;
+	}
+
+	public static string FillZero(int value, int count)
+	{
+		return FillZero(value.ToString(), count);
+	}
+
+	public static int ToInt(string str)
+	{
+		if(StringUtil.Empty(str))
+		{
+			return 0;
+		}
+		return int.Parse(str);
+	}
+
+	public static float ToFloat(string str)
+	{
+		if(StringUtil.Empty(str))
+		{
+			return 0;
+		}
+		return float.Parse(str);
+	}
+
+	public static bool ToBool(string str)
+	{
+		str = str.ToLower();
+		if(str == "true")
+		{
+			return true;
+		}
+		else if(str == "false")
+		{
+			return false;
+		}
+
+		int value = ToInt(str);
+		if(value > 0)
+			return true;
+		return false;
+	}
+
+
+	public static string Join(List<string> list, string separator)
+	{
+		string str = "";
+		for (int i = 0; i < list.Count; i++)
+		{
+			str += list[i];
+			if (i < list.Count - 1)
+				str += separator;
+		}
+		return str;
+	}
+}
+
+

+ 12 - 0
Assets/Script/Utils/StringUtil.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 33ce514cb9d3a924192a7b3d1c1fab09
+timeCreated: 1487574475
+licenseType: Pro
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 9 - 0
Assets/XlsxSource.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c74a415accd6fd04c9a810aa2d56bfdb
+folderAsset: yes
+timeCreated: 1487574147
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/XlsxSource/ability_config.xlsx


+ 8 - 0
Assets/XlsxSource/ability_config.xlsx.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: d43b8022b825b36488364746337c4f3f
+timeCreated: 1487574297
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/XlsxSource/flower_config.xlsx


+ 8 - 0
Assets/XlsxSource/flower_config.xlsx.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 39ca717b185476d4b93e7350767ef009
+timeCreated: 1487574297
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/XlsxSource/pack_config.xlsx


+ 8 - 0
Assets/XlsxSource/pack_config.xlsx.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: bc8c01859f7133242a347a95d585169e
+timeCreated: 1487574297
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Assets/XlsxSource/skill_config.xlsx


+ 8 - 0
Assets/XlsxSource/skill_config.xlsx.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: d4c84899ba660bc4d96f6cb5880fa6af
+timeCreated: 1487574297
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
Library/CurrentLayout.dwlt


BIN
Library/CurrentMaximizeLayout.dwlt


BIN
Library/ScriptAssemblies/Assembly-CSharp-Editor.dll


BIN
Library/ScriptAssemblies/Assembly-CSharp-Editor.dll.mdb


BIN
Library/ScriptAssemblies/Assembly-CSharp.dll


BIN
Library/ScriptAssemblies/Assembly-CSharp.dll.mdb


BIN
Library/UnityAssemblies/SyntaxTree.VisualStudio.Unity.Bridge.dll


BIN
Library/UnityAssemblies/UnityEditor.Advertisements.dll


BIN
Library/UnityAssemblies/UnityEditor.Analytics.dll


BIN
Library/UnityAssemblies/UnityEditor.Android.Extensions.dll


BIN
Library/UnityAssemblies/UnityEditor.EditorTestsRunner.dll


BIN
Library/UnityAssemblies/UnityEditor.Graphs.dll


BIN
Library/UnityAssemblies/UnityEditor.HoloLens.dll


BIN
Library/UnityAssemblies/UnityEditor.Networking.dll


BIN
Library/UnityAssemblies/UnityEditor.PlaymodeTestsRunner.dll


BIN
Library/UnityAssemblies/UnityEditor.TreeEditor.dll


BIN
Library/UnityAssemblies/UnityEditor.UI.dll


BIN
Library/UnityAssemblies/UnityEditor.VR.dll


BIN
Library/UnityAssemblies/UnityEditor.WebGL.Extensions.dll


BIN
Library/UnityAssemblies/UnityEditor.WindowsStandalone.Extensions.dll


BIN
Library/UnityAssemblies/UnityEditor.iOS.Extensions.Common.dll


BIN
Library/UnityAssemblies/UnityEditor.iOS.Extensions.Xcode.dll


+ 30 - 26
Library/UnityAssemblies/version.txt

@@ -1,28 +1,32 @@
-5.5.0f3:2.8.2.0
+5.5.0f3:2.8.0.0
 StandaloneWindows
-F:/Unity5.5.0f3/Editor/Data/Managed/UnityEngine.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/GUISystem/UnityEngine.UI.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/Networking/UnityEngine.Networking.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/PlaymodeTestsRunner/UnityEngine.PlaymodeTestsRunner.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/UnityAnalytics/UnityEngine.Analytics.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/UnityHoloLens/RuntimeEditor/UnityEngine.HoloLens.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/UnityVR/RuntimeEditor/UnityEngine.VR.dll
-F:/Unity5.5.0f3/Editor/Data/Managed/UnityEditor.dll
-F:/Unity5.5.0f3/Editor/Data/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.Xcode.dll
-F:/Unity5.5.0f3/Editor/Data/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.Common.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/Advertisements/Editor/UnityEditor.Advertisements.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/EditorTestsRunner/Editor/nunit.framework.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/EditorTestsRunner/Editor/UnityEditor.EditorTestsRunner.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/GUISystem/Editor/UnityEditor.UI.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/Networking/Editor/UnityEditor.Networking.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/PlaymodeTestsRunner/Editor/UnityEditor.PlaymodeTestsRunner.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/TreeEditor/Editor/UnityEditor.TreeEditor.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/UnityAnalytics/Editor/UnityEditor.Analytics.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/UnityHoloLens/Editor/UnityEditor.HoloLens.dll
-F:/Unity5.5.0f3/Editor/Data/UnityExtensions/Unity/UnityVR/Editor/UnityEditor.VR.dll
-F:/Unity5.5.0f3/Editor/Data/Managed/UnityEditor.Graphs.dll
-F:/Unity5.5.0f3/Editor/Data/PlaybackEngines/AndroidPlayer/UnityEditor.Android.Extensions.dll
-F:/Unity5.5.0f3/Editor/Data/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.dll
-F:/Unity5.5.0f3/Editor/Data/PlaybackEngines/WebGLSupport/UnityEditor.WebGL.Extensions.dll
-F:/Unity5.5.0f3/Editor/Data/PlaybackEngines/windowsstandalonesupport/UnityEditor.WindowsStandalone.Extensions.dll
+C:/Program Files/Unity/Editor/Data/Managed/UnityEngine.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/GUISystem/UnityEngine.UI.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/Networking/UnityEngine.Networking.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/PlaymodeTestsRunner/UnityEngine.PlaymodeTestsRunner.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/UnityAnalytics/UnityEngine.Analytics.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/UnityHoloLens/RuntimeEditor/UnityEngine.HoloLens.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/UnityVR/RuntimeEditor/UnityEngine.VR.dll
+C:/Program Files/Unity/Editor/Data/Managed/UnityEditor.dll
+C:/Program Files/Unity/Editor/Data/Managed/Mono.Cecil.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/AppleTVSupport/UnityEditor.iOS.Extensions.Xcode.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.Xcode.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.Common.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/Advertisements/Editor/UnityEditor.Advertisements.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/EditorTestsRunner/Editor/nunit.framework.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/EditorTestsRunner/Editor/UnityEditor.EditorTestsRunner.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/GUISystem/Editor/UnityEditor.UI.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/Networking/Editor/UnityEditor.Networking.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/PlaymodeTestsRunner/Editor/UnityEditor.PlaymodeTestsRunner.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/TreeEditor/Editor/UnityEditor.TreeEditor.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/UnityAnalytics/Editor/UnityEditor.Analytics.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/UnityHoloLens/Editor/UnityEditor.HoloLens.dll
+C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/UnityVR/Editor/UnityEditor.VR.dll
+C:/Program Files/Unity/Editor/Data/Managed/UnityEditor.Graphs.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/AndroidPlayer/UnityEditor.Android.Extensions.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/AppleTVSupport/UnityEditor.AppleTV.Extensions.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/MetroSupport/UnityEditor.WSA.Extensions.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/WebGLSupport/UnityEditor.WebGL.Extensions.dll
+C:/Program Files/Unity/Editor/Data/PlaybackEngines/windowsstandalonesupport/UnityEditor.WindowsStandalone.Extensions.dll
 C:/Program Files (x86)/Microsoft Visual Studio Tools for Unity/2015/Editor/SyntaxTree.VisualStudio.Unity.Bridge.dll

BIN
Library/assetDatabase3


BIN
Library/expandedItems


BIN
Library/metadata/00/00000000000000002000000000000000


BIN
Library/metadata/00/00000000000000003000000000000000


BIN
Library/metadata/00/00000000000000004000000000000000


BIN
Library/metadata/00/00000000000000004100000000000000


BIN
Library/metadata/00/00000000000000005000000000000000


BIN
Library/metadata/00/00000000000000005100000000000000


BIN
Library/metadata/00/00000000000000006000000000000000


BIN
Library/metadata/00/00000000000000006100000000000000


BIN
Library/metadata/00/00000000000000007000000000000000


BIN
Library/metadata/00/00000000000000007100000000000000


BIN
Library/metadata/00/00000000000000008000000000000000


BIN
Library/metadata/00/00000000000000009000000000000000


BIN
Library/metadata/00/0000000000000000a000000000000000


BIN
Library/metadata/00/0000000000000000a100000000000000


BIN
Library/metadata/00/0000000000000000b000000000000000


BIN
Library/metadata/00/0000000000000000c000000000000000


BIN
Library/metadata/06/06892e67e81ef9742a9a2846b54363ab


BIN
Library/metadata/06/06892e67e81ef9742a9a2846b54363ab.info


BIN
Library/metadata/0d/0d3bb855445e36e479c85976fc88383a


BIN
Library/metadata/12/12fd8a0055b84bb59e84c9835a37e333


BIN
Library/metadata/17/17910131ed5b5ca4db56342fb7df41a4


BIN
Library/metadata/18/18dbc98b4def64543ae0446a3e9161dd.info


BIN
Library/metadata/1c/1c6d1fbb51834b64847b1b73a75bfc77


BIN
Library/metadata/20/208285e407aecc040abae18a57915b26.info


BIN
Library/metadata/21/2142878b27d222a41b430f27cbf7f4be


BIN
Library/metadata/21/2142878b27d222a41b430f27cbf7f4be.info


BIN
Library/metadata/21/21eff446d50eaf44a85985cd4c0b6fa1


BIN
Library/metadata/22/224c92a9460ab28458454690ed628ff5


BIN
Library/metadata/22/224c92a9460ab28458454690ed628ff5.info


BIN
Library/metadata/22/2281497cc8538ec46aa8e611d10bf5b1


Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác