瀏覽代碼

Merge branch 'master' of http://fort23.cn:3000/ck/XiuXianGame

# Conflicts:
#	Assets/Scripts/GameUI/GameApplction.cs
#	XiuXianGame.sln.DotSettings.user   resolved by master version
DESKTOP-BGJIU14\ck 9 小時之前
父節點
當前提交
41059b1187
共有 83 個文件被更改,包括 2996 次插入3449 次删除
  1. 9 0
      Assets/Art/Environment/cj01.prefab
  2. 1 1
      Assets/Art/UIAssets/bg/bg_dongfu2.png.meta
  3. 1 1
      Assets/Art/VFX/Materials/UIMat/ui_ob_yindao_glow_add.mat
  4. 1 1
      Assets/Art/VFX/Materials/UIMat/ui_ob_yindao_quan.mat
  5. 1 0
      Assets/Obfuz/SymbolObfus/symbol-mapping.xml
  6. 二進制
      Assets/Plugins/Android/SaaS_TalkingDataSDK_Android_V5.0.35.jar
  7. 0 37
      Assets/Plugins/Android/SaaS_TalkingDataSDK_Android_V5.0.35.jar.meta
  8. 0 371
      Assets/Plugins/iOS/TalkingDataSDK.h
  9. 0 33
      Assets/Plugins/iOS/TalkingDataSDK.h.meta
  10. 二進制
      Assets/Plugins/iOS/libTalkingDataSDK.a
  11. 0 33
      Assets/Plugins/iOS/libTalkingDataSDK.a.meta
  12. 8 8
      Assets/Res/Config/DropGroupConfig.json
  13. 1 1
      Assets/Res/UI/BoxPanel/GachaPanel.prefab
  14. 2 2
      Assets/Res/UI/Canvas/Canvas.prefab
  15. 1 1
      Assets/Res/UI/DaoYouPanel/DaoYouInfoPanel.prefab
  16. 2 2
      Assets/Res/UI/LoadingPanel.prefab
  17. 373 0
      Assets/Res/UI/LoginMainPanel.prefab
  18. 7 0
      Assets/Res/UI/LoginMainPanel.prefab.meta
  19. 53 0
      Assets/Res/UI/LoginPanel.prefab
  20. 7 0
      Assets/Res/UI/LoginPanel.prefab.meta
  21. 972 44
      Assets/Res/UI/SettingPanel/SettingPanel.prefab
  22. 826 0
      Assets/Res/UI/SettingPanel/UploadLogPanel.prefab
  23. 7 0
      Assets/Res/UI/SettingPanel/UploadLogPanel.prefab.meta
  24. 1 1
      Assets/Resources/bg_zairu.png.meta
  25. 2 2
      Assets/Scripts/Core/Utility/Helper/TimeHelper.cs
  26. 2 1
      Assets/Scripts/GameLogic/Bag/BagController.cs
  27. 20 0
      Assets/Scripts/GameLogic/Player/AccountFileInfo.cs
  28. 0 12
      Assets/Scripts/GameLogic/Player/PlayerData.cs
  29. 1 0
      Assets/Scripts/GameLogic/Player/PlayerManager.cs
  30. 11 2
      Assets/Scripts/GameLogic/SDK/DBManager.cs
  31. 0 104
      Assets/Scripts/GameLogic/SDK/TalkingDataManager.cs
  32. 15 4
      Assets/Scripts/GameUI/EventManager/DialogueManager.cs
  33. 91 0
      Assets/Scripts/GameUI/FTPManager.cs
  34. 1 1
      Assets/Scripts/GameUI/FTPManager.cs.meta
  35. 23 25
      Assets/Scripts/GameUI/GameApplction.cs
  36. 16 2
      Assets/Scripts/GameUI/UI/BoxPanel/BoxPanel.cs
  37. 4 0
      Assets/Scripts/GameUI/UI/GuidePanel/PlayerGuideManager.cs
  38. 26 1
      Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroBreakthroughPanel.cs
  39. 20 16
      Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroInformationPanel.cs
  40. 8 0
      Assets/Scripts/GameUI/UI/LoginPanel.meta
  41. 41 0
      Assets/Scripts/GameUI/UI/LoginPanel/LoginMainPanel.cs
  42. 1 1
      Assets/Scripts/GameUI/UI/LoginPanel/LoginMainPanel.cs.meta
  43. 29 0
      Assets/Scripts/GameUI/UI/LoginPanel/LoginMainPanelData.cs
  44. 1 1
      Assets/Scripts/GameUI/UI/LoginPanel/LoginMainPanelData.cs.meta
  45. 43 0
      Assets/Scripts/GameUI/UI/LoginPanel/LoginPanel.cs
  46. 1 1
      Assets/Scripts/GameUI/UI/LoginPanel/LoginPanel.cs.meta
  47. 18 0
      Assets/Scripts/GameUI/UI/LoginPanel/LoginPanelData.cs
  48. 11 0
      Assets/Scripts/GameUI/UI/LoginPanel/LoginPanelData.cs.meta
  49. 16 2
      Assets/Scripts/GameUI/UI/SettingPanel/SettingPanel.cs
  50. 44 0
      Assets/Scripts/GameUI/UI/SettingPanel/SettingPanelData.cs
  51. 48 0
      Assets/Scripts/GameUI/UI/SettingPanel/UploadLogPanel.cs
  52. 11 0
      Assets/Scripts/GameUI/UI/SettingPanel/UploadLogPanel.cs.meta
  53. 62 0
      Assets/Scripts/GameUI/UI/SettingPanel/UploadLogPanelData.cs
  54. 11 0
      Assets/Scripts/GameUI/UI/SettingPanel/UploadLogPanelData.cs.meta
  55. 2 2
      Assets/Scripts/GameUI/UI/TipMessagePanel/TipMessagePanel.cs
  56. 31 26
      Assets/Scripts/ThirdParty/Crasheye/Crasheye.cs
  57. 2 1
      Assets/Scripts/ThirdParty/Crasheye/CrasheyeForUnityLib.asmdef
  58. 0 400
      Assets/Scripts/ThirdParty/TalkingDataScripts/TDDemoScript.cs
  59. 0 71
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataOrder.cs
  60. 0 468
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataProfile.cs
  61. 0 11
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataProfile.cs.meta
  62. 0 1066
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSDK.cs
  63. 0 11
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSDK.cs.meta
  64. 0 80
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSDKConfig.cs
  65. 0 11
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSDKConfig.cs.meta
  66. 0 210
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSearch.cs
  67. 0 11
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSearch.cs.meta
  68. 0 63
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataShoppingCart.cs
  69. 0 11
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataShoppingCart.cs.meta
  70. 0 220
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataTransaction.cs
  71. 0 11
      Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataTransaction.cs.meta
  72. 11 0
      Assets/Settings/rpAsset.asset
  73. 二進制
      Excel2Json/Excel/ChouKa.xlsx
  74. 二進制
      Excel2Json/Excel/Language.xlsx
  75. 二進制
      Excel2Json/Excel/修仙游戏数据规划表.xlsx
  76. 7 0
      Packages/com.singularitygroup.hotreload/.gitignore
  77. 1 8
      Packages/com.singularitygroup.hotreload/Editor/Window/GUI/Tabs/HotReloadRunTab.cs
  78. 2 2
      Packages/com.singularitygroup.hotreload/Runtime/PackageConst.cs
  79. 1 1
      Packages/com.singularitygroup.hotreload/package.json
  80. 5 5
      Packages/manifest.json
  81. 49 46
      Packages/packages-lock.json
  82. 3 3
      ProjectSettings/ProjectVersion.txt
  83. 32 0
      ProjectSettings/ThreadInfoSettings.asset

+ 9 - 0
Assets/Art/Environment/cj01.prefab

@@ -63,6 +63,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 4294967295
   m_RendererPriority: 0
   m_Materials:
@@ -184,6 +185,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -271,6 +273,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -391,6 +394,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -478,6 +482,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -565,6 +570,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -644,6 +650,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -739,6 +746,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
@@ -835,6 +843,7 @@ MeshRenderer:
   m_virtualGeometry: 0
   m_virtualGeometryShadow: 0
   m_ShadingRate: 0
+  m_ForceDisableGRD: 0
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:

+ 1 - 1
Assets/Art/UIAssets/bg/bg_dongfu2.png.meta

@@ -128,7 +128,7 @@ TextureImporter:
     forceMaximumCompressionQuality_BC6H_BC7: 0
   - serializedVersion: 3
     buildTarget: Android
-    maxTextureSize: 1024
+    maxTextureSize: 2048
     maxPlaceholderSize: 32
     resizeAlgorithm: 0
     textureFormat: 50

+ 1 - 1
Assets/Art/VFX/Materials/UIMat/ui_ob_yindao_glow_add.mat

@@ -57,7 +57,7 @@ Material:
         m_Offset: {x: 0, y: 0}
     m_Ints: []
     m_Floats:
-    - _Alpha: 0.64393926
+    - _Alpha: 0
     - _AlphaCutoff: 0.5
     - _ColorMask: 15
     - _EnableExternalAlpha: 0

+ 1 - 1
Assets/Art/VFX/Materials/UIMat/ui_ob_yindao_quan.mat

@@ -57,7 +57,7 @@ Material:
         m_Offset: {x: 0, y: 0}
     m_Ints: []
     m_Floats:
-    - _Alpha: 0.39212424
+    - _Alpha: 0
     - _AlphaCutoff: 0.5
     - _ColorMask: 0
     - _EnableExternalAlpha: 0

+ 1 - 0
Assets/Obfuz/SymbolObfus/symbol-mapping.xml

@@ -2196,6 +2196,7 @@
       <method signature="object $Obfuz$ProxyCall::@$Obfuz$Dispatch_36812_10087402(object, object, int)" newName="$z" oldStackTraceSignature="$Obfuz$ProxyCall:$Obfuz$Dispatch_36812_10087402(Object, Object, Int32)" newStackTraceSignature="$p:$z(Object, Object, Int32)" />
       <method signature="string $Obfuz$ProxyCall::@$Obfuz$Dispatch_11150_11558398(object, int)" newName="$bA" oldStackTraceSignature="$Obfuz$ProxyCall:$Obfuz$Dispatch_11150_11558398(Object, Int32)" newStackTraceSignature="$p:$bA(Object, Int32)" />
       <method signature="string $Obfuz$ProxyCall::@$Obfuz$Dispatch_22824_11558398(int)" newName="$BA" oldStackTraceSignature="$Obfuz$ProxyCall:$Obfuz$Dispatch_22824_11558398(Int32)" newStackTraceSignature="$p:$BA(Int32)" />
+      <method signature="string $Obfuz$ProxyCall::@$Obfuz$Dispatch_59003_11558398(float, int)" newName="$M" oldStackTraceSignature="$Obfuz$ProxyCall:$Obfuz$Dispatch_59003_11558398(Single, Int32)" newStackTraceSignature="$p:$M(Single, Int32)" />
       <method signature="System.Threading.Tasks.Task $Obfuz$ProxyCall::@$Obfuz$Dispatch_50754_13355026(object, object, object, int)" newName="$CA" oldStackTraceSignature="$Obfuz$ProxyCall:$Obfuz$Dispatch_50754_13355026(Object, Object, Object, Int32)" newStackTraceSignature="$p:$CA(Object, Object, Object, Int32)" />
       <method signature="System.Threading.Tasks.Task`1&lt;[System.Net.Http]System.Net.Http.HttpResponseMessage&gt; $Obfuz$ProxyCall::@$Obfuz$Dispatch_50754_4049763(object, object, object, int)" newName="$dA" oldStackTraceSignature="$Obfuz$ProxyCall:$Obfuz$Dispatch_50754_4049763(Object, Object, Object, Int32)" newStackTraceSignature="$p:$dA(Object, Object, Object, Int32)" />
       <method signature="System.Threading.Tasks.Task`1&lt;string&gt; $Obfuz$ProxyCall::@$Obfuz$Dispatch_11150_4396324(object, int)" newName="$DA" oldStackTraceSignature="$Obfuz$ProxyCall:$Obfuz$Dispatch_11150_4396324(Object, Int32)" newStackTraceSignature="$p:$DA(Object, Int32)" />

二進制
Assets/Plugins/Android/SaaS_TalkingDataSDK_Android_V5.0.35.jar


+ 0 - 37
Assets/Plugins/Android/SaaS_TalkingDataSDK_Android_V5.0.35.jar.meta

@@ -1,37 +0,0 @@
-fileFormatVersion: 2
-guid: Dyge4y3/AC1DZuJ5wdNbbYHylxH24wqWLHjAqKZZiJJk2NCow+UXwbD710nW
-PluginImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  iconMap: {}
-  executionOrder: {}
-  defineConstraints: []
-  isPreloaded: 0
-  isOverridable: 0
-  isExplicitlyReferenced: 0
-  validateReferences: 1
-  platformData:
-  - first:
-      Android: Android
-    second:
-      enabled: 1
-      settings: {}
-  - first:
-      Any: 
-    second:
-      enabled: 0
-      settings: {}
-  - first:
-      Editor: Editor
-    second:
-      enabled: 0
-      settings:
-        DefaultValueInitialized: true
-  - first:
-      HMIAndroid: HMIAndroid
-    second:
-      enabled: 1
-      settings: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 371
Assets/Plugins/iOS/TalkingDataSDK.h

@@ -1,371 +0,0 @@
-//
-//  TalkingDataSDK.h
-//  TalkingData
-//
-//  Created by liweiqiang on 21-03-16.
-//  Copyright (c) 2021年 TendCloud. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-
-typedef NS_OPTIONS(NSUInteger, TalkingDataDisable) {
-    TalkingDataDisablePreciseArea           = 1 << 0,
-    TalkingDataDisableAnalyticsIntellignet  = 1 << 1,
-    TalkingDataDisableDeviceIdentification  = 1 << 2,
-    TalkingDataDisableAntiCheating          = 1 << 3,
-};
-
-typedef NS_ENUM(NSUInteger, TalkingDataVendorIdType) {
-    TalkingDataVendorIdTypeZX           = 1,    // 卓信
-    TalkingDataVendorIdTypeGX           = 2,    // 广协
-};
-
-typedef NS_ENUM(NSInteger, TalkingDataSharingFilter) {
-    TalkingDataSharingFilterShare       = 0,    // 可共享
-    TalkingDataSharingFilterOnlyInstall = 1,    // 仅共享Install事件
-    TalkingDataSharingFilterUnshare     = 2,    // 不可共享
-};
-
-typedef NS_ENUM(NSUInteger, TalkingDataProfileType) {
-    TalkingDataProfileTypeAnonymous     = 0,    // 匿名账户
-    TalkingDataProfileTypeRegistered    = 1,    // 显性注册账户
-    TalkingDataProfileTypeSinaWeibo     = 2,    // 新浪微博
-    TalkingDataProfileTypeQQ            = 3,    // QQ账户
-    TalkingDataProfileTypeQQWeibo       = 4,    // 腾讯微博
-    TalkingDataProfileTypeND91          = 5,    // 91账户
-    TalkingDataProfileTypeWeiXin        = 6,    // 微信
-    TalkingDataProfileTypeType1         = 11,   // 自定义类型1
-    TalkingDataProfileTypeType2         = 12,   // 自定义类型2
-    TalkingDataProfileTypeType3         = 13,   // 自定义类型3
-    TalkingDataProfileTypeType4         = 14,   // 自定义类型4
-    TalkingDataProfileTypeType5         = 15,   // 自定义类型5
-    TalkingDataProfileTypeType6         = 16,   // 自定义类型6
-    TalkingDataProfileTypeType7         = 17,   // 自定义类型7
-    TalkingDataProfileTypeType8         = 18,   // 自定义类型8
-    TalkingDataProfileTypeType9         = 19,   // 自定义类型9
-    TalkingDataProfileTypeType10        = 20,   // 自定义类型10
-};
-
-typedef NS_ENUM(NSUInteger, TalkingDataGender) {
-    TalkingDataGenderUnknown            = 0,    // 未知
-    TalkingDataGenderMale               = 1,    // 男
-    TalkingDataGenderFemale             = 2,    // 女
-};
-
-
-@interface TalkingDataProfile : NSObject
-
-+ (TalkingDataProfile *)createProfile;
-
-// 账户名称
-@property (nonatomic, strong) NSString *name;
-// 账户类型
-@property (nonatomic, assign) TalkingDataProfileType type;
-// 用户性别
-@property (nonatomic, assign) TalkingDataGender gender;
-// 用户年龄
-@property (nonatomic, assign) int age;
-
-// 自定义属性1-10,类型为NSString或NSNumber
-@property (nonatomic, strong) id property1;
-@property (nonatomic, strong) id property2;
-@property (nonatomic, strong) id property3;
-@property (nonatomic, strong) id property4;
-@property (nonatomic, strong) id property5;
-@property (nonatomic, strong) id property6;
-@property (nonatomic, strong) id property7;
-@property (nonatomic, strong) id property8;
-@property (nonatomic, strong) id property9;
-@property (nonatomic, strong) id property10;
-
-@end
-
-
-@interface TalkingDataSearch : NSObject
-
-+ (TalkingDataSearch *)createSearch;
-
-// 搜索类别
-@property (nonatomic, strong) NSString *category;
-// 搜索内容
-@property (nonatomic, strong) NSString *content;
-
-
-
-@end
-
-
-
-
-
-
-@interface TalkingDataSDK : NSObject
-
-/**
- *  获取TalkingData分配的设备ID
- *  @return deviceId        设备的ID
- */
-+ (NSString *)getDeviceId;
-
-/**
- *  设置不显示日志。如发布时不需显示日志,应当最先调用该接口。
- */
-+ (void)setVerboseLogDisable;
-
-/**
- *  设置关闭配置
- */
-+ (void)setConfigurationDisable:(TalkingDataDisable)options;
-
-
-
-/**
- *  开启后台使用时长统计,需在SDK初始化之前调用。
- */
-+ (void)backgroundSessionEnabled;
-
-#if TARGET_OS_IOS
-/**
- *  用于精准的追踪以Safari作为资源载体的广告来源,如果需要使用应当在init接口之前调用。
- */
-+ (void)enableSFSafariViewControllerTracking API_DEPRECATED("此接口会影响到用户交互,使用前请确保和产品、业务沟通清楚!", ios(1, 1));
-#endif
-
-/**
- *  此接口已废弃,请调用'initSDK'和'startA'接口,详细说明请见官网集成文档。
- */
-+ (void)init:(NSString *)appId channelId:(NSString *)channelId custom:(NSString *)custom NS_UNAVAILABLE;
-
-/**
- *  SDK初始化接口,仅会执行SDK初始化,不会进行任何信息采集。
- *  请在application:didFinishLaunchingWithOptions:中调用
- *  @param  appId           应用的唯一标识,统计后台注册得到
- *  @param  channelId       渠道名(可选)。如“AppStore”
- *  @param  custom          自定义参数(可选)。
- */
-+ (void)initSDK:(NSString *)appId channelId:(NSString *)channelId custom:(NSString *)custom;
-
-/**
- *  SDK启动分析,基础数据准备。
- */
-+ (void)startA;
-
-/**
- *  设置第三方的ID
- *  @param  vendorId        第三方的ID
- *  @param  type            ID的提供方
- */
-+ (void)setVendorId:(NSString *)vendorId ofType:(TalkingDataVendorIdType)type;
-
-/**
- *  设置位置信息
- *  @param  latitude        纬度
- *  @param  longitude       经度
- */
-+ (void)setLatitude:(double)latitude longitude:(double)longitude;
-
-/**
- *  设置自定义数据是否可共享
- *  @param flag             是否可共享
- */
-+ (void)setCustomDataSwitch:(TalkingDataSharingFilter)flag;
-
-#if TARGET_OS_IOS
-/**
- *  是否捕捉程序崩溃记录
- *  如果需要记录程序崩溃日志,请将值设成YES,并且在初始化后尽早调用
- *  @param  enable          默认NO
- */
-+ (void)setExceptionReportEnabled:(BOOL)enable;
-
-/**
- *  是否捕捉异常信号
- *  如果需要开启异常信号捕捉功能,请将值设成YES,并且在初始化后尽早调用
- *  @param  enable          默认NO
- */
-+ (void)setSignalReportEnabled:(BOOL)enable;
-#endif
-
-/**
- *  开始跟踪某一页面,记录页面打开时间
- *  建议在viewWillAppear或者viewDidAppear中调用
- *  @param  pageName        页面名称
- */
-+ (void)onPageBegin:(NSString *)pageName;
-
-/**
- *  结束某一页面的跟踪,记录页面的关闭时间
- *  此接口与onPageBegin接口结对使用
- *  建议在viewWillDisappear或者viewDidDisappear中调用
- *  @param  pageName        页面名称,请跟onPageBegin接口的页面名称保持一致
- */
-+ (void)onPageEnd:(NSString *)pageName;
-
-/**
- *  获取短链
- *  @param  params          生成短链所参数
- *  @param  callback        返回结果
- */
-+ (void)getShortUrl:(NSDictionary *)params callback:(void (^)(NSString *shortUrl))callback;
-
-#if TARGET_OS_IOS
-/**
- *  获取延时链接
- */
-+ (NSString *)getDeferredLink;
-#endif
-
-/**
- *  处理UniversalLink
- *  @param  userActivity    获取到的NSUserActivity对象
- *  @return deeplink        深度链接
- */
-+ (NSString *)handleUniversalLink:(NSUserActivity *)userActivity;
-
-/**
- *  唤醒事件
- *  @param  link            唤醒链接
- */
-+ (void)onReceiveDeepLink:(NSURL *)link;
-
-/**
- *  注册
- *  @param  profileId       账户ID
- *  @param  profile         账户属性
- *  @param  invitationCode  邀请码
- *  @param  eventValue      用户自定义事件参数
- */
-+ (void)onRegister:(NSString *)profileId profile:(TalkingDataProfile *)profile invitationCode:(NSString *)invitationCode eventValue:(NSDictionary *)eventValue;
-+ (void)onRegister:(NSString *)profileId profile:(TalkingDataProfile *)profile invitationCode:(NSString *)invitationCode;
-
-/**
- *  登录
- *  @param  profileId       账户ID
- *  @param  profile         账户属性
- *  @param  eventValue      用户自定义事件参数
- */
-+ (void)onLogin:(NSString *)profileId profile:(TalkingDataProfile *)profile eventValue:(NSDictionary *)eventValue;
-+ (void)onLogin:(NSString *)profileId profile:(TalkingDataProfile *)profile;
-
-/**
- *  更新账户信息
- *  @param  profile         账户属性
- */
-+ (void)onProfileUpdate:(TalkingDataProfile *)profile;
-
-/**
- *  添加支付信息
- *  @param  profileId       账户ID
- *  @param  method          支付方式
- *  @param  content         支付信息
- */
-+ (void)onCreateCard:(NSString *)profileId method:(NSString *)method content:(NSString *)content;
-
-/**
- *  收藏
- *  @param  category        收藏类别
- *  @param  content         收藏内容
- *  @param  eventValue      用户自定义事件参数
- */
-+ (void)onFavorite:(NSString *)category content:(NSString *)content eventValue:(NSDictionary *)eventValue;
-+ (void)onFavorite:(NSString *)category content:(NSString *)content;
-
-/**
- *  分享
- *  @param  profileId       账户ID
- *  @param  content         分享内容
- *  @param  eventValue      用户自定义事件参数
- */
-+ (void)onShare:(NSString *)profileId content:(NSString *)content eventValue:(NSDictionary *)eventValue;
-+ (void)onShare:(NSString *)profileId content:(NSString *)content;
-
-/**
- *  签到打卡
- *  @param  profileId       账户ID
- *  @param  punchId         签到打卡ID
- */
-+ (void)onPunch:(NSString *)profileId punchId:(NSString *)punchId;
-
-/**
- *  搜索事件
- *  @param  search          搜索信息详情
- */
-+ (void)onSearch:(TalkingDataSearch *)search;
-
-
-/**
- *  付费
- *  @param  profileId       账户ID
- *  @param  orderId         订单ID
- *  @param  amount          订单金额
- *  @param  currencyType    货币类型
- *  @param  paymentType     支付类型
- *  @param  itemId          商品ID
- *  @param  itemCount       商品个数
- */
-+ (void)onPay:(NSString *)profileId orderId:(NSString *)orderId amount:(int)amount currencyType:(NSString *)currencyType paymentType:(NSString *)paymentType itemId:(NSString *)itemId itemCount:(int)itemCount;
-
-
-
-
-
-
-/**
- *  创建角色
- *  @param  name            角色名称
- */
-+ (void)onCreateRole:(NSString *)name;
-
-/**
- *  通过关卡
- *  @param  profileId       账户ID
- *  @param  levelId         关卡ID
- */
-+ (void)onLevelPass:(NSString *)profileId levelId:(NSString *)levelId;
-
-/**
- *  完成新手教程
- *  @param  profileId       账户ID
- *  @param  content         教程信息
- */
-+ (void)onGuideFinished:(NSString *)profileId content:(NSString *)content;
-
-
-
-
-
-/**
- *  解锁成就
- *  @param  profileId       账户ID
- *  @param  achievementId   成就ID
- */
-+ (void)onAchievementUnlock:(NSString *)profileId achievementId:(NSString *)achievementId;
-
-
-
-/**
- *  自定义事件
- *  @param  eventId         事件名称
- *  @param  parameters      事件参数 (key只支持NSString, value支持NSString和NSNumber)
- *  @param  eventValue      用户自定义事件参数
- */
-+ (void)onEvent:(NSString *)eventId parameters:(NSDictionary *)parameters eventValue:(NSDictionary *)eventValue;
-+ (void)onEvent:(NSString *)eventId parameters:(NSDictionary *)parameters;
-+ (void)onEvent:(NSString *)eventId value:(double)eventValue parameters:(NSDictionary *)parameters API_DEPRECATED_WITH_REPLACEMENT("onEvent:parameters", ios(1,1));
-
-/**
- *  添加自定义事件全局参数
- *  @param  key             参数的key
- *  @param  value           参数的value,NSString或NSNumber类型
- */
-+ (void)setGlobalKV:(NSString *)key value:(id)value;
-
-/**
- *  删除自定义事件全局参数
- *  @param  key             参数的key
- */
-+ (void)removeGlobalKV:(NSString *)key;
-
-
-@end

+ 0 - 33
Assets/Plugins/iOS/TalkingDataSDK.h.meta

@@ -1,33 +0,0 @@
-fileFormatVersion: 2
-guid: DClKti77ByieIhHY0YWf82YQDD08sQfDyrhQvjqNsrUCAhr6rVJaNqQ73MZu
-PluginImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  iconMap: {}
-  executionOrder: {}
-  defineConstraints: []
-  isPreloaded: 0
-  isOverridable: 0
-  isExplicitlyReferenced: 0
-  validateReferences: 1
-  platformData:
-  - first:
-      Any: 
-    second:
-      enabled: 0
-      settings: {}
-  - first:
-      Editor: Editor
-    second:
-      enabled: 0
-      settings:
-        DefaultValueInitialized: true
-  - first:
-      iPhone: iOS
-    second:
-      enabled: 1
-      settings:
-        AddToEmbeddedBinaries: false
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

二進制
Assets/Plugins/iOS/libTalkingDataSDK.a


+ 0 - 33
Assets/Plugins/iOS/libTalkingDataSDK.a.meta

@@ -1,33 +0,0 @@
-fileFormatVersion: 2
-guid: Wi9JsyOkWihx5hXyiIHc26HHELpe/4siQfX57B6gPZN10IQ7xP3JZmvyMbvK
-PluginImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  iconMap: {}
-  executionOrder: {}
-  defineConstraints: []
-  isPreloaded: 0
-  isOverridable: 0
-  isExplicitlyReferenced: 0
-  validateReferences: 1
-  platformData:
-  - first:
-      Any: 
-    second:
-      enabled: 0
-      settings: {}
-  - first:
-      Editor: Editor
-    second:
-      enabled: 0
-      settings:
-        DefaultValueInitialized: true
-  - first:
-      iPhone: iOS
-    second:
-      enabled: 1
-      settings:
-        AddToEmbeddedBinaries: true
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 8 - 8
Assets/Res/Config/DropGroupConfig.json

@@ -51,28 +51,28 @@
     },
     {
       "ID": 8,
-      "dropRate": 752,
+      "dropRate": 764,
       "dropItemID": [
         8
       ]
     },
     {
       "ID": 9,
-      "dropRate": 188,
+      "dropRate": 191,
       "dropItemID": [
         9
       ]
     },
     {
       "ID": 10,
-      "dropRate": 40,
+      "dropRate": 30,
       "dropItemID": [
         10
       ]
     },
     {
       "ID": 11,
-      "dropRate": 20,
+      "dropRate": 15,
       "dropItemID": [
         11
       ]
@@ -93,28 +93,28 @@
     },
     {
       "ID": 14,
-      "dropRate": 808,
+      "dropRate": 821,
       "dropItemID": [
         10
       ]
     },
     {
       "ID": 15,
-      "dropRate": 162,
+      "dropRate": 164,
       "dropItemID": [
         11
       ]
     },
     {
       "ID": 16,
-      "dropRate": 20,
+      "dropRate": 10,
       "dropItemID": [
         12
       ]
     },
     {
       "ID": 17,
-      "dropRate": 10,
+      "dropRate": 5,
       "dropItemID": [
         13
       ]

+ 1 - 1
Assets/Res/UI/BoxPanel/GachaPanel.prefab

@@ -1751,7 +1751,7 @@ MonoBehaviour:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 4167220551134749730}
-  m_Enabled: 0
+  m_Enabled: 1
   m_EditorHideFlags: 0
   m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
   m_Name: 

+ 2 - 2
Assets/Res/UI/Canvas/Canvas.prefab

@@ -262,7 +262,7 @@ MonoBehaviour:
   m_ScaleFactor: 1
   m_ReferenceResolution: {x: 750, y: 1624}
   m_ScreenMatchMode: 0
-  m_MatchWidthOrHeight: 0
+  m_MatchWidthOrHeight: 1
   m_PhysicalUnit: 3
   m_FallbackScreenDPI: 96
   m_DefaultSpriteDPI: 96
@@ -427,7 +427,7 @@ MonoBehaviour:
   m_RenderShadows: 0
   m_RequiresDepthTextureOption: 0
   m_RequiresOpaqueTextureOption: 2
-  m_CameraType: 1
+  m_CameraType: 0
   m_Cameras: []
   m_RendererIndex: -1
   m_VolumeLayerMask:

+ 1 - 1
Assets/Res/UI/DaoYouPanel/DaoYouInfoPanel.prefab

@@ -8103,7 +8103,7 @@ GameObject:
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 1
+  m_IsActive: 0
 --- !u!224 &6226328605185051319
 RectTransform:
   m_ObjectHideFlags: 0

+ 2 - 2
Assets/Res/UI/LoadingPanel.prefab

@@ -73,7 +73,7 @@ MonoBehaviour:
     m_BestFit: 0
     m_MinSize: 10
     m_MaxSize: 40
-    m_Alignment: 0
+    m_Alignment: 4
     m_AlignByGeometry: 0
     m_RichText: 1
     m_HorizontalOverflow: 0
@@ -157,7 +157,7 @@ MonoBehaviour:
   m_UseSpriteMesh: 0
   m_PixelsPerUnitMultiplier: 1
   _icon_name: 
-  isNotLoadDeftIcon: 0
+  isNotLoadDeftIcon: 1
   CurrSpriteAtlas: {fileID: 0}
   packInfo:
     packName: 

+ 373 - 0
Assets/Res/UI/LoginMainPanel.prefab

@@ -0,0 +1,373 @@
+%YAML 1.1
+%TAG !u! tag:yousandi.cn,2023:
+--- !u!1 &4486599056176389083
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 4081330743179339612}
+  - component: {fileID: 4946186619170166794}
+  - component: {fileID: 724498571649078918}
+  - component: {fileID: 2611010534754045306}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Btn_SettingPanel
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &4081330743179339612
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4486599056176389083}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 8311278189826985699}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 1, y: 0}
+  m_AnchorMax: {x: 1, y: 0}
+  m_AnchoredPosition: {x: -29, y: 98}
+  m_SizeDelta: {x: 60, y: 45}
+  m_Pivot: {x: 1, y: 0}
+--- !u!222 &4946186619170166794
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4486599056176389083}
+  m_CullTransparentMesh: 1
+--- !u!114 &724498571649078918
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4486599056176389083}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 0}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: dec_xuanxiang
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: b02f6b41a7a9fa8458f4226ab6b3ea47, type: 3}
+  packInfo:
+    packName: tongyong
+    packgJsonPath: /Art/UIAssets/TextrueJson\tongyong.txt
+    packgSpritePath: Assets/Res/UIAtlas/tongyong.spriteatlasv2
+    lasetJsonGUID: 9c62e511fc97bc019d716bfc92e68086
+  imageH: 100
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
+--- !u!114 &2611010534754045306
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4486599056176389083}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 724498571649078918}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!1 &4993911372966654358
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 1669281409109345828}
+  - component: {fileID: 5060074385960820424}
+  - component: {fileID: 8936581939649475887}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: myImage
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1669281409109345828
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4993911372966654358}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 8311278189826985699}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 1008.9492, y: 1793.6875}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &5060074385960820424
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4993911372966654358}
+  m_CullTransparentMesh: 1
+--- !u!114 &8936581939649475887
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4993911372966654358}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 21300000, guid: a7151090b5e39ea43b49260b8b1677d0, type: 3}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: 
+  isNotLoadDeftIcon: 1
+  CurrSpriteAtlas: {fileID: 0}
+  packInfo:
+    packName: 
+    packgJsonPath: 
+    packgSpritePath: 
+    lasetJsonGUID: 
+  imageH: 100
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
+--- !u!1 &5484466371172864172
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 8311278189826985699}
+  - component: {fileID: 8171916528849988951}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: LoginMainPanel
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &8311278189826985699
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5484466371172864172}
+  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_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 1669281409109345828}
+  - {fileID: 3062357519343784547}
+  - {fileID: 4081330743179339612}
+  m_Father: {fileID: 0}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 750, y: 1624}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &8171916528849988951
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5484466371172864172}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4810a0857c909354fa00c3aafdeac753, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  data:
+  - key: Btn_SettingPanel
+    gameObject: {fileID: 2611010534754045306}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  isAssetBundle: 1
+--- !u!1 &6256583385672431352
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 3062357519343784547}
+  - component: {fileID: 2011940515455338190}
+  - component: {fileID: 7145450703204254466}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: myImage (1)
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &3062357519343784547
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6256583385672431352}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 8311278189826985699}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 1}
+  m_AnchorMax: {x: 0.5, y: 1}
+  m_AnchoredPosition: {x: 5, y: -61}
+  m_SizeDelta: {x: 497, y: 313}
+  m_Pivot: {x: 0.5, y: 1}
+--- !u!222 &2011940515455338190
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6256583385672431352}
+  m_CullTransparentMesh: 1
+--- !u!114 &7145450703204254466
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6256583385672431352}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 21300000, guid: c445c0199876d6c4f954649a5f0863a3, type: 3}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: 
+  isNotLoadDeftIcon: 1
+  CurrSpriteAtlas: {fileID: 0}
+  packInfo:
+    packName: 
+    packgJsonPath: 
+    packgSpritePath: 
+    lasetJsonGUID: 
+  imageH: 100
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0

+ 7 - 0
Assets/Res/UI/LoginMainPanel.prefab.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: Xi4a5yqkBXLtwCclA4FVoMNVD652Wmsgf/FAeeEhEcGjZlnroJjjy9YuszEc
+PrefabImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: loadingpanel
+  assetBundleVariant: 

+ 53 - 0
Assets/Res/UI/LoginPanel.prefab

@@ -0,0 +1,53 @@
+%YAML 1.1
+%TAG !u! tag:yousandi.cn,2023:
+--- !u!1 &5484466371172864172
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 8311278189826985699}
+  - component: {fileID: 6015648164429520880}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: LoginPanel
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &8311278189826985699
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5484466371172864172}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 0}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 750, y: 1624}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &6015648164429520880
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5484466371172864172}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4810a0857c909354fa00c3aafdeac753, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  data: []
+  isAssetBundle: 1

+ 7 - 0
Assets/Res/UI/LoginPanel.prefab.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: XChNsi2oVy4qrBxQNLVQDExLXEOTe7FqTKxtNGH6kXVNQpY4aZbTgAvjAjlL
+PrefabImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: loadingpanel
+  assetBundleVariant: 

文件差異過大導致無法顯示
+ 972 - 44
Assets/Res/UI/SettingPanel/SettingPanel.prefab


+ 826 - 0
Assets/Res/UI/SettingPanel/UploadLogPanel.prefab

@@ -0,0 +1,826 @@
+%YAML 1.1
+%TAG !u! tag:yousandi.cn,2023:
+--- !u!1 &403638407809819782
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 4160643369365326472}
+  - component: {fileID: 7008343222778063613}
+  - component: {fileID: 6071842447484209667}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: myImage
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &4160643369365326472
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 403638407809819782}
+  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_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 3335154821151865286}
+  - {fileID: 2829838969233991924}
+  - {fileID: 8913697450959205694}
+  m_Father: {fileID: 9037135992368401232}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 624, y: 478.6177}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &7008343222778063613
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 403638407809819782}
+  m_CullTransparentMesh: 1
+--- !u!114 &6071842447484209667
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 403638407809819782}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.9058824, g: 0.882353, b: 0.82745105, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 0}
+  m_Type: 1
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: dec_juxing_fang_hujiao
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: b02f6b41a7a9fa8458f4226ab6b3ea47, type: 3}
+  packInfo:
+    packName: tongyong
+    packgJsonPath: /Art/UIAssets/TextrueJson\tongyong.txt
+    packgSpritePath: Assets/Res/UIAtlas/tongyong.spriteatlasv2
+    lasetJsonGUID: d570df61e5e429dc2d9169bbaecec167
+  imageH: 100
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
+--- !u!1 &2965460640040097079
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 2829838969233991924}
+  - component: {fileID: 3505351788308317489}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Btn_YinXiao (1)
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2829838969233991924
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2965460640040097079}
+  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_ConstrainProportionsScale: 1
+  m_Children:
+  - {fileID: 4465562703701704461}
+  - {fileID: 2992885620383388598}
+  m_Father: {fileID: 4160643369365326472}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: 69.34328}
+  m_SizeDelta: {x: 476.71, y: 100}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &3505351788308317489
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2965460640040097079}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 0}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!1 &2992072252845435866
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 4465562703701704461}
+  - component: {fileID: 4933128729536331500}
+  - component: {fileID: 2324201114895334489}
+  - component: {fileID: 3892912416871182358}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: txt
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &4465562703701704461
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2992072252845435866}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 2829838969233991924}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0.5}
+  m_AnchorMax: {x: 0, y: 0.5}
+  m_AnchoredPosition: {x: -56, y: 0}
+  m_SizeDelta: {x: 122.8878, y: 100}
+  m_Pivot: {x: 0, y: 0.5}
+--- !u!222 &4933128729536331500
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2992072252845435866}
+  m_CullTransparentMesh: 1
+--- !u!114 &2324201114895334489
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2992072252845435866}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 1, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 12800000, guid: e588d93665211944387ec8c03c8726ae, type: 3}
+    m_FontSize: 48
+    m_FontStyle: 1
+    m_BestFit: 1
+    m_MinSize: 4
+    m_MaxSize: 48
+    m_Alignment: 3
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u8BBE\u5907id"
+--- !u!114 &3892912416871182358
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2992072252845435866}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: e19747de3f5aca642ab2be37e372fb86, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_EffectColor: {r: 0.41960785, g: 0.31764707, b: 0.16862746, a: 1}
+  m_EffectDistance: {x: 1.4, y: 1.4}
+  m_UseGraphicAlpha: 1
+--- !u!1 &3069451813354621096
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 8913697450959205694}
+  - component: {fileID: 4241911780120012977}
+  - component: {fileID: 8343795687634011450}
+  - component: {fileID: 4586964149638742131}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Btn_UploadLog
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &8913697450959205694
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3069451813354621096}
+  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_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 2794589414433100854}
+  m_Father: {fileID: 4160643369365326472}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0}
+  m_AnchorMax: {x: 0.5, y: 0}
+  m_AnchoredPosition: {x: 0, y: 73.35211}
+  m_SizeDelta: {x: 315.7455, y: 100}
+  m_Pivot: {x: 0.5, y: 0}
+--- !u!222 &4241911780120012977
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3069451813354621096}
+  m_CullTransparentMesh: 1
+--- !u!114 &8343795687634011450
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3069451813354621096}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 0, b: 0, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 0}
+  m_Type: 1
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: dec_juxing_fang_hujiao
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: b02f6b41a7a9fa8458f4226ab6b3ea47, type: 3}
+  packInfo:
+    packName: tongyong
+    packgJsonPath: /Art/UIAssets/TextrueJson\tongyong.txt
+    packgSpritePath: Assets/Res/UIAtlas/tongyong.spriteatlasv2
+    lasetJsonGUID: 9c62e511fc97bc019d716bfc92e68086
+  imageH: 100
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
+--- !u!114 &4586964149638742131
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3069451813354621096}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 8343795687634011450}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!1 &5450680752029178968
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 2794589414433100854}
+  - component: {fileID: 8231089540682630800}
+  - component: {fileID: 6880897483825389491}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: Text (Legacy)
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2794589414433100854
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5450680752029178968}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 8913697450959205694}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &8231089540682630800
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5450680752029178968}
+  m_CullTransparentMesh: 1
+--- !u!114 &6880897483825389491
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5450680752029178968}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 12800000, guid: e588d93665211944387ec8c03c8726ae, type: 3}
+    m_FontSize: 65
+    m_FontStyle: 1
+    m_BestFit: 0
+    m_MinSize: 0
+    m_MaxSize: 169
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u4E0A\u4F20\u65E5\u5FD7"
+--- !u!1 &6325889996112339402
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 2354120935780841372}
+  - component: {fileID: 3517552548751133641}
+  - component: {fileID: 9180553255168365292}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Icon_Marsk
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &2354120935780841372
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6325889996112339402}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 9037135992368401232}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &3517552548751133641
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6325889996112339402}
+  m_CullTransparentMesh: 1
+--- !u!114 &9180553255168365292
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6325889996112339402}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0, g: 0, b: 0, a: 0.003921569}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 0}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: dec_juxing_fang
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: b02f6b41a7a9fa8458f4226ab6b3ea47, type: 3}
+  packInfo:
+    packName: tongyong
+    packgJsonPath: /Art/UIAssets/TextrueJson\tongyong.txt
+    packgSpritePath: Assets/Res/UIAtlas/tongyong.spriteatlasv2
+    lasetJsonGUID: d570df61e5e429dc2d9169bbaecec167
+  imageH: 100
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
+--- !u!1 &6791344915447867474
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 3335154821151865286}
+  - component: {fileID: 1336933346209753520}
+  - component: {fileID: 7915566129711929088}
+  - component: {fileID: 1950754695086212799}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Text_Title
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &3335154821151865286
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6791344915447867474}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 4160643369365326472}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: -7.4744, y: 181.04321}
+  m_SizeDelta: {x: 450.8513, y: 50.4935}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &1336933346209753520
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6791344915447867474}
+  m_CullTransparentMesh: 1
+--- !u!114 &7915566129711929088
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6791344915447867474}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 12800000, guid: e588d93665211944387ec8c03c8726ae, type: 3}
+    m_FontSize: 48
+    m_FontStyle: 1
+    m_BestFit: 0
+    m_MinSize: 4
+    m_MaxSize: 49
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u4E0A\u4F20\u65E5\u5FD7"
+--- !u!114 &1950754695086212799
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6791344915447867474}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: e19747de3f5aca642ab2be37e372fb86, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_EffectColor: {r: 0.4198112, g: 0.31755278, b: 0.17030072, a: 1}
+  m_EffectDistance: {x: 1, y: -1}
+  m_UseGraphicAlpha: 1
+--- !u!1 &7525949078730949717
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 2992885620383388598}
+  - component: {fileID: 292930128566588381}
+  - component: {fileID: 1059417190865908241}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Text_PlayerId
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &2992885620383388598
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7525949078730949717}
+  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_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 2829838969233991924}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0.5}
+  m_AnchorMax: {x: 0, y: 0.5}
+  m_AnchoredPosition: {x: 138.29251, y: 0}
+  m_SizeDelta: {x: 402.456, y: 100}
+  m_Pivot: {x: 0, y: 0.5}
+--- !u!222 &292930128566588381
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7525949078730949717}
+  m_CullTransparentMesh: 1
+--- !u!114 &1059417190865908241
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7525949078730949717}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.20754719, g: 0.203591, b: 0.18111429, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 1, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 12800000, guid: e588d93665211944387ec8c03c8726ae, type: 3}
+    m_FontSize: 48
+    m_FontStyle: 1
+    m_BestFit: 0
+    m_MinSize: 4
+    m_MaxSize: 48
+    m_Alignment: 5
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: ID
+--- !u!1 &8994874510214016950
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 9037135992368401232}
+  - component: {fileID: 4159330424245520485}
+  m_Layer: 5
+  m_HasEditorInfo: 1
+  m_Name: UploadLogPanel
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &9037135992368401232
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8994874510214016950}
+  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_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 2354120935780841372}
+  - {fileID: 4160643369365326472}
+  m_Father: {fileID: 0}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 750, y: 1624}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &4159330424245520485
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8994874510214016950}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4810a0857c909354fa00c3aafdeac753, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  data:
+  - key: Text_Title
+    gameObject: {fileID: 7915566129711929088}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: Icon_Marsk
+    gameObject: {fileID: 9180553255168365292}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: Btn_UploadLog
+    gameObject: {fileID: 4586964149638742131}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: Text_PlayerId
+    gameObject: {fileID: 1059417190865908241}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  isAssetBundle: 0

+ 7 - 0
Assets/Res/UI/SettingPanel/UploadLogPanel.prefab.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: DXpLvC2lVCgmwor9FZP8TYKkLJ7TmtrQe/MCRO01uaUxt04qIG2kwDX72yPc
+PrefabImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: settingpanel
+  assetBundleVariant: 

+ 1 - 1
Assets/Resources/bg_zairu.png.meta

@@ -128,7 +128,7 @@ TextureImporter:
     forceMaximumCompressionQuality_BC6H_BC7: 0
   - serializedVersion: 3
     buildTarget: Android
-    maxTextureSize: 1024
+    maxTextureSize: 2048
     maxPlaceholderSize: 32
     resizeAlgorithm: 0
     textureFormat: 48

+ 2 - 2
Assets/Scripts/Core/Utility/Helper/TimeHelper.cs

@@ -140,9 +140,9 @@ namespace Fort23.Core
             return GetSafeNowMs() + (8 * 60 * 60 * 1000); // 东八区
         }
 
-        public static long ClientNowSeconds()
+        public static int ClientNowSeconds()
         {
-            return ClientNow() / 1000;
+            return (int)(ClientNow() / 1000);
         }
 
         public static DateTime DateTimeNow()

+ 2 - 1
Assets/Scripts/GameLogic/Bag/BagController.cs

@@ -245,7 +245,8 @@ namespace GameLogic.Bag
             else if (item.config.itemTag == 28)
             {
                 EventManager.Instance.Dispatch(CustomEventType.AddEvent,
-                    new DefaultEventData(){eventData = item.config.associateVlaue[0]});
+                    new DefaultEventData() { eventData = (int)count });
+
                 return true;
             }
 

+ 20 - 0
Assets/Scripts/GameLogic/Player/AccountFileInfo.cs

@@ -168,6 +168,10 @@ public class AccountFileInfo : Singleton<AccountFileInfo>
 
         public bool MusicBg = true;
         public bool MusicEffects = true;
+
+        public int totalAds;
+
+        public int todayTotalAds;
     }
 
     [System.Serializable]
@@ -645,6 +649,7 @@ public class AccountFileInfo : Singleton<AccountFileInfo>
         RestoreIndexMap();
     }
 
+
     public void SavePlayerData(bool clean = false)
     {
         if (clean)
@@ -652,6 +657,20 @@ public class AccountFileInfo : Singleton<AccountFileInfo>
             CleanEmptyData();
         }
 
+
+        // if (lasetSaveLocalTime == 0)
+        // {
+        //     lasetSaveLocalTime = System.DateTime.Now.Ticks;
+        // }
+
+        long currTime = System.DateTime.Now.Ticks;
+        // if (currTime - lasetSaveLocalTime < 100000000 && hasFocus)
+        // {
+        //     return;
+        // }
+        //
+        // lasetSaveLocalTime = currTime;
+
         if (!string.IsNullOrEmpty(persistentDataPath))
         {
             string playerSettingJson = JsonManager.ToJson(playerData);
@@ -659,6 +678,7 @@ public class AccountFileInfo : Singleton<AccountFileInfo>
             WXFileSystemManager wxFileSystemManager = WX.GetFileSystemManager();
             wxFileSystemManager.WriteFileSync(persistentDataPath, playerSettingJson, "utf8");
 #else
+
             File.WriteAllText(persistentDataPath, playerSettingJson);
 #endif
         }

+ 0 - 12
Assets/Scripts/GameLogic/Player/PlayerData.cs

@@ -1,12 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-/// <summary>
-/// 玩家数据管理
-/// </summary>
-public class PlayerData : MonoBehaviour
-{
-    public int playerLevel = 1;
-    public int playerExp = 0;
-}

+ 1 - 0
Assets/Scripts/GameLogic/Player/PlayerManager.cs

@@ -484,6 +484,7 @@ public class PlayerManager : Singleton<PlayerManager>
     {
         if (TimeHelper.ClientNow() > AccountFileInfo.Instance.playerData.nextRefence)
         {
+            AccountFileInfo.Instance.playerData.todayTotalAds = 0;
             AccountFileInfo.Instance.playerData.nextRefence =
                 TimeHelper.GetBaseRefreshTime(TimeHelper.ClientNow());
             AccountFileInfo.Instance.playerData.todayUseExpElixrPanelCount = 0;

+ 11 - 2
Assets/Scripts/GameLogic/SDK/DBManager.cs

@@ -7,7 +7,7 @@ public class DBManager : Singleton<DBManager>
 {
     public DBManager()
     {
-        TalkingDataManager.Instance.CustomInit();
+       
     }
 
     /// <summary>
@@ -17,6 +17,15 @@ public class DBManager : Singleton<DBManager>
     /// <param name="lable"></param>
     public void CustomEvent(string key, Dictionary<string, object> lable)
     {
-        TalkingDataManager.Instance.TrackEvent(key, lable);
     }
+        
+    /// <summary>
+    /// 更新用户属性
+    /// </summary>
+    /// <param name="properties"></param>
+    public void UpdateUserProperty(Dictionary<string, object> properties)
+    {
+        
+    }
+    
 }

+ 0 - 104
Assets/Scripts/GameLogic/SDK/TalkingDataManager.cs

@@ -1,104 +0,0 @@
-using System.Collections.Generic;
-using Fort23.UTool;
-using UnityEngine;
-using Utility;
-
-
-public class TalkingDataManager : Singleton<TalkingDataManager>
-{
-    private string appID = "965461C1FE104336864EF6D7EBABC2A7";
-
-#if Taptap
-  private string channelID = "Taptap_Android";
-#elif HaoYouKuaiBao
-      private string channelID = "好友快报_Android";
-#elif Google
-    private string channelID = "Google_Android";
-#else
-    private string channelID = "Unity_Android";
-#endif
-
-
-    private bool isInitialized = false;
-
-
-    public void CustomInit()
-    {
-        InitializeTalkingData();
-    }
-
-    /// <summary>
-    /// 初始化TalkingData SDK
-    /// </summary>
-    public void InitializeTalkingData()
-    {
-        if (isInitialized) return;
-
-        try
-        {
-            TalkingDataSDKConfig config = TalkingDataSDKConfig.CreateConfig();
-            config.SetIMEIAndMEIDEnabled(true) //不允许收集IMEI和MEID
-                .SetMACEnabled(true) //不允许收集MAC
-                .SetAppListEnabled(true) //不允许收集应用列表
-                .SetLocationEnabled(true) //不允许收集位置信息
-                .SetWifiEnabled(true); //不允许收集网络信息
-
-            TalkingDataSDK.SetConfig(config);
-            TalkingDataSDK.BackgroundSessionEnabled();
-            TalkingDataSDK.InitSDK(appID, channelID, "");
-            TalkingDataSDK.StartA();
-            isInitialized = true;
-            LogTool.Log($"TalkingData 初始化成功 - AppID: {appID}, Channel: {channelID}");
-        }
-        catch (System.Exception e)
-        {
-            LogTool.Error($"TalkingData 初始化失败: {e.Message}");
-        }
-    }
-
-    /// <summary>
-    /// 账户登录
-    /// </summary>
-    public void OnLogin()
-    {
-        if (!isInitialized) return;
-
-        try
-        {
-            TalkingDataProfile profile = TalkingDataProfile.CreateProfile();
-            profile.SetName(PlayerManager.Instance.PlayerName);
-            profile.SetType(TalkingDataProfileType.TYPE1);
-            profile.SetGender(TalkingDataGender.UNKNOWN);
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-            };
-            TalkingDataSDK.OnLogin(PlayerManager.Instance.PlayerName, profile, eventValue);
-
-            LogTool.Log($"TalkingData 设置账户: {PlayerManager.Instance.PlayerName}");
-        }
-        catch (System.Exception e)
-        {
-            LogTool.Error($"TalkingData 设置账户失败: {e.Message}");
-        }
-    }
-
-
-    /// <summary>
-    /// 记录自定义事件
-    /// </summary>
-    public void TrackEvent(string eventID, Dictionary<string, object> parameters,
-        Dictionary<string, object> eventValue = null)
-    {
-        if (!isInitialized) return;
-
-        try
-        {
-            TalkingDataSDK.OnEvent(eventID, parameters, eventValue);
-            LogTool.Log($"TalkingData 记录事件: {eventID} ");
-        }
-        catch (System.Exception e)
-        {
-            LogTool.Error($"TalkingData 记录事件失败: {e.Message}");
-        }
-    }
-}

+ 15 - 4
Assets/Scripts/GameUI/EventManager/DialogueManager.cs

@@ -43,7 +43,7 @@ public class DialogueManager : Singleton<DialogueManager>
         }
         else
         {
-            await PlayDialogue(dialogueID, true,true);
+            await PlayDialogue(dialogueID, true, true);
         }
 
         // EndDialogue1();
@@ -69,7 +69,7 @@ public class DialogueManager : Singleton<DialogueManager>
         }
     }
 
-    private async CTask PlayDialogue(int dialogueID, bool isShowTips = false,bool isShowAnima = false)
+    private async CTask PlayDialogue(int dialogueID, bool isShowTips = false, bool isShowAnima = false)
     {
         currentDialogueID = dialogueID;
 
@@ -141,7 +141,7 @@ public class DialogueManager : Singleton<DialogueManager>
             {
                 await DialoguePanel.OpenDialoguePanel(CurrentEventList, dialogueConfig.ID, null,
                     ShowDialogueEventData.MessageShowType.Verbatim,
-                    FishDialogue,isShowAnima);
+                    FishDialogue, isShowAnima);
             }
             else
             {
@@ -263,7 +263,8 @@ public class DialogueManager : Singleton<DialogueManager>
                     // }
                     // else
                     {
-                        List<ItemInfo> items = DropManager.Instance.Drop(dialogueConfig.PrizeIDs[i],dialogueConfig.PrizeNums[i]);
+                        List<ItemInfo> items =
+                            DropManager.Instance.Drop(dialogueConfig.PrizeIDs[i], dialogueConfig.PrizeNums[i]);
                         itemInfos.AddRange(items);
                     }
                 }
@@ -355,6 +356,16 @@ public class DialogueManager : Singleton<DialogueManager>
                     EventSystemManager.Instance.AddEvent(dialogueConfig.ResultOptions[0]);
                 if (eventList != null)
                 {
+                    EventConfig eventConfig =
+                        ConfigComponent.Instance.Get<EventConfig>(dialogueConfig.ResultOptions[0]);
+                    if (eventConfig.EventTriggerType == 4)
+                    {
+                        Dictionary<string, object> properties = new Dictionary<string, object>();
+                        properties.Add("#MainId", EventSystemManager.Instance.GetMainEventDta()?.eventID);
+                        DBManager.Instance.CustomEvent("#CurMainEventId", properties);
+                        DBManager.Instance.UpdateUserProperty(properties);
+                    }
+
                     AccountFileInfo.Instance.playerData.eventList.Add(eventList);
                     AccountFileInfo.Instance.SavePlayerData();
                 }

+ 91 - 0
Assets/Scripts/GameUI/FTPManager.cs

@@ -0,0 +1,91 @@
+using System;
+using System.Collections;
+using System.IO;
+using System.IO.Compression;
+using System.Net;
+using System.Threading.Tasks;
+using Fort23.Core;
+using Fort23.UTool;
+using UnityEngine;
+using Utility;
+
+public class FTPManager : Singleton<FTPManager>
+{
+    public string ftpServer = "ftp://139.155.99.185:21";
+    public string ftpUser = "ck";
+    public string ftpPass = "ck44526996"; // 或用私钥
+
+    private string LocalLogPath => Path.Combine(Application.persistentDataPath, "GameLog.txt");
+    private string LocalDataPath => Path.Combine(Application.persistentDataPath, "playerData.txt");
+    private string ZipPath => Path.Combine(Application.persistentDataPath, "upload_logs.zip");
+
+
+    [ContextMenu("asdada")]
+    public async CTask<bool> UploadWithFTP()
+    {
+        try
+        {
+            CreateZipPackage();
+
+            await UploadZipToFTPAsync();
+            if (File.Exists(ZipPath)) File.Delete(ZipPath);
+            Debug.Log("FTP 日志上传成功!");
+            return true;
+        }
+        catch (System.Exception ex)
+        {
+            LogTool.Error($"上传失败: {ex.Message}\n{ex.StackTrace}");
+        }
+
+        return false;
+    }
+
+    private void CreateZipPackage()
+    {
+        if (File.Exists(ZipPath)) File.Delete(ZipPath);
+        using (var zip = ZipFile.Open(ZipPath, ZipArchiveMode.Create))
+        {
+            if (File.Exists(LocalLogPath)) zip.CreateEntryFromFile(LocalLogPath, "GameLog.txt");
+            if (File.Exists(LocalDataPath)) zip.CreateEntryFromFile(LocalDataPath, "playerData.txt");
+        }
+    }
+
+    private async Task UploadZipToFTPAsync()
+    {
+        string fileName =
+            $"logs_{DateTime.Now:yyyyMMdd_HHmmss}_{SystemInfo.deviceUniqueIdentifier}_{AccountFileInfo.Instance.playerData.playerId}.zip";
+        string remoteUrl = new Uri(new Uri(ftpServer), fileName).ToString();
+
+        FtpWebRequest request = (FtpWebRequest)WebRequest.Create(remoteUrl);
+        request.Method = WebRequestMethods.Ftp.UploadFile;
+        request.Credentials = new NetworkCredential(ftpUser, ftpPass);
+        request.UseBinary = true;
+        request.UsePassive = true;
+        request.KeepAlive = false;
+        request.Timeout = 30000;
+
+        byte[] buffer = File.ReadAllBytes(ZipPath);
+        request.ContentLength = buffer.Length;
+
+        using (Stream requestStream = await request.GetRequestStreamAsync())
+        {
+            int offset = 0;
+            int chunkSize = 64 * 1024; // 64KB
+            while (offset < buffer.Length)
+            {
+                int size = Math.Min(chunkSize, buffer.Length - offset);
+                await requestStream.WriteAsync(buffer, offset, size);
+                offset += size;
+
+                // 进度日志(主线程安全)
+                float progress = (float)offset / buffer.Length;
+                LogTool.Log($"[FTP] 上传中: {progress:P1}");
+            }
+        }
+
+        using (FtpWebResponse response = (FtpWebResponse)await request.GetResponseAsync())
+        {
+            LogTool.Log($"[FTP] 服务器响应: {response.StatusDescription}");
+        }
+    }
+}

+ 1 - 1
Assets/Scripts/GameLogic/Player/PlayerData.cs.meta → Assets/Scripts/GameUI/FTPManager.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: WyhOt3j4ASiPpUh7EN4LLmpENq0IjcLRjaDeW5YFbZduKEwJKSCC/r0=
+guid: XXkXtHyvAnnfvbS7aAJM79caeE6LVeP1trbcGASZ32TkKKCjMzesCnRwPD79
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 23 - 25
Assets/Scripts/GameUI/GameApplction.cs

@@ -1,4 +1,5 @@
 using System;
+using System.Collections.Generic;
 using System.IO;
 using System.Text;
 using Core.AssetLoadTool.Asset;
@@ -55,6 +56,7 @@ public class GameApplction : IGameStart, ILogSend
     public async void StartGame(LoadType LoadType, string h5Url, GameStartUIPanel gameStartUIPanel,
         System.Action LoadFinish)
     {
+        Debug.Log("开始游戏逻辑");
         HotSyncContent.DownloadUI = gameStartUIPanel;
         this.LoadFinish = LoadFinish;
         gameApplction = this;
@@ -62,22 +64,15 @@ public class GameApplction : IGameStart, ILogSend
         LogTool.LogSend = this;
         LogServer.Instance.Init("游三界");
         Crasheye.SendScriptException("测试错误", "测试错误", "ZH");
-        // UnityEngine.Screen.SetResolution(Screen.width);
-        // GameUpdateAsset.Instance.Init(h5Url);
         Crasheye.SetRegisterLogFunction(UnityLogic);
         this.gameStartUIPanel = gameStartUIPanel;
         gameStartUIPanel.ShowMassge("开始加载资源");
         gameStartUIPanel.SetSlider(0);
-        this.h5Url = h5Url;
         BundleLoadType = (BundleLoadType)LoadType;
         GameObject gameObject = new GameObject("app");
         gameObject.AddComponent<GameApplctionMono>();
         GameAssetUpdatePanel gameAssetUpdatePanel = new GameAssetUpdatePanel();
         gameAssetUpdatePanel.StartUpdateAsset(AssetUpdateFinish);
-        // await InitGameApplication();
-
-
-        Debug.Log("初始化完成");
     }
 
 
@@ -85,7 +80,11 @@ public class GameApplction : IGameStart, ILogSend
     {
         Debug.Log("finish AssetUpdateFinish");
         await InitGameApplication();
+        await LoginMainPanel.OpenPanel();
         LoadFinish?.Invoke();
+        UIManager.Instance.Canvas.gameObject.SetActive(true);
+        await Login();
+        // DBManager.Instance.SetUserID(AccountFileInfo.Instance.playerData.playerId);
         Debug.Log("初始化完成");
     }
 
@@ -141,32 +140,30 @@ public class GameApplction : IGameStart, ILogSend
 
         await UIManager.Instance.InitUI();
         CustomTweenManager.Init();
-
         RedDotManager.Instance.Init();
-        // await GameNetworkClient.Instance.Connect("127.0.0.1", 1000);
-        await Login();
+        
     }
 
     private async CTask Login()
     {
-        // MemoryResponse memoryResponse = await GameNetworkSendAssemble.SendLogin("123", "123");
-        // if (memoryResponse == null)
-        // {
-        //     LogTool.Error("登陆失败");
-        //     return;
-        // }
+        
+#if UNITY_ANDROID && Taptap
+        //登录
+        CTask<bool> callback = CTask<bool>.Create();
+        LoginPanel.OpenPanel(callback);
+        await callback;
+#else
+        AccountFileInfo.Instance.LoadPlayerData();
+#endif
 
         await TimeHelper.InitNetworkTime();
+        Dictionary<string, object> dict = new Dictionary<string, object>();
+        DBManager.Instance.CustomEvent("StartGame", dict);
 
-        DBManager.Instance.CustomEvent("StartGame", null);
 
         EventManager.Instance.RemoveEventListener(CustomEventType.DialoguePanelOpen, DialoguePanelOpenEvent);
         EventManager.Instance.AddEventListener(CustomEventType.DialoguePanelOpen, DialoguePanelOpenEvent);
-        UIManager.Instance.Canvas.gameObject.SetActive(true);
-        if (PlayerGuideManager.Instance.GuideIsCanDo(1))
-        {
-            await MarskPanel.OpenPanel(255);
-        }
+
 
         PlayerManager.Instance.Init();
         ShopManger.Instance.CustomInit();
@@ -245,18 +242,18 @@ public class GameApplction : IGameStart, ILogSend
 
         gameStartUIPanel.ShowMassge("loadFinish");
         gameStartUIPanel.SetSlider(1f);
+        LoginMainPanel.ClsoePanel();
 
         XinShouCombat();
     }
 
     private void DialoguePanelOpenEvent(IEventData e)
     {
-        MarskPanel.ClosePanel();
+        LoginMainPanel.ClsoePanel();
     }
 
     public async void XinShouCombat()
     {
-        // MarskPanel.ClosePanel();
         if (PlayerGuideManager.Instance.GuideIsCanDo(1))
         {
             AccountFileInfo.EventList eventList2 = EventSystemManager.Instance.AddEvent(9999);
@@ -289,7 +286,7 @@ public class GameApplction : IGameStart, ILogSend
         }
         else
         {
-            MarskPanel.ClosePanel();
+            LoginMainPanel.ClsoePanel();
         }
     }
 
@@ -306,6 +303,7 @@ public class GameApplction : IGameStart, ILogSend
             Flush();
         Crasheye.SendScriptException(massge, massge, "");
         LogServer.Instance.UpLog(massge, massge);
+        // CrashSightAgent.ReportException(LogType.Error.ToString(), massge, massge);
     }
 
     private void Flush()

+ 16 - 2
Assets/Scripts/GameUI/UI/BoxPanel/BoxPanel.cs

@@ -21,6 +21,7 @@ namespace Fort23.Mono
                 LogTool.Error($"获取网络时间失败,抽卡失败");
                 return null;
             }
+
             AccountFileInfo.SummonData summonData = PlayerManager.Instance.SummonManager.summonDataMap[configId];
             OpenBoxConfig openBoxConfig = ConfigComponent.Instance.Get<OpenBoxConfig>(configId);
             //有免费次数,并且让到时间了就免费抽
@@ -44,6 +45,19 @@ namespace Fort23.Mono
                     return null;
                 }
 
+                //看广告
+                if (openBoxConfig.CostItemID == 1007)
+                {
+                    if (AccountFileInfo.Instance.playerData.todayTotalAds >= 80)
+                    {
+                        TipMessagePanel.OpenTipMessagePanel("今日看广告次数已经达上限!");
+                        return null;
+                    }
+
+                    AccountFileInfo.Instance.playerData.todayTotalAds++;
+                    AccountFileInfo.Instance.SavePlayerData();
+                }
+
                 if (!PlayerManager.Instance.BagController.IsEnough(23002, 1))
                 {
                     await MarskPanel.OpenPanel();
@@ -55,7 +69,7 @@ namespace Fort23.Mono
                     MarskPanel.ClosePanel();
                 }
 
-            
+
                 return itemInfos;
                 // return await PlayerManager.Instance.SummonManager.Summon(configId, 10);
             }
@@ -68,7 +82,7 @@ namespace Fort23.Mono
                 LogTool.Error($"获取网络时间失败,抽卡失败");
                 return null;
             }
-            
+
             AccountFileInfo.SummonData summonData = PlayerManager.Instance.SummonManager.summonDataMap[configId];
             OpenBoxConfig openBoxConfig = ConfigComponent.Instance.Get<OpenBoxConfig>(configId);
             //有免费次数,并且让到时间了就免费抽

+ 4 - 0
Assets/Scripts/GameUI/UI/GuidePanel/PlayerGuideManager.cs

@@ -769,6 +769,10 @@ namespace Fort23.Mono
             {
                 //容错:
                 await guideLogic.Guide();
+                Dictionary<string, object> dictionary = new Dictionary<string, object>();
+                dictionary.Add("#GroupID", curPhase);
+                dictionary.Add("#CurStep", curStep);
+                DBManager.Instance.CustomEvent("#UserGuide", dictionary);
             }
             catch (System.Exception e)
             {

+ 26 - 1
Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroBreakthroughPanel.cs

@@ -154,7 +154,7 @@ namespace Fort23.Mono
                     //失败
                     else
                     {
-                        int xw =RemoveHeroItem(list[1]);
+                        int xw = RemoveHeroItem(list[1]);
                         AudioManager.Instance.PlayAudio("ui_tuposhibai.wav");
                         HeroBreakthroughFailPanel heroBreakthroughFailPanel =
                             await HeroBreakthroughFailPanel.OpenPanel(2, xw);
@@ -224,6 +224,7 @@ namespace Fort23.Mono
                     delegate(bool isWin)
                     {
                         LogTool.Log("战斗完成" + isWin);
+
                         if (isWin)
                         {
                             PlayerManager.Instance.myHero.heroData.isCombat = true;
@@ -236,6 +237,30 @@ namespace Fort23.Mono
                         }
 
                         CombatDrive.Instance.CombatController.ChangeState(CombatController.update);
+                        Dictionary<string, object> dic = new Dictionary<string, object>();
+                        dic.Add("#BattleID", heroPowerUpConfig.DujieLevelbattleID);
+                        dic.Add("#IsWin", isWin);
+                        string gongfa = "[";
+                        for (var i = 0; i < PlayerManager.Instance.GongFaControl.allUseSkill.Length; i++)
+                        {
+                            if (PlayerManager.Instance.GongFaControl.allUseSkill[i] == null)
+                                continue;
+                            gongfa += PlayerManager.Instance.GongFaControl.allUseSkill[i].skillConfig.ID + ",";
+                        }
+
+                        gongfa += "]";
+                        string gongfaLv = "[";
+                        for (var i = 0; i < PlayerManager.Instance.GongFaControl.allUseSkill.Length; i++)
+                        {
+                            if (PlayerManager.Instance.GongFaControl.allUseSkill[i] == null)
+                                continue;
+                            gongfaLv += PlayerManager.Instance.GongFaControl.allUseSkill[i].SkillData.level + ",";
+                        }
+
+                        gongfa += "]";
+                        dic.Add("#UpGongFaIDs", gongfa);
+                        dic.Add("#UpGongFaILvs", gongfaLv);
+                        DBManager.Instance.CustomEvent("#XinMo", dic);
                     });
             });
         }

+ 20 - 16
Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroInformationPanel.cs

@@ -187,21 +187,25 @@ namespace Fort23.Mono
                 UIManager.Instance.HideUIUIPanel(this);
             });
         }
+
         int redDotID = 5;
+        private int currentMiao = 0;
+        private float allexp = 0;
+
         public async CTask CustomInit()
         {
             ClosePool();
 
-            int currentMiao = (int)((TimeHelper.ClientNow() - PlayerManager.Instance.myHero.heroData.upTime) /
-                                    1000);
+            currentMiao = (int)((TimeHelper.ClientNow() - PlayerManager.Instance.myHero.heroData.upTime) /
+                                1000);
 
-            float allexp = currentMiao * PlayerManager.Instance.myHero.powerUpConfig.AutoXiuwei;
+            allexp = currentMiao * PlayerManager.Instance.myHero.powerUpConfig.AutoXiuwei;
 
             Slider_Exp.maxValue = PlayerManager.Instance.myHero.powerUpConfig.levelUpExp;
             Slider_Exp.value = PlayerManager.Instance.myHero.heroData.exp + allexp;
 
             Text_exp.text =
-                $"{(int)PlayerManager.Instance.myHero.exp.Value + allexp}/{PlayerManager.Instance.myHero.powerUpConfig.levelUpExp}";
+                $"{(int)PlayerManager.Instance.myHero.heroData.exp + allexp}/{PlayerManager.Instance.myHero.powerUpConfig.levelUpExp}";
 
             for (var i = 0; i < JingJieIcons.Count; i++)
             {
@@ -273,7 +277,6 @@ namespace Fort23.Mono
                     PlayerManager.Instance.myHero.heroData.heroPowerId + 1);
 
 
-              
                 AccountFileInfo.RedDot redDot = RedDotManager.Instance.GetRedDot(redDotID);
                 if (redDot == null)
                 {
@@ -422,22 +425,22 @@ namespace Fort23.Mono
             }
         }
 
-        float timer = 0;
+        // float timer = 0;
 
         [CustomMethod(CustomMethodType.Update)]
         public void Update()
         {
-            timer += Time.deltaTime;
-            if (timer < 1f)
-            {
-                return;
-            }
-
-            timer = 0;
-            int currentMiao =
+            // timer += Time.deltaTime;
+            // if (timer < 1f)
+            // {
+            //     return;
+            // }
+            //
+            // timer = 0;
+            currentMiao =
                 (int)((TimeHelper.ClientNow() - PlayerManager.Instance.myHero.heroData.upTime) / 1000);
 
-            float allexp = currentMiao * PlayerManager.Instance.myHero.powerUpConfig.AutoXiuwei;
+            allexp = currentMiao * PlayerManager.Instance.myHero.powerUpConfig.AutoXiuwei;
 
             Slider_Exp.value = PlayerManager.Instance.myHero.heroData.exp + allexp;
 
@@ -550,7 +553,8 @@ namespace Fort23.Mono
         public async override CTask Close()
         {
             fx_ui_tupo_loop.gameObject.SetActive(false);
-            timer = 0;
+            currentMiao = 0;
+            allexp = 0;
             ClosePool();
             await base.Close();
         }

+ 8 - 0
Assets/Scripts/GameUI/UI/LoginPanel.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: Xn1K4X6lVHKC2BUGngfzvbEly3TjJJSERTT0y3ou4f0FZl4xx5soa1/oOu+t
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 41 - 0
Assets/Scripts/GameUI/UI/LoginPanel/LoginMainPanel.cs

@@ -0,0 +1,41 @@
+using Fort23.Core;
+
+namespace Fort23.Mono
+{
+    [UIBinding(prefab = "LoginMainPanel")]
+    public partial class LoginMainPanel : UIPanel
+    {
+        private void Init()
+        {
+        }
+
+        protected override void AddEvent()
+        {
+        }
+
+        protected override void DelEvent()
+        {
+        }
+
+        public override void AddButtonEvent()
+        {
+            Btn_SettingPanel.onClick.AddListener(() => { UploadLogPanel.OpenPanel(); });
+        }
+
+        public async static CTask OpenPanel()
+        {
+            await UIManager.Instance.LoadAndOpenPanel<LoginMainPanel>(null, UILayer.Loading);
+        }
+
+        public static void ClsoePanel()
+        {
+            UIManager.Instance.HideUIUIPanel<LoginMainPanel>();
+        }
+
+        public override CTask Close()
+        {
+            UIManager.Instance.HideUIUIPanel<UploadLogPanel>();
+            return base.Close();
+        }
+    }
+}

+ 1 - 1
Assets/Scripts/GameLogic/SDK/TalkingDataManager.cs.meta → Assets/Scripts/GameUI/UI/LoginPanel/LoginMainPanel.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: B3Me5HylVCrxvL6xMzuyheiDMvefnWgH/sbVrFRKKTLp24VQl1Nxlv9wAhYm
+guid: XnsdvSv7Vy4hF1O3FU/vAsAuwNCSeaDSrw/YPw4m0BeegeSGuWC9T3UzwCTZ
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 29 - 0
Assets/Scripts/GameUI/UI/LoginPanel/LoginMainPanelData.cs

@@ -0,0 +1,29 @@
+using Fort23.Core;
+using Fort23.UTool;
+using UnityEngine.UI;
+using UnityEngine;
+using System.Collections.Generic;
+namespace Fort23.Mono
+{
+	public partial class LoginMainPanel 
+	{
+	  #region 自定义数据 
+	  private Button _Btn_SettingPanel;
+	  public Button Btn_SettingPanel
+	   {
+	   get{
+	      if (_Btn_SettingPanel == null)
+	       {
+	         _Btn_SettingPanel  = GetUIUnit<Button>("Btn_SettingPanel"); 
+	       }
+	      return _Btn_SettingPanel;
+	     }
+	   }
+	  #endregion 自定义数据结束 
+	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
+	{
+	 await base.SetUIGameObject(gObjectPoolInterface);
+	 Init();
+	}
+	}
+}

+ 1 - 1
Assets/Scripts/ThirdParty/TalkingDataScripts/TDDemoScript.cs.meta → Assets/Scripts/GameUI/UI/LoginPanel/LoginMainPanelData.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: WntOvSutVHptthMVwcnd70SVcWhij8L0SWaXhbK5fS9Qpk15L7OM04ovXLl6
+guid: Cywd4yioWninrc8MLCdYH8LhiYJd0EaPKeNZJCZ39bUy+S4vaTFtsd969CZ1
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 43 - 0
Assets/Scripts/GameUI/UI/LoginPanel/LoginPanel.cs

@@ -0,0 +1,43 @@
+using Fort23.Core;
+
+
+namespace Fort23.Mono
+{
+    [UIBinding(prefab = "LoginPanel")]
+    public partial class LoginPanel : UIPanel
+    {
+        private void Init()
+        {
+        }
+
+        protected override void AddEvent()
+        {
+         
+        }
+
+        protected override void DelEvent()
+        {
+        }
+
+        public async static CTask OpenPanel(CTask<bool> callback)
+        {
+            LoginPanel loginPanel = await UIManager.Instance.LoadAndOpenPanel<LoginPanel>(null, UILayer.Loading);
+            loginPanel.CustomInit(callback);
+        }
+
+        private async void CustomInit(CTask<bool> callback)
+        {
+            callback.SetResult(true);
+            UIManager.Instance.HideUIUIPanel(this);
+        }
+
+        public override void AddButtonEvent()
+        {
+        }
+
+        public override CTask Close()
+        {
+            return base.Close();
+        }
+    }
+}

+ 1 - 1
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataOrder.cs.meta → Assets/Scripts/GameUI/UI/LoginPanel/LoginPanel.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: CSlMtS2pWnvStkMzeGxRcdWR+fhYoghk3PeEpXIHlvRSBwJJW4uZKPoWD+BZ
+guid: CCwcsSuuAnpnT7Y9Wk9/e91f4PpX9xHJjnQEw9ZS16kSCvoq0j52OHA7UrEU
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 18 - 0
Assets/Scripts/GameUI/UI/LoginPanel/LoginPanelData.cs

@@ -0,0 +1,18 @@
+using Fort23.Core;
+using Fort23.UTool;
+using UnityEngine.UI;
+using UnityEngine;
+using System.Collections.Generic;
+namespace Fort23.Mono
+{
+	public partial class LoginPanel 
+	{
+	  #region 自定义数据 
+	  #endregion 自定义数据结束 
+	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
+	{
+	 await base.SetUIGameObject(gObjectPoolInterface);
+	 Init();
+	}
+	}
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/LoginPanel/LoginPanelData.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: Xn5OtC+sAHiNNKyKt8281d1xqLM6Iy4NOhmnt6tDHVhpN6qElgY/b6Of+tWm
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 16 - 2
Assets/Scripts/GameUI/UI/SettingPanel/SettingPanel.cs

@@ -20,6 +20,7 @@ namespace Fort23.Mono
 
         public override CTask<bool> AsyncInit(object[] uiData)
         {
+            Text_PlayerId.text = AccountFileInfo.Instance.playerData.playerId;
             if (AccountFileInfo.Instance.playerData.MusicEffects)
             {
                 AudioManager.Instance.SetAudioValue(1);
@@ -83,11 +84,24 @@ namespace Fort23.Mono
 
                 AccountFileInfo.Instance.SavePlayerData();
             });
+
+            Btn_UploadLog.onClick.AddListener(async () =>
+            {
+                bool isOk = await FTPManager.Instance.UploadWithFTP();
+                if (isOk)
+                {
+                    TipMessagePanel.OpenTipMessagePanel("上传成功!");
+                }
+                else
+                {
+                    TipMessagePanel.OpenTipMessagePanel("上传失败!");
+                }
+            });
         }
 
-        public async static CTask OpenPanel()
+        public async static CTask OpenPanel( UILayer layer = UILayer.Top)
         {
-            await UIManager.Instance.LoadAndOpenPanel<SettingPanel>(null, UILayer.Top, isShowBG: true);
+            await UIManager.Instance.LoadAndOpenPanel<SettingPanel>(null, layer, isShowBG: true);
         }
     }
 }

+ 44 - 0
Assets/Scripts/GameUI/UI/SettingPanel/SettingPanelData.cs

@@ -85,6 +85,50 @@ namespace Fort23.Mono
 	      return _Btn_DelAccount;
 	     }
 	   }
+	  private Button _Btn_UploadLog;
+	  public Button Btn_UploadLog
+	   {
+	   get{
+	      if (_Btn_UploadLog == null)
+	       {
+	         _Btn_UploadLog  = GetUIUnit<Button>("Btn_UploadLog"); 
+	       }
+	      return _Btn_UploadLog;
+	     }
+	   }
+	  private Text _Text_PlayerId;
+	  public Text Text_PlayerId
+	   {
+	   get{
+	      if (_Text_PlayerId == null)
+	       {
+	         _Text_PlayerId  = GetUIUnit<Text>("Text_PlayerId"); 
+	       }
+	      return _Text_PlayerId;
+	     }
+	   }
+	  private Button _Btn_UploadArchive;
+	  public Button Btn_UploadArchive
+	   {
+	   get{
+	      if (_Btn_UploadArchive == null)
+	       {
+	         _Btn_UploadArchive  = GetUIUnit<Button>("Btn_UploadArchive"); 
+	       }
+	      return _Btn_UploadArchive;
+	     }
+	   }
+	  private Button _Btn_DownloadArchive;
+	  public Button Btn_DownloadArchive
+	   {
+	   get{
+	      if (_Btn_DownloadArchive == null)
+	       {
+	         _Btn_DownloadArchive  = GetUIUnit<Button>("Btn_DownloadArchive"); 
+	       }
+	      return _Btn_DownloadArchive;
+	     }
+	   }
 	  #endregion 自定义数据结束 
 	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
 	{

+ 48 - 0
Assets/Scripts/GameUI/UI/SettingPanel/UploadLogPanel.cs

@@ -0,0 +1,48 @@
+using Fort23.Core;
+using UnityEngine;
+
+namespace Fort23.Mono
+{
+    [UIBinding(prefab = "UploadLogPanel")]
+    public partial class UploadLogPanel : UIPanel
+    {
+        private void Init()
+        {
+        }
+
+        protected override void AddEvent()
+        {
+        }
+
+        protected override void DelEvent()
+        {
+        }
+
+        public override void AddButtonEvent()
+        {
+            Btn_UploadLog.onClick.AddListener(async () =>
+            {
+                bool isOk = await FTPManager.Instance.UploadWithFTP();
+                if (isOk)
+                {
+                    TipMessagePanel.OpenTipMessagePanel("上传成功!", layer: UILayer.Loading);
+                }
+                else
+                {
+                    TipMessagePanel.OpenTipMessagePanel("上传失败!", layer:UILayer.Loading);
+                }
+            });
+        }
+
+        public override CTask<bool> AsyncInit(object[] uiData)
+        {
+            Text_PlayerId.text = SystemInfo.deviceUniqueIdentifier;
+            return base.AsyncInit(uiData);
+        }
+
+        public async static CTask OpenPanel()
+        {
+            await UIManager.Instance.LoadAndOpenPanel<UploadLogPanel>(null, UILayer.Loading, isShowBG: true);
+        }
+    }
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/SettingPanel/UploadLogPanel.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: CSsftyOoWy0u+dS3f/QMBoQfpEtSlXNZF73qG1zTdbdagFbJiUZxSsj+7VMC
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 62 - 0
Assets/Scripts/GameUI/UI/SettingPanel/UploadLogPanelData.cs

@@ -0,0 +1,62 @@
+using Fort23.Core;
+using Fort23.UTool;
+using UnityEngine.UI;
+using UnityEngine;
+using System.Collections.Generic;
+namespace Fort23.Mono
+{
+	public partial class UploadLogPanel 
+	{
+	  #region 自定义数据 
+	  private Text _Text_Title;
+	  public Text Text_Title
+	   {
+	   get{
+	      if (_Text_Title == null)
+	       {
+	         _Text_Title  = GetUIUnit<Text>("Text_Title"); 
+	       }
+	      return _Text_Title;
+	     }
+	   }
+	  private MyImage _Icon_Marsk;
+	  public MyImage Icon_Marsk
+	   {
+	   get{
+	      if (_Icon_Marsk == null)
+	       {
+	         _Icon_Marsk  = GetUIUnit<MyImage>("Icon_Marsk"); 
+	       }
+	      return _Icon_Marsk;
+	     }
+	   }
+	  private Button _Btn_UploadLog;
+	  public Button Btn_UploadLog
+	   {
+	   get{
+	      if (_Btn_UploadLog == null)
+	       {
+	         _Btn_UploadLog  = GetUIUnit<Button>("Btn_UploadLog"); 
+	       }
+	      return _Btn_UploadLog;
+	     }
+	   }
+	  private Text _Text_PlayerId;
+	  public Text Text_PlayerId
+	   {
+	   get{
+	      if (_Text_PlayerId == null)
+	       {
+	         _Text_PlayerId  = GetUIUnit<Text>("Text_PlayerId"); 
+	       }
+	      return _Text_PlayerId;
+	     }
+	   }
+	  #endregion 自定义数据结束 
+	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
+	{
+	 await base.SetUIGameObject(gObjectPoolInterface);
+	 Init();
+	}
+	}
+}

+ 11 - 0
Assets/Scripts/GameUI/UI/SettingPanel/UploadLogPanelData.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: XHgfsCj5B35yhKnQZOViB2X+8y7unQ7IdfSH1WPuZPNVNsSJkG7gHDmPdwp2
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 2 - 2
Assets/Scripts/GameUI/UI/TipMessagePanel/TipMessagePanel.cs

@@ -8,7 +8,7 @@ namespace Fort23.Mono
     [UIBinding(prefab = "TipMessagePanel")]
     public partial class TipMessagePanel : UIComponent
     {
-        public static async CTask<TipMessagePanel> OpenTipMessagePanel(string meg, Vector2 worldPos = default)
+        public static async CTask<TipMessagePanel> OpenTipMessagePanel(string meg, Vector2 worldPos = default,UILayer layer = UILayer.Top)
         {
             if (PlayerManager.Instance.serverTime - UIManager.Instance.ShowTextTime < 700)
             {
@@ -18,7 +18,7 @@ namespace Fort23.Mono
             UIManager.Instance.ShowTextTime = PlayerManager.Instance.serverTime;
             TipMessagePanel tipMessagePanel =
                 await UIManager.Instance.CreateGComponent<TipMessagePanel>(null,
-                    UIManager.Instance.GetLayer(UILayer.Top));
+                    UIManager.Instance.GetLayer(layer));
             tipMessagePanel.SetTipMessage(meg, worldPos);
             return tipMessagePanel;
         }

+ 31 - 26
Assets/Scripts/ThirdParty/Crasheye/Crasheye.cs

@@ -1,10 +1,11 @@
 /**
  *  Unity Plugins Version   2.2.10
- *  
+ *
  *      android version     2.2.9
  *      iOS version         2.7.3
  *      window version      1.0.0
  */
+
 using System.Text;
 using UnityEngine;
 using System.Collections;
@@ -29,7 +30,7 @@ using com.xsj.Crasheye.U3D.IOS;
 public class Crasheye : MonoBehaviour
 {
     public delegate void FnOnCrashCallback(bool bCaptureSucceed, string cpszCrashReportFile);
-    
+
     public string YourAppKeyForAndroid = "YourAppKeyForAndroid";
     public string YourChannelIdForAndroid = "YourChannelIdForAndroid";
 
@@ -42,7 +43,7 @@ public class Crasheye : MonoBehaviour
 #if UNITY_ANDROID || UNITY_IPHONE || UNITY_IOS
     public static CrasheyeLib crasheyeLib = null;
 #endif
-    
+
 #if UNITY_ANDROID || UNITY_IPHONE || UNITY_IOS || UNITY_STANDALONE_WIN
     private static string YourChannelId = "NA";
 #endif
@@ -113,7 +114,7 @@ public class Crasheye : MonoBehaviour
 #endif
         }
     }
-    
+
     /// <summary>
     ///  设置Dump是否强制上报(忽略玩家在DumpReport界面上的选择)
     ///
@@ -122,18 +123,19 @@ public class Crasheye : MonoBehaviour
     public static void SetForceUpload(bool isForceUpload)
     {
         Debug.Log("SetForceUpload");
-#if UNITY_STANDALONE_WIN  && !UNITY_EDITOR
+#if UNITY_STANDALONE_WIN && !UNITY_EDITOR
         DumpForPC.SetForceUpload(isForceUpload);
 #endif
     }
+
     /// <summary>
     /// 启动Crasheye
     /// </summary>
     /// <param name="Your_AppKey"></param>
     public static void StartInitCrasheye(string Your_AppKey)
-    {        
+    {
         RegisterLogCallback();
-        
+
         if (Application.platform == RuntimePlatform.Android)
         {
 #if UNITY_ANDROID
@@ -148,7 +150,7 @@ public class Crasheye : MonoBehaviour
         }
         else if (Application.platform == RuntimePlatform.WindowsPlayer)
         {
-#if UNITY_STANDALONE_WIN  && !UNITY_EDITOR
+#if UNITY_STANDALONE_WIN && !UNITY_EDITOR
             DumpForPC.Init(Your_AppKey, YourChannelId);
 #endif
         }
@@ -178,7 +180,7 @@ public class Crasheye : MonoBehaviour
         }
         else if (Application.platform == RuntimePlatform.WindowsPlayer)
         {
-#if UNITY_STANDALONE_WIN  && !UNITY_EDITOR
+#if UNITY_STANDALONE_WIN && !UNITY_EDITOR
             Debug.Log("RegisterLogCallback");
             AppDomain.CurrentDomain.UnhandledException += DumpForPC.OnHandleUnresolvedException;
             SetRegisterLogFunction(DumpForPC.OnHandleLogCallback);
@@ -192,14 +194,15 @@ public class Crasheye : MonoBehaviour
             return;
         }
 
-        System.AppDomain.CurrentDomain.UnhandledException += new System.UnhandledExceptionEventHandler(crasheyeLib.OnHandleUnresolvedException);
+        System.AppDomain.CurrentDomain.UnhandledException +=
+            new System.UnhandledExceptionEventHandler(crasheyeLib.OnHandleUnresolvedException);
 
         SetRegisterLogFunction(crasheyeLib.OnHandleLogCallback);
 
 #if UNITY_5
                 Application.logMessageReceived += RegisterLogFunction;
 #else
-                Application.RegisterLogCallback(RegisterLogFunction);
+        Application.RegisterLogCallback(RegisterLogFunction);
 #endif
 #endif
     }
@@ -238,8 +241,9 @@ public class Crasheye : MonoBehaviour
     }
 
     public delegate void RegisterLog(string logString, string stackTrace, LogType type);
+
     private static RegisterLog m_RegisterLog = null;
-   
+
     /// <summary>
     /// 设置用户的脚本回调的函数
     /// </summary>
@@ -249,13 +253,13 @@ public class Crasheye : MonoBehaviour
         Debug.Log("SetRegisterLogFunction");
         m_RegisterLog += registerLogCBFun;
     }
-    
+
     /// <summary>
     /// 发送脚本异常
     /// </summary>
     /// <param name="ex">Excepiton Info</param>
     public static void SendScriptException(Exception ex)
-    {        
+    {
         if (Application.platform == RuntimePlatform.Android)
         {
 #if UNITY_ANDROID
@@ -284,19 +288,20 @@ public class Crasheye : MonoBehaviour
             crasheyeLib.LibSendScriptException(errorTitle, stacktrace, language);
 #endif
         }
-        else if(Application.platform == RuntimePlatform.IPhonePlayer)
+        else if (Application.platform == RuntimePlatform.IPhonePlayer)
         {
 #if UNITY_IPHONE || UNITY_IOS
             crasheyeLib.LibSendScriptException(errorTitle, stacktrace);
 #endif
-        } else if (Application.platform == RuntimePlatform.WindowsPlayer)
+        }
+        else if (Application.platform == RuntimePlatform.WindowsPlayer)
         {
-#if UNITY_STANDALONE_WIN  && !UNITY_EDITOR
+#if UNITY_STANDALONE_WIN && !UNITY_EDITOR
             DumpForPC.SendScriptException(errorTitle, stacktrace, language);
 #endif
         }
     }
-    
+
     /// <summary>
     /// 设置渠道号
     /// </summary>
@@ -398,7 +403,7 @@ public class Crasheye : MonoBehaviour
     /// <param name="setUserIdentifier">用户标识</param>
     public static void SetUserIdentifier(string userIdentifier)
     {
-        if(string.IsNullOrEmpty(userIdentifier))
+        if (string.IsNullOrEmpty(userIdentifier))
         {
             return;
         }
@@ -529,7 +534,7 @@ public class Crasheye : MonoBehaviour
             CrasheyeForAndroid.RemoveExtraData(key);
 #endif
         }
-        else if(Application.platform == RuntimePlatform.IPhonePlayer)
+        else if (Application.platform == RuntimePlatform.IPhonePlayer)
         {
 #if UNITY_IPHONE || UNITY_IOS
             CrasheyeForIOS.RemoveExtraData(key);
@@ -604,7 +609,8 @@ public class Crasheye : MonoBehaviour
 #if UNITY_IPHONE || UNITY_IOS
             CrasheyeForIOS.LeaveBreadcrumb(breadcrumb);
 #endif
-        } else if (Application.platform == RuntimePlatform.WindowsPlayer)
+        }
+        else if (Application.platform == RuntimePlatform.WindowsPlayer)
         {
 #if UNITY_STANDALONE_WIN && !UNITY_EDITOR
             DumpForPC.leaveBreadcrumb(breadcrumb);
@@ -669,7 +675,7 @@ public class Crasheye : MonoBehaviour
             CrasheyeForAndroid.SetLogging(lines, filter);
 #endif
         }
-        else if(Application.platform == RuntimePlatform.IPhonePlayer)
+        else if (Application.platform == RuntimePlatform.IPhonePlayer)
         {
 #if UNITY_IPHONE || UNITY_IOS
             CrasheyeForIOS.SetLogging(lines, filter);
@@ -695,21 +701,20 @@ public class Crasheye : MonoBehaviour
             return CrasheyeForIOS.GetAppVersion();
 #endif
         }
+
         return "NA";
     }
 
     public static bool SetBackgroundUpload(bool isBackgroundUpload)
     {
-        
 #if UNITY_STANDALONE_WIN && !UNITY_EDITOR
         return DumpForPC.SetBackgroundUpload(isBackgroundUpload);
 #endif
         return false;
     }
-    
+
     public static bool SetCrashCallback(FnOnCrashCallback pCallback)
     {
-
 #if UNITY_STANDALONE_WIN && !UNITY_EDITOR
         return DumpForPC.SetOnMiniDumpCreateCallBack((bCaptureSucceed, cpszCrashReportFile)=>{
             string  szCrashReportFile = Marshal.PtrToStringUni(cpszCrashReportFile);
@@ -718,7 +723,7 @@ public class Crasheye : MonoBehaviour
 #endif
         return false;
     }
-    
+
     public static bool PushLogTrace(string cpszMessage)
     {
 #if UNITY_STANDALONE_WIN && !UNITY_EDITOR

+ 2 - 1
Assets/Scripts/ThirdParty/Crasheye/CrasheyeForUnityLib.asmdef

@@ -1,3 +1,4 @@
 {
-	"name": "CrasheyeForUnityLib"
+	"name": "CrasheyeForUnityLib",
+	"references":[ "ThirdParty" ]
 }

+ 0 - 400
Assets/Scripts/ThirdParty/TalkingDataScripts/TDDemoScript.cs

@@ -1,400 +0,0 @@
-using UnityEngine;
-using System.Collections.Generic;
-
-public class TDDemoScript : MonoBehaviour
-{
-    private const int top = 100;
-    private const int left = 80;
-    private const int height = 60;
-    private const int spacing = 20;
-    private readonly int width = (Screen.width - (left * 2) - spacing) / 2;
-    private const int step = 80;
-    private string tdid;
-    private string oaid;
-
-    private void OnGUI()
-    {
-        int i = 0;
-        GUI.Box(new Rect(10, 10, Screen.width - 20, Screen.height - 20), "Demo Menu");
-
-        GUI.Label(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), tdid);
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "getTDID"))
-        {
-            tdid = TalkingDataSDK.GetDeviceId();
-        }
-
-#if UNITY_ANDROID
-        GUI.Label(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), oaid);
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "getOAID"))
-        {
-            oaid = TalkingDataSDK.GetOAID();
-        }
-#endif
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnPageBegin"))
-        {
-            TalkingDataSDK.OnPageBegin("home_page");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnPageEnd"))
-        {
-            TalkingDataSDK.OnPageEnd("home_page");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnReceiveDeepLink"))
-        {
-            TalkingDataSDK.OnReceiveDeepLink("https://www.talkingdata.com");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnRegister"))
-        {
-            TalkingDataProfile profile = TalkingDataProfile.CreateProfile();
-            profile.SetName("name01");
-            profile.SetType(TalkingDataProfileType.WEIXIN);
-            profile.SetGender(TalkingDataGender.MALE);
-            profile.SetAge(18);
-            profile.SetProperty1("property1");
-            profile.SetProperty2(2);
-            profile.SetProperty3(3.14);
-            profile.SetProperty4("property4");
-            profile.SetProperty5("property5");
-            profile.SetProperty6(0.618);
-            profile.SetProperty7("property7");
-            profile.SetProperty8("property8");
-            profile.SetProperty9(9.8);
-            profile.SetProperty10("property10");
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-                { "key", "value" }
-            };
-            TalkingDataSDK.OnRegister("user01", profile, "123456", eventValue);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnLogin"))
-        {
-            TalkingDataProfile profile = TalkingDataProfile.CreateProfile();
-            profile.SetName("name01");
-            profile.SetType(TalkingDataProfileType.WEIXIN);
-            profile.SetGender(TalkingDataGender.MALE);
-            profile.SetAge(18);
-            profile.SetProperty1("property1");
-            profile.SetProperty2(2);
-            profile.SetProperty3(3.14);
-            profile.SetProperty4("property4");
-            profile.SetProperty5("property5");
-            profile.SetProperty6(0.618);
-            profile.SetProperty7("property7");
-            profile.SetProperty8("property8");
-            profile.SetProperty9(9.8);
-            profile.SetProperty10("property10");
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-                { "key", "value" }
-            };
-            TalkingDataSDK.OnLogin("user01", profile, eventValue);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnProfileUpdate"))
-        {
-            TalkingDataProfile profile = TalkingDataProfile.CreateProfile();
-            profile.SetName("name01");
-            profile.SetType(TalkingDataProfileType.WEIXIN);
-            profile.SetGender(TalkingDataGender.MALE);
-            profile.SetAge(18);
-            profile.SetProperty1("property1");
-            profile.SetProperty2(2);
-            profile.SetProperty3(3.14);
-            profile.SetProperty4("property4");
-            profile.SetProperty5("property5");
-            profile.SetProperty6(0.618);
-            profile.SetProperty7("property7");
-            profile.SetProperty8("property8");
-            profile.SetProperty9(9.8);
-            profile.SetProperty10("property10");
-            TalkingDataSDK.OnProfileUpdate(profile);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnCreateCard"))
-        {
-            TalkingDataSDK.OnCreateCard("user01", "支付宝", "支付宝账号123456789");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnFavorite"))
-        {
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-                { "key", "value" }
-            };
-            TalkingDataSDK.OnFavorite("服装", "2019新款", eventValue);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnShare"))
-        {
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-                { "key", "value" }
-            };
-            TalkingDataSDK.OnShare("user01", "课程", eventValue);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnPunch"))
-        {
-            TalkingDataSDK.OnPunch("user01", "签到0023");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnSearch"))
-        {
-            TalkingDataSearch search = TalkingDataSearch.CreateSearch();
-            search.SetCategory("类型");
-            search.SetContent("内容");
-#if TD_RETAIL
-            search.SetItemId("商品ID");
-            search.SetItemLocationId("location12314");
-#endif
-#if TD_TOUR
-            search.SetDestination("目的地");
-            search.SetOrigin("出发地");
-            search.SetStartDate(1565176907309);
-            search.SetEndDate(1565176908309);
-#endif
-            TalkingDataSDK.OnSearch(search);
-        }
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_ONLINEEDU
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnContact"))
-        {
-            TalkingDataSDK.OnContact("user01", "联系平台内容");
-        }
-#endif
-
-#if TD_GAME || TD_TOUR || TD_ONLINEEDU || TD_READING || TD_OTHER
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnPay"))
-        {
-            TalkingDataSDK.OnPay("user01", "order01", 1077600, "CNY", "Apple Pay", "item01", 2);
-        }
-#endif
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_ONLINEEDU
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnChargeBack"))
-        {
-            TalkingDataSDK.OnChargeBack("user01", "order01", "7天无理由退货", "仅退款");
-        }
-#endif
-
-#if TD_FINANCE || TD_ONLINEEDU
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnReservation"))
-        {
-            TalkingDataSDK.OnReservation("user01", "AdTracking_123456", "借贷类", 12, "商品信息");
-        }
-#endif
-
-#if TD_RETAIL || TD_TOUR
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnBooking"))
-        {
-            TalkingDataSDK.OnBooking("user01", "002391", "电子", 123, "商品信息");
-        }
-#endif
-
-#if TD_RETAIL
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnViewItem"))
-        {
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-                { "key", "value" }
-            };
-            TalkingDataSDK.OnViewItem("A1660", "手机", "iPhone 7", 538800, eventValue);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnAddItemToShoppingCart"))
-        {
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-                { "key", "value" }
-            };
-            TalkingDataSDK.OnAddItemToShoppingCart("MLH12CH", "电脑", "MacBook Pro", 1388800, 1, eventValue);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnViewShoppingCart"))
-        {
-            TalkingDataShoppingCart shoppingCart = TalkingDataShoppingCart.CreateShoppingCart();
-            if (shoppingCart != null)
-            {
-                shoppingCart.AddItem("A1660", "手机", "iPhone 7", 538800, 2);
-                shoppingCart.AddItem("MLH12CH", "电脑", "MacBook Pro", 1388800, 1);
-                TalkingDataSDK.OnViewShoppingCart(shoppingCart);
-            }
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnPlaceOrder"))
-        {
-            TalkingDataOrder order = TalkingDataOrder.CreateOrder("order01", 2466400, "CNY");
-            order.AddItem("A1660", "手机", "iPhone 7", 538800, 2);
-            order.AddItem("MLH12CH", "电脑", "MacBook Pro", 1388800, 1);
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-                { "key", "value" }
-            };
-            TalkingDataSDK.OnPlaceOrder(order, "user01", eventValue);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnOrderPaySucc"))
-        {
-            TalkingDataOrder order = TalkingDataOrder.CreateOrder("order01", 2466400, "CNY");
-            order.AddItem("A1660", "手机", "iPhone 7", 538800, 2);
-            order.AddItem("MLH12CH", "电脑", "MacBook Pro", 1388800, 1);
-            TalkingDataSDK.OnOrderPaySucc(order, "AliPay", "user01");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnCancelOrder"))
-        {
-            TalkingDataOrder order = TalkingDataOrder.CreateOrder("order01", 2466400, "CNY");
-            order.AddItem("A1660", "手机", "iPhone 7", 538800, 2);
-            order.AddItem("MLH12CH", "电脑", "MacBook Pro", 1388800, 1);
-            TalkingDataSDK.OnCancelOrder(order);
-        }
-#endif
-
-#if TD_FINANCE
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnCredit"))
-        {
-            TalkingDataSDK.OnCredit("user01", 123456, "授信详情为......");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnTransaction"))
-        {
-            TalkingDataTransaction transaction = TalkingDataTransaction.CreateTransaction();
-            transaction.SetTransactionId("AdTracking_123456");
-            transaction.SetCategory("定期");
-            transaction.SetAmount(3222);
-            transaction.SetPersonA("张三");
-            transaction.SetPersonB("金融平台");
-            transaction.SetStartDate(1565176907309);
-            transaction.SetEndDate(1565176908309);
-            transaction.SetCurrencyType("CNY");
-            transaction.SetContent("交易详情为......");
-            TalkingDataSDK.OnTransaction("user01", transaction);
-        }
-#endif
-
-#if TD_GAME
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnCreateRole"))
-        {
-            TalkingDataSDK.OnCreateRole("role01");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnLevelPass"))
-        {
-            TalkingDataSDK.OnLevelPass("user01", "AdTracking_123456");
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnGuideFinished"))
-        {
-            TalkingDataSDK.OnGuideFinished("user01", "新手教程顺利通过");
-        }
-#endif
-
-#if TD_ONLINEEDU
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnLearn"))
-        {
-            TalkingDataSDK.OnLearn("user01", "成人教育第一节", 1501234567890, 20);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnPreviewFinished"))
-        {
-            TalkingDataSDK.OnPreviewFinished("user01", "基础课程试听结束");
-        }
-#endif
-
-#if TD_READING
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnRead"))
-        {
-            TalkingDataSDK.OnRead("user01", "西游记第一章", 1501234567890, 20);
-        }
-
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnFreeFinished"))
-        {
-            TalkingDataSDK.OnFreeFinished("user01", "免费章节阅读结束");
-        }
-#endif
-
-#if TD_GAME || TD_ONLINEEDU
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnAchievementUnlock"))
-        {
-            TalkingDataSDK.OnAchievementUnlock("user01", "AdTracking_123456");
-        }
-#endif
-
-#if TD_FINANCE || TD_TOUR || TD_OTHER
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnBrowse"))
-        {
-            TalkingDataSDK.OnBrowse("user01", "详情页page1", 1501234567890, 20);
-        }
-#endif
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_OTHER
-        if (GUI.Button(new Rect(left + i % 2 * (width + spacing), top + step * (i++ / 2), width, height), "OnTrialFinished"))
-        {
-            TalkingDataSDK.OnTrialFinished("user01", "试用体验结束");
-        }
-#endif
-
-        if (GUI.Button(new Rect(left, top + (step * i++), width, height), "OnEvent"))
-        {
-            Dictionary<string, object> dic = new Dictionary<string, object>
-            {
-                { "StringValue", "Pi" },
-                { "NumberValue", 3.14 }
-            };
-            Dictionary<string, object> eventValue = new Dictionary<string, object>
-            {
-                { "key", "value" }
-            };
-            TalkingDataSDK.OnEvent("action_id", dic, eventValue);
-        }
-    }
-
-    void Start()
-    {
-        Debug.Log("Start");
-        // TalkingDataSDK.SetVerboseLogDisable();
-        TalkingDataSDKConfig config = TalkingDataSDKConfig.CreateConfig();
-        config.SetIMEIAndMEIDEnabled(false)//不允许收集IMEI和MEID
-                .SetMACEnabled(false)//不允许收集MAC
-                .SetAppListEnabled(false)//不允许收集应用列表
-                .SetLocationEnabled(false)//不允许收集位置信息
-                .SetWifiEnabled(false);//不允许收集网络信息
-        TalkingDataSDK.SetConfig(config);
-        TalkingDataSDK.BackgroundSessionEnabled();
-        TalkingDataSDK.InitSDK("your_app_id", "your_channel_id", "your_custom_parameter");
-        TalkingDataSDK.StartA();
-    }
-
-    void Update()
-    {
-        if (Input.GetKey(KeyCode.Escape))
-        {
-            Application.Quit();
-        }
-    }
-
-    void OnDestroy()
-    {
-        Debug.Log("onDestroy");
-        TalkingDataSDK.OnPause();
-    }
-
-    void Awake()
-    {
-        Debug.Log("Awake");
-    }
-
-    void OnEnable()
-    {
-        Debug.Log("OnEnable");
-    }
-
-    void OnDisable()
-    {
-        Debug.Log("OnDisable");
-    }
-}

+ 0 - 71
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataOrder.cs

@@ -1,71 +0,0 @@
-using UnityEngine;
-
-
-#if TD_RETAIL
-public class TalkingDataOrder
-{
-#if UNITY_ANDROID
-    public AndroidJavaObject javaObj;
-#endif
-
-#if UNITY_IPHONE
-    private string orderId;
-    private int total;
-    private string currencyType;
-    private string items = "";
-#endif
-
-    public static TalkingDataOrder CreateOrder(string orderId, int total, string currencyType)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            TalkingDataOrder order = new TalkingDataOrder();
-#if UNITY_ANDROID
-            AndroidJavaClass javaClass = new AndroidJavaClass("com.tendcloud.tenddata.TalkingDataOrder");
-            order.javaObj = javaClass.CallStatic<AndroidJavaObject>("createOrder", orderId, total, currencyType);
-#endif
-#if UNITY_IPHONE
-            order.orderId = orderId;
-            order.total = total;
-            order.currencyType = currencyType;
-#endif
-            return order;
-        }
-        return null;
-    }
-
-    public TalkingDataOrder AddItem(string itemId, string category, string name, int unitPrice, int amount)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("addItem", itemId, category, name, unitPrice, amount);
-            }
-#endif
-#if UNITY_IPHONE
-            string item = "{\"itemId\":\"" + itemId + "\",\"category\":\"" + category + "\",\"name\":\"" + name + "\",\"unitPrice\":" + unitPrice + ",\"amount\":" + amount + "}";
-            if (items.Length > 0)
-            {
-                items += ",";
-            }
-            items += item;
-#endif
-        }
-        return this;
-    }
-
-#if UNITY_IPHONE
-    public override string ToString()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            string orderStr = "{\"orderId\":\"" + orderId + "\",\"total\":" + total + ",\"currencyType\":\"" + currencyType + "\",\"items\":[" + items + "]}";
-            return orderStr;
-        }
-        return null;
-    }
-#endif
-}
-#endif

+ 0 - 468
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataProfile.cs

@@ -1,468 +0,0 @@
-using UnityEngine;
-
-
-public enum TalkingDataProfileType
-{
-    ANONYMOUS   = 0,
-    REGISTERED  = 1,
-    SINA_WEIBO  = 2,
-    QQ          = 3,
-    QQ_WEIBO    = 4,
-    ND91        = 5,
-    WEIXIN      = 6,
-    TYPE1       = 11,
-    TYPE2       = 12,
-    TYPE3       = 13,
-    TYPE4       = 14,
-    TYPE5       = 15,
-    TYPE6       = 16,
-    TYPE7       = 17,
-    TYPE8       = 18,
-    TYPE9       = 19,
-    TYPE10      = 20
-}
-
-
-public enum TalkingDataGender
-{
-    UNKNOWN     = 0,
-    MALE        = 1,
-    FEMALE      = 2
-}
-
-
-public class TalkingDataProfile
-{
-#if UNITY_ANDROID
-    public AndroidJavaObject javaObj;
-#endif
-
-#if UNITY_IPHONE
-    private string name;
-    private TalkingDataProfileType type;
-    private TalkingDataGender gender;
-    private int age;
-    private object property1;
-    private object property2;
-    private object property3;
-    private object property4;
-    private object property5;
-    private object property6;
-    private object property7;
-    private object property8;
-    private object property9;
-    private object property10;
-#endif
-
-    public static TalkingDataProfile CreateProfile()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            TalkingDataProfile profile = new TalkingDataProfile();
-#if UNITY_ANDROID
-            AndroidJavaClass javaClass = new AndroidJavaClass("com.tendcloud.tenddata.TalkingDataProfile");
-            profile.javaObj = javaClass.CallStatic<AndroidJavaObject>("createProfile");
-#endif
-            return profile;
-        }
-        return null;
-    }
-
-    // 账户名称
-    public TalkingDataProfile SetName(string name)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setName", name);
-            }
-#endif
-#if UNITY_IPHONE
-            this.name = name;
-#endif
-        }
-        return this;
-    }
-
-    // 账户类型
-    public TalkingDataProfile SetType(TalkingDataProfileType type)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaClass enumClass = new AndroidJavaClass("com.tendcloud.tenddata.TalkingDataProfileType");
-                AndroidJavaObject typeObj = enumClass.CallStatic<AndroidJavaObject>("valueOf", type.ToString());
-                javaObj.Call<AndroidJavaObject>("setType", typeObj);
-            }
-#endif
-#if UNITY_IPHONE
-            this.type = type;
-#endif
-        }
-        return this;
-    }
-
-    // 性别
-    public TalkingDataProfile SetGender(TalkingDataGender gender)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaClass enumClass = new AndroidJavaClass("com.tendcloud.tenddata.TalkingDataGender");
-                AndroidJavaObject genderObj = enumClass.CallStatic<AndroidJavaObject>("valueOf", gender.ToString());
-                javaObj.Call<AndroidJavaObject>("setGender", genderObj);
-            }
-#endif
-#if UNITY_IPHONE
-            this.gender = gender;
-#endif
-        }
-        return this;
-    }
-
-    // 年龄
-    public TalkingDataProfile SetAge(int age)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setAge", age);
-            }
-#endif
-#if UNITY_IPHONE
-            this.age = age;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性1
-    public TalkingDataProfile SetProperty1(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty1", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property1 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性2
-    public TalkingDataProfile SetProperty2(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty2", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property2 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性3
-    public TalkingDataProfile SetProperty3(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty3", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property3 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性4
-    public TalkingDataProfile SetProperty4(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty4", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property4 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性5
-    public TalkingDataProfile SetProperty5(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty5", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property5 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性6
-    public TalkingDataProfile SetProperty6(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty6", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property6 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性7
-    public TalkingDataProfile SetProperty7(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty7", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property7 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性8
-    public TalkingDataProfile SetProperty8(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty8", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property8 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性9
-    public TalkingDataProfile SetProperty9(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty9", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property9 = property;
-#endif
-        }
-        return this;
-    }
-
-    // 用户属性10
-    public TalkingDataProfile SetProperty10(object property)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                AndroidJavaObject androidObject = AndroidJavaObjectFromObject(property);
-                javaObj.Call<AndroidJavaObject>("setProperty10", androidObject);
-            }
-#endif
-#if UNITY_IPHONE
-            this.property10 = property;
-#endif
-        }
-        return this;
-    }
-
-#if UNITY_ANDROID
-    private AndroidJavaObject AndroidJavaObjectFromObject(object parameter)
-    {
-        AndroidJavaObject androidObject = null;
-        if (parameter is string)
-        {
-            androidObject = new AndroidJavaObject("java.lang.String", parameter);
-        }
-        else if (parameter is byte || parameter is sbyte)
-        {
-            androidObject = new AndroidJavaObject("java.lang.Byte", parameter);
-        }
-        else if (parameter is short || parameter is ushort)
-        {
-            androidObject = new AndroidJavaObject("java.lang.Short", parameter);
-        }
-        else if (parameter is int || parameter is uint)
-        {
-            androidObject = new AndroidJavaObject("java.lang.Integer", parameter);
-        }
-        else if (parameter is long || parameter is ulong)
-        {
-            androidObject = new AndroidJavaObject("java.lang.Long", parameter);
-        }
-        else if (parameter is float)
-        {
-            androidObject = new AndroidJavaObject("java.lang.Float", parameter);
-        }
-        else if (parameter is double)
-        {
-            androidObject = new AndroidJavaObject("java.lang.Double", parameter);
-        }
-        return androidObject;
-    }
-#endif
-
-#if UNITY_IPHONE
-    public override string ToString()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            string profileStr = "{\"name\":\"" + name + "\""
-                              + ",\"type\":" + (int)type
-                              + ",\"gender\":" + (int)gender
-                              + ",\"age\":" + age;
-            if (property1 is string)
-            {
-                profileStr += ",\"property1\":\"" + property1 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property1\":" + property1;
-            }
-            if (property2 is string)
-            {
-                profileStr += ",\"property2\":\"" + property2 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property2\":" + property2;
-            }
-            if (property3 is string)
-            {
-                profileStr += ",\"property3\":\"" + property3 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property3\":" + property3;
-            }
-            if (property4 is string)
-            {
-                profileStr += ",\"property4\":\"" + property4 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property4\":" + property4;
-            }
-            if (property5 is string)
-            {
-                profileStr += ",\"property5\":\"" + property5 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property5\":" + property5;
-            }
-            if (property6 is string)
-            {
-                profileStr += ",\"property6\":\"" + property6 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property6\":" + property6;
-            }
-            if (property7 is string)
-            {
-                profileStr += ",\"property7\":\"" + property7 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property7\":" + property7;
-            }
-            if (property8 is string)
-            {
-                profileStr += ",\"property8\":\"" + property8 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property8\":" + property8;
-            }
-            if (property9 is string)
-            {
-                profileStr += ",\"property9\":\"" + property9 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property9\":" + property9;
-            }
-            if (property10 is string)
-            {
-                profileStr += ",\"property10\":\"" + property10 + "\"";
-            }
-            else
-            {
-                profileStr += ",\"property10\":" + property10;
-            }
-            profileStr += "}";
-            return profileStr;
-        }
-        return null;
-    }
-#endif
-}

+ 0 - 11
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataProfile.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: WnsZ4SmoVipELlyOjwAfMmTYo/CeBMP1I1BYiBLdoAgCS74hSysz7C0schwM
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 1066
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSDK.cs

@@ -1,1066 +0,0 @@
-// version: 5.0.4
-
-using UnityEngine;
-using System.Collections.Generic;
-#if UNITY_ANDROID
-using System;
-#endif
-#if UNITY_IPHONE
-using System.Runtime.InteropServices;
-using System.Collections;
-#endif
-
-
-public static class TalkingDataSDK
-{
-#if UNITY_ANDROID
-    private static readonly string TALKINGDATA_CLASS = "com.tendcloud.tenddata.TalkingDataSDK";
-    private static AndroidJavaClass talkingdataClass;
-    private static AndroidJavaClass unityPlayerClass;
-#endif
-
-#if UNITY_IPHONE
-    [DllImport("__Internal")]
-    private static extern void TDInitSDK(string appId, string channelId, string custom);
-
-    [DllImport("__Internal")]
-    private static extern void TDStartA();
-
-    [DllImport("__Internal")]
-    private static extern void TDBackgroundSessionEnabled();
-
-    [DllImport("__Internal")]
-    private static extern string TDGetDeviceId();
-
-    [DllImport("__Internal")] 
-    private static extern void TDSetVerboseLogDisable();
-
-    [DllImport("__Internal")]
-    private static extern void TDSetLocation(double latitude, double longitude);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnPageBegin(string pageName);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnPageEnd(string pageName);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnReceiveDeepLink(string url);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnRegister(string profileId, string profileJson, string invitationCode, string eventValueJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnLogin(string profileId, string profileJson, string eventValueJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnProfileUpdate(string profileJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnCreateCard(string profileId, string method, string content);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnFavorite(string category, string content, string eventValueJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnShare(string profileId, string content, string eventValueJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnPunch(string profileId, string punchId);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnSearch(string searchJson);
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_ONLINEEDU
-    [DllImport("__Internal")]
-    private static extern void TDOnContact(string profileId, string content);
-#endif
-
-#if TD_GAME || TD_TOUR || TD_ONLINEEDU || TD_READING || TD_OTHER
-    [DllImport("__Internal")]
-    private static extern void TDOnPay(string profileId, string orderId, int amount, string currencyType, string paymentType, string itemId, int itemCount);
-#endif
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_ONLINEEDU
-    [DllImport("__Internal")]
-    private static extern void TDOnChargeBack(string profileId, string orderId, string reason, string type);
-#endif
-
-#if TD_FINANCE || TD_ONLINEEDU
-    [DllImport("__Internal")]
-    private static extern void TDOnReservation(string profileId, string reservationId, string category, int amount, string term);
-#endif
-
-#if TD_RETAIL || TD_TOUR
-    [DllImport("__Internal")]
-    private static extern void TDOnBooking(string profileId, string bookingId, string category, int amount, string content);
-#endif
-
-#if TD_RETAIL
-    [DllImport("__Internal")]
-    private static extern void TDOnViewItem(string itemId, string category, string name, int unitPrice, string eventValueJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnAddItemToShoppingCart(string item, string category, string name, int unitPrice, int amount, string eventValueJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnViewShoppingCart(string shoppingCartJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnPlaceOrder(string orderJson, string profileId, string eventValueJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnOrderPaySucc(string orderJson, string paymentType, string profileId);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnCancelOrder(string orderJson);
-#endif
-
-#if TD_FINANCE
-    [DllImport("__Internal")]
-    private static extern void TDOnCredit(string profileId, int amount, string content);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnTransaction(string profileId, string transactionJson);
-#endif
-
-#if TD_GAME
-    [DllImport("__Internal")]
-    private static extern void TDOnCreateRole(string name);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnLevelPass(string profileId, string levelId);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnGuideFinished(string profileId, string content);
-#endif
-
-#if TD_ONLINEEDU
-    [DllImport("__Internal")]
-    private static extern void TDOnLearn(string profileId, string course, long begin, int duration);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnPreviewFinished(string profileId, string content);
-#endif
-
-#if TD_READING
-    [DllImport("__Internal")]
-    private static extern void TDOnRead(string profileId, string book, long begin, int duration);
-
-    [DllImport("__Internal")]
-    private static extern void TDOnFreeFinished(string profileId, string content);
-#endif
-
-#if TD_GAME || TD_ONLINEEDU
-    [DllImport("__Internal")]
-    private static extern void TDOnAchievementUnlock(string profileId, string achievementId);
-#endif
-
-#if TD_FINANCE || TD_TOUR || TD_OTHER
-    [DllImport("__Internal")]
-    private static extern void TDOnBrowse(string profileId, string content, long begin, int duration);
-#endif
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_OTHER
-    [DllImport("__Internal")]
-    private static extern void TDOnTrialFinished(string profileId, string content);
-#endif
-
-    [DllImport("__Internal")]
-    private static extern void TDOnEvent(string eventId, string parameters, string eventValueJson);
-
-    [DllImport("__Internal")]
-    private static extern void TDSetGlobalKV(string key, string strVal, double numVal);
-
-    [DllImport("__Internal")]
-    private static extern void TDRemoveGlobalKV(string key);
-#endif
-
-#if UNITY_ANDROID
-    private static AndroidJavaObject GetCurrentActivity()
-    {
-        if (unityPlayerClass == null)
-        {
-            unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
-        }
-        AndroidJavaObject activity = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity");
-        return activity;
-    }
-
-    private static AndroidJavaObject DictionaryToAndroidMap(Dictionary<string, object> parameters)
-    {
-        AndroidJavaObject map = null;
-        if (parameters != null && parameters.Count > 0)
-        {
-            int count = parameters.Count;
-            map = new AndroidJavaObject("java.util.HashMap", count);
-            IntPtr method_Put = AndroidJNIHelper.GetMethodID(map.GetRawClass(), "put", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
-            object[] args = new object[2];
-            foreach (KeyValuePair<string, object> kvp in parameters)
-            {
-                args[0] = new AndroidJavaObject("java.lang.String", kvp.Key);
-                args[1] = typeof(string).IsInstanceOfType(kvp.Value)
-                    ? new AndroidJavaObject("java.lang.String", kvp.Value)
-                    : new AndroidJavaObject("java.lang.Double", "" + kvp.Value);
-                AndroidJNI.CallObjectMethod(map.GetRawObject(), method_Put, AndroidJNIHelper.CreateJNIArgArray(args));
-            }
-        }
-        return map;
-    }
-#endif
-
-#if UNITY_IPHONE
-    private static string DictionaryToJSONString(Dictionary<string, object> parameters)
-    {
-        string json = null;
-        if (parameters != null && parameters.Count > 0)
-        {
-            json = "{";
-            foreach (KeyValuePair<string, object> kvp in parameters)
-            {
-                if (kvp.Value is string)
-                {
-                    json += "\"" + kvp.Key + "\":\"" + kvp.Value + "\",";
-                }
-                else
-                {
-                    try
-                    {
-                        double tmp = System.Convert.ToDouble(kvp.Value);
-                        json += "\"" + kvp.Key + "\":" + tmp + ",";
-                    }
-                    catch (System.Exception)
-                    {
-                    }
-                }
-            }
-            json = json.TrimEnd(',');
-            json += "}";
-        }
-        return json;
-    }
-#endif
-
-    public static void SetConfig(TalkingDataSDKConfig config)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass == null)
-            {
-                talkingdataClass = new AndroidJavaClass(TALKINGDATA_CLASS);
-            }
-            talkingdataClass.CallStatic("setConfig", config.javaObj);
-#endif
-        }
-    }
-
-    public static void InitSDK(string appId, string channelId, string custom)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            Debug.Log("TalkingData Unity SDK.");
-#if UNITY_ANDROID
-            using (AndroidJavaClass dz = new AndroidJavaClass("com.tendcloud.tenddata.dz"))
-            {
-                dz.SetStatic("a", 2);
-            }
-            if (talkingdataClass == null)
-            {
-                talkingdataClass = new AndroidJavaClass(TALKINGDATA_CLASS);
-            }
-            AndroidJavaObject activity = GetCurrentActivity();
-            talkingdataClass.CallStatic("initSDK", activity, appId, channelId, custom);
-#endif
-#if UNITY_IPHONE
-            TDInitSDK(appId, channelId, custom);
-#endif
-        }
-    }
-
-    public static void StartA()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject activity = GetCurrentActivity();
-                talkingdataClass.CallStatic("startA", activity);
-                talkingdataClass.CallStatic("onResume", activity);
-            }
-#endif
-#if UNITY_IPHONE
-            TDStartA();
-#endif
-        }
-    }
-
-    public static void OnPause()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onPause", GetCurrentActivity());
-            }
-#endif
-        }
-    }
-
-    public static void BackgroundSessionEnabled()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_IPHONE
-            TDBackgroundSessionEnabled();
-#endif
-        }
-    }
-
-    private static string deviceId = null;
-    public static string GetDeviceId()
-    {
-        if (deviceId == null && Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass == null)
-            {
-                talkingdataClass = new AndroidJavaClass(TALKINGDATA_CLASS);
-            }
-            deviceId = talkingdataClass.CallStatic<string>("getDeviceId", GetCurrentActivity());
-#endif
-#if UNITY_IPHONE
-            deviceId = TDGetDeviceId();
-#endif
-        }
-        return deviceId;
-    }
-
-    private static string oaid = null;
-    public static string GetOAID()
-    {
-        if (oaid == null && Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass == null)
-            {
-                talkingdataClass = new AndroidJavaClass(TALKINGDATA_CLASS);
-            }
-            oaid = talkingdataClass.CallStatic<string>("getOAID", GetCurrentActivity());
-#endif
-        }
-        return oaid;
-    }
-
-    public static void SetVerboseLogDisable()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass == null)
-            {
-                talkingdataClass = new AndroidJavaClass(TALKINGDATA_CLASS);
-            }
-            talkingdataClass.CallStatic("setVerboseLogDisable");
-#endif
-#if UNITY_IPHONE
-            TDSetVerboseLogDisable();
-#endif
-        }
-    }
-
-    public static void SetLocation(double latitude, double longitude)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_IPHONE
-            TDSetLocation(latitude, longitude);
-#endif
-        }
-    }
-
-    public static void OnPageBegin(string pageName)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onPageBegin", GetCurrentActivity(), pageName);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnPageBegin(pageName);
-#endif
-        }
-    }
-
-    public static void OnPageEnd(string pageName)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onPageEnd", GetCurrentActivity(), pageName);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnPageEnd(pageName);
-#endif
-        }
-    }
-
-    public static void OnReceiveDeepLink(string url)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onReceiveDeepLink", url);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnReceiveDeepLink(url);
-#endif
-        }
-    }
-
-    public static void OnRegister(string profileId, TalkingDataProfile profile, string invitationCode, Dictionary<string, object> eventValue)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject eventValueMap = DictionaryToAndroidMap(eventValue);
-                talkingdataClass.CallStatic("onRegister", profileId, profile.javaObj, invitationCode, eventValueMap);
-                if (eventValueMap != null)
-                {
-                    eventValueMap.Dispose();
-                }
-            }
-#endif
-#if UNITY_IPHONE
-            string eventValueJson = DictionaryToJSONString(eventValue);
-            TDOnRegister(profileId, profile.ToString(), invitationCode, eventValueJson);
-#endif
-        }
-    }
-
-    public static void OnLogin(string profileId, TalkingDataProfile profile, Dictionary<string, object> eventValue)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject eventValueMap = DictionaryToAndroidMap(eventValue);
-                talkingdataClass.CallStatic("onLogin", profileId, profile.javaObj, eventValueMap);
-                if (eventValueMap != null)
-                {
-                    eventValueMap.Dispose();
-                }
-            }
-#endif
-#if UNITY_IPHONE
-            string eventValueJson = DictionaryToJSONString(eventValue);
-            TDOnLogin(profileId, profile.ToString(), eventValueJson);
-#endif
-        }
-    }
-
-    public static void OnProfileUpdate(TalkingDataProfile profile)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onProfileUpdate", profile.javaObj);
-            }
-#endif
-#if  UNITY_IPHONE
-            TDOnProfileUpdate(profile.ToString());
-#endif
-        }
-    }
-    public static void OnCreateCard(string profileId, string method, string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onCreateCard", profileId, method, content);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnCreateCard(profileId, method, content);
-#endif
-        }
-    }
-
-    public static void OnFavorite(string category, string content, Dictionary<string, object> eventValue)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject eventValueMap = DictionaryToAndroidMap(eventValue);
-                talkingdataClass.CallStatic("onFavorite", category, content, eventValueMap);
-                if (eventValueMap != null)
-                {
-                    eventValueMap.Dispose();
-                }
-            }
-#endif
-#if UNITY_IPHONE
-            string eventValueJson = DictionaryToJSONString(eventValue);
-            TDOnFavorite(category, content, eventValueJson);
-#endif
-        }
-    }
-
-    public static void OnShare(string profileId, string content, Dictionary<string, object> eventValue)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject eventValueMap = DictionaryToAndroidMap(eventValue);
-                talkingdataClass.CallStatic("onShare", profileId, content, eventValueMap);
-                if (eventValueMap != null)
-                {
-                    eventValueMap.Dispose();
-                }
-            }
-#endif
-#if UNITY_IPHONE
-            string eventValueJson = DictionaryToJSONString(eventValue);
-            TDOnShare(profileId, content, eventValueJson);
-#endif
-        }
-    }
-
-    public static void OnPunch(string profileId, string punchId)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onPunch", profileId, punchId);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnPunch(profileId, punchId);
-#endif
-        }
-    }
-
-    public static void OnSearch(TalkingDataSearch search)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onSearch", search.javaObj);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnSearch(search.ToString());
-#endif
-        }
-    }
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_ONLINEEDU
-    public static void OnContact(string profileId, string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onContact", profileId, content);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnContact(profileId, content);
-#endif
-        }
-    }
-#endif
-
-#if TD_GAME || TD_TOUR || TD_ONLINEEDU || TD_READING || TD_OTHER
-    public static void OnPay(string profileId, string orderId, int amount, string currencyType, string paymentType, string itemId, int itemCount)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onPay", profileId, orderId, amount, currencyType, paymentType, itemId, itemCount);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnPay(profileId, orderId, amount, currencyType, paymentType, itemId, itemCount);
-#endif
-        }
-    }
-#endif
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_ONLINEEDU
-    public static void OnChargeBack(string profileId, string orderId, string reason, string type)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onChargeBack", profileId, orderId, reason, type);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnChargeBack(profileId, orderId, reason, type);
-#endif
-        }
-    }
-#endif
-
-#if TD_FINANCE || TD_ONLINEEDU
-    public static void OnReservation(string profileId, string reservationId, string category, int amount, string term)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onReservation", profileId, reservationId, category, amount, term);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnReservation(profileId, reservationId, category, amount, term);
-#endif
-        }
-    }
-#endif
-
-#if TD_RETAIL || TD_TOUR
-    public static void OnBooking(string profileId, string bookingId, string category, int amount, string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onBooking", profileId, bookingId, category, amount, content);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnBooking(profileId, bookingId, category, amount, content);
-#endif
-        }
-    }
-#endif
-
-#if TD_RETAIL
-    public static void OnViewItem(string itemId, string category, string name, int unitPrice, Dictionary<string, object> eventValue)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject eventValueMap = DictionaryToAndroidMap(eventValue);
-                talkingdataClass.CallStatic("onViewItem", itemId, category, name, unitPrice, eventValueMap);
-                if (eventValueMap != null)
-                {
-                    eventValueMap.Dispose();
-                }
-            }
-#endif
-#if UNITY_IPHONE
-            string eventValueJson = DictionaryToJSONString(eventValue);
-            TDOnViewItem(itemId, category, name, unitPrice, eventValueJson);
-#endif
-        }
-    }
-
-    public static void OnAddItemToShoppingCart(string itemId, string category, string name, int unitPrice, int amount, Dictionary<string, object> eventValue)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject eventValueMap = DictionaryToAndroidMap(eventValue);
-                talkingdataClass.CallStatic("onAddItemToShoppingCart", itemId, category, name, unitPrice, amount, eventValueMap);
-                if (eventValueMap != null)
-                {
-                    eventValueMap.Dispose();
-                }
-            }
-#endif
-#if UNITY_IPHONE
-            string eventValueJson = DictionaryToJSONString(eventValue);
-            TDOnAddItemToShoppingCart(itemId, category, name, unitPrice, amount, eventValueJson);
-#endif
-        }
-    }
-
-    public static void OnViewShoppingCart(TalkingDataShoppingCart shoppingCart)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onViewShoppingCart", shoppingCart.javaObj);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnViewShoppingCart(shoppingCart.ToString());
-#endif
-        }
-    }
-
-    public static void OnPlaceOrder(TalkingDataOrder order, string profileId, Dictionary<string, object> eventValue)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject eventValueMap = DictionaryToAndroidMap(eventValue);
-                talkingdataClass.CallStatic("onPlaceOrder", order.javaObj, profileId, eventValueMap);
-                if (eventValueMap != null)
-                {
-                    eventValueMap.Dispose();
-                }
-            }
-#endif
-#if UNITY_IPHONE
-            string eventValueJson = DictionaryToJSONString(eventValue);
-            TDOnPlaceOrder(order.ToString(), profileId, eventValueJson);
-#endif
-        }
-    }
-
-    public static void OnOrderPaySucc(TalkingDataOrder order, string paymentType, string profileId)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onOrderPaySucc", order.javaObj, paymentType, profileId);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnOrderPaySucc(order.ToString(), paymentType, profileId);
-#endif
-        }
-    }
-
-    public static void OnCancelOrder(TalkingDataOrder order)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onCancelOrder", order.javaObj);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnCancelOrder(order.ToString());
-#endif
-        }
-    }
-#endif
-
-#if TD_FINANCE
-    public static void OnCredit(string profileId, int amount, string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onCredit", profileId, amount, content);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnCredit(profileId, amount, content);
-#endif
-        }
-    }
-
-    public static void OnTransaction(string profileId, TalkingDataTransaction transaction)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onTransaction", profileId, transaction.javaObj);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnTransaction(profileId, transaction.ToString());
-#endif
-        }
-    }
-#endif
-
-#if TD_GAME
-    public static void OnCreateRole(string name)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onCreateRole", name);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnCreateRole(name);
-#endif
-        }
-    }
-
-    public static void OnLevelPass(string profileId, string levelId)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onLevelPass", profileId, levelId);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnLevelPass(profileId, levelId);
-#endif
-        }
-    }
-
-    public static void OnGuideFinished(string profileId, string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onGuideFinished", profileId, content);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnGuideFinished(profileId, content);
-#endif
-        }
-    }
-#endif
-
-#if TD_ONLINEEDU
-    public static void OnLearn(string profileId, string course, long begin, int duration)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onLearn", profileId, course, begin, duration);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnLearn(profileId, course, begin, duration);
-#endif
-        }
-    }
-
-    public static void OnPreviewFinished(string profileId, string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onPreviewFinished", profileId, content);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnPreviewFinished(profileId, content);
-#endif
-        }
-    }
-#endif
-
-#if TD_READING
-    public static void OnRead(string profileId, string book, long begin, int duration)
-     {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onRead", profileId, book, begin, duration);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnRead(profileId, book, begin, duration);
-#endif
-        }
-    }
-
-    public static void OnFreeFinished(string profileId, string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onFreeFinished", profileId, content);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnFreeFinished(profileId, content);
-#endif
-        }
-    }
-#endif
-
-#if TD_GAME || TD_ONLINEEDU
-    public static void OnAchievementUnlock(string profileId, string achievementId)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onAchievementUnlock", profileId, achievementId);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnAchievementUnlock(profileId, achievementId);
-#endif
-        }
-    }
-#endif
-
-#if TD_FINANCE || TD_TOUR || TD_OTHER
-    public static void OnBrowse(string profileId, string content, long begin, int duration)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onBrowse", profileId, content, begin, duration);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnBrowse(profileId, content, begin, duration);
-#endif
-        }
-    }
-#endif
-
-#if TD_RETAIL || TD_FINANCE || TD_TOUR || TD_OTHER
-    public static void OnTrialFinished(string profileId, string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("onTrialFinished", profileId, content);
-            }
-#endif
-#if UNITY_IPHONE
-            TDOnTrialFinished(profileId, content);
-#endif
-        }
-    }
-#endif
-
-    public static void OnEvent(string eventId, Dictionary<string, object> parameters, Dictionary<string, object> eventValue)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject parametersMap = DictionaryToAndroidMap(parameters);
-                AndroidJavaObject eventValueMap = DictionaryToAndroidMap(eventValue);
-                talkingdataClass.CallStatic("onEvent", GetCurrentActivity(), eventId, parametersMap, eventValueMap);
-                if (parametersMap != null)
-                {
-                    parametersMap.Dispose();
-                }
-                if (eventValueMap != null)
-                {
-                    eventValueMap.Dispose();
-                }
-            }
-#endif
-#if UNITY_IPHONE
-            string parametersJson = DictionaryToJSONString(parameters);
-            string eventValueJson = DictionaryToJSONString(eventValue);
-            TDOnEvent(eventId, parametersJson, eventValueJson);
-#endif
-        }
-    }
-
-    public static void SetGlobalKV(string key, object val)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                AndroidJavaObject valObject = typeof(string).IsInstanceOfType(val)
-                                            ? new AndroidJavaObject("java.lang.String", val)
-                                            : new AndroidJavaObject("java.lang.Double", "" + val);
-                talkingdataClass.CallStatic("setGlobalKV", key, valObject);
-            }
-#endif
-#if UNITY_IPHONE
-            if (val is string)
-            {
-                string tmp = System.Convert.ToString(val);
-                TDSetGlobalKV(key, tmp, 0);
-            }
-            else
-            {
-                double tmp = System.Convert.ToDouble(val);
-                TDSetGlobalKV(key, null, tmp);
-            }
-#endif
-        }
-    }
-
-    public static void RemoveGlobalKV(string key)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (talkingdataClass != null)
-            {
-                talkingdataClass.CallStatic("removeGlobalKV", key);
-            }
-#endif
-#if UNITY_IPHONE
-            TDRemoveGlobalKV(key);
-#endif
-        }
-    }
-}

+ 0 - 11
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSDK.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: CH9OsH6kUnN53Bo8dS2tEdORBWShDjUiXAGnyZTxnvGuXH/OhEVII2XPgkHN
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 80
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSDKConfig.cs

@@ -1,80 +0,0 @@
-using UnityEngine;
-
-
-public class TalkingDataSDKConfig
-{
-    public AndroidJavaObject javaObj;
-
-    public static TalkingDataSDKConfig CreateConfig()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            TalkingDataSDKConfig config = new TalkingDataSDKConfig();
-#if UNITY_ANDROID
-            config.javaObj = new AndroidJavaObject("com.tendcloud.tenddata.TalkingDataSDKConfig");
-#endif
-            return config;
-        }
-        return null;
-    }
-
-    public TalkingDataSDKConfig SetIMEIAndMEIDEnabled(bool enabled)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            javaObj.Call<AndroidJavaObject>("setIMEIAndMEIDEnabled", enabled);
-#endif
-            return this;
-        }
-        return null;
-    }
-
-    public TalkingDataSDKConfig SetMACEnabled(bool enabled)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            javaObj.Call<AndroidJavaObject>("setMACEnabled", enabled);
-#endif
-            return this;
-        }
-        return null;
-    }
-
-    public TalkingDataSDKConfig SetAppListEnabled(bool enabled)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            javaObj.Call<AndroidJavaObject>("setAppListEnabled", enabled);
-#endif
-            return this;
-        }
-        return null;
-    }
-
-    public TalkingDataSDKConfig SetLocationEnabled(bool enabled)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            javaObj.Call<AndroidJavaObject>("setLocationEnabled", enabled);
-#endif
-            return this;
-        }
-        return null;
-    }
-
-    public TalkingDataSDKConfig SetWifiEnabled(bool enabled)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            javaObj.Call<AndroidJavaObject>("setWifiEnabled", enabled);
-#endif
-            return this;
-        }
-        return null;
-    }
-}

+ 0 - 11
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSDKConfig.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: WXtL5CmrBn6b7K/dXRdlliGWWHvMednLd2Hv9KXBkuCi+AfQp7huN8o2ora6
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 210
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSearch.cs

@@ -1,210 +0,0 @@
-using UnityEngine;
-
-
-public class TalkingDataSearch
-{
-#if UNITY_ANDROID
-    public AndroidJavaObject javaObj;
-#endif
-
-#if UNITY_IPHONE
-    private string category;
-    private string content;
-#if TD_RETAIL
-    private string itemId;
-    private string itemLocationId;
-#endif
-#if TD_TOUR
-    private string destination;
-    private string origin;
-    private long startDate;
-    private long endDate;
-#endif
-#endif
-
-    public static TalkingDataSearch CreateSearch()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            TalkingDataSearch search = new TalkingDataSearch();
-#if UNITY_ANDROID
-            AndroidJavaClass javaClass = new AndroidJavaClass("com.tendcloud.tenddata.TalkingDataSearch");
-            search.javaObj = javaClass.CallStatic<AndroidJavaObject>("createSearch");
-#endif
-            return search;
-        }
-        return null;
-    }
-
-    // 搜索分类
-    public TalkingDataSearch SetCategory(string category)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setCategory", category);
-            }
-#endif
-#if UNITY_IPHONE
-            this.category = category;
-#endif
-        }
-        return this;
-    }
-
-    // 搜索内容
-    public TalkingDataSearch SetContent(string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setContent", content);
-            }
-#endif
-#if UNITY_IPHONE
-            this.content = content;
-#endif
-        }
-        return this;
-    }
-
-#if TD_RETAIL
-    // 商品 ID(eg.酒店/汽车);至多64字符,支持数字+字母
-    public TalkingDataSearch SetItemId(string itemId)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setItemId", itemId);
-            }
-#endif
-#if UNITY_IPHONE
-            this.itemId = itemId;
-#endif
-        }
-        return this;
-    }
-
-    // 商品位置 ID(eg.求职招聘/教育行业);至多64字符,支持数字+字母
-    public TalkingDataSearch SetItemLocationId(string itemLocationId)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setItemLocationId", itemLocationId);
-            }
-#endif
-#if UNITY_IPHONE
-            this.itemLocationId = itemLocationId;
-#endif
-        }
-        return this;
-    }
-#endif
-
-#if TD_TOUR
-    // 目的地城市 ID;至多64字符,支持数字+字母
-    public TalkingDataSearch SetDestination(string destination)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setDestination", destination);
-            }
-#endif
-#if UNITY_IPHONE
-            this.destination = destination;
-#endif
-        }
-        return this;
-    }
-
-    // 出发地城市 ID;至多64字符,支持数字+字母
-    public TalkingDataSearch SetOrigin(string origin)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setOrigin", origin);
-            }
-#endif
-#if UNITY_IPHONE
-            this.origin = origin;
-#endif
-        }
-        return this;
-    }
-
-    // 业务事件起始日期(eg.航班出发日期)
-    public TalkingDataSearch SetStartDate(long startDate)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setStartDate", startDate);
-            }
-#endif
-#if UNITY_IPHONE
-            this.startDate = startDate;
-#endif
-        }
-        return this;
-    }
-
-    // 业务事件截止日期(eg.航班返程日期)
-    public TalkingDataSearch SetEndDate(long endDate)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setEndDate", endDate);
-            }
-#endif
-#if UNITY_IPHONE
-            this.endDate = endDate;
-#endif
-        }
-        return this;
-    }
-#endif
-
-#if UNITY_IPHONE
-    public override string ToString()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            string searchStr = "{\"category\":\"" + category + "\""
-                             + ",\"content\":\"" + content + "\""
-#if TD_RETAIL
-                             + ",\"itemId\":\"" + itemId + "\""
-                             + ",\"itemLocationId\":\"" + itemLocationId + "\""
-#endif
-#if TD_TOUR
-                             + ",\"destination\":\"" + destination + "\""
-                             + ",\"origin\":\"" + origin + "\""
-                             + ",\"startDate\":" + startDate
-                             + ",\"endDate\":" + endDate
-#endif
-                             + "}";
-            return searchStr;
-        }
-        return null;
-    }
-#endif
-}

+ 0 - 11
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataSearch.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: WXJNt3n8VCi/Y8BcyJD1D4QxcgOFoqHzR6elP/aiv5liSEs56XuwlO3+oe5K
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 63
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataShoppingCart.cs

@@ -1,63 +0,0 @@
-using UnityEngine;
-
-
-#if TD_RETAIL
-public class TalkingDataShoppingCart
-{
-#if UNITY_ANDROID
-    public AndroidJavaObject javaObj;
-#endif
-
-#if UNITY_IPHONE
-    private string items = "";
-#endif
-
-    public static TalkingDataShoppingCart CreateShoppingCart()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            TalkingDataShoppingCart shoppingCart = new TalkingDataShoppingCart();
-#if UNITY_ANDROID
-            AndroidJavaClass javaClass = new AndroidJavaClass("com.tendcloud.tenddata.TalkingDataShoppingCart");
-            shoppingCart.javaObj = javaClass.CallStatic<AndroidJavaObject>("createShoppingCart");
-#endif
-            return shoppingCart;
-        }
-        return null;
-    }
-
-    public TalkingDataShoppingCart AddItem(string itemId, string category, string name, int unitPrice, int amount)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("addItem", itemId, category, name, unitPrice, amount);
-            }
-#endif
-#if UNITY_IPHONE
-            string item = "{\"itemId\":\"" + itemId + "\",\"category\":\"" + category + "\",\"name\":\"" + name + "\",\"unitPrice\":" + unitPrice + ",\"amount\":" + amount + "}";
-            if (items.Length > 0)
-            {
-                items += ",";
-            }
-            items += item;
-#endif
-        }
-        return this;
-    }
-
-#if UNITY_IPHONE
-    public override string ToString()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            string orderStr = "{\"items\":[" + items + "]}";
-            return orderStr;
-        }
-        return null;
-    }
-#endif
-}
-#endif

+ 0 - 11
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataShoppingCart.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: DShL4S2kAS73tH5SOApmSCIaDTpHPxDtpmPSdAcX7oZn6Mx1SVXhD0b0W4J0
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 220
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataTransaction.cs

@@ -1,220 +0,0 @@
-using UnityEngine;
-
-
-#if TD_FINANCE
-public class TalkingDataTransaction
-{
-#if UNITY_ANDROID
-    public AndroidJavaObject javaObj;
-#endif
-
-#if UNITY_IPHONE
-    private string transactionId;
-    private string category;
-    private int amount;
-    private string personA;
-    private string personB;
-    private long startDate;
-    private long endDate;
-    private string currencyType;
-    private string content;
-#endif
-
-    public static TalkingDataTransaction CreateTransaction()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            TalkingDataTransaction transaction = new TalkingDataTransaction();
-#if UNITY_ANDROID
-            AndroidJavaClass javaClass = new AndroidJavaClass("com.tendcloud.tenddata.TalkingDataTransaction");
-            transaction.javaObj = javaClass.CallStatic<AndroidJavaObject>("createTransaction");
-#endif
-            return transaction;
-        }
-        return null;
-    }
-
-    // 交易ID
-    public TalkingDataTransaction SetTransactionId(string transactionId)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setTransactionId", transactionId);
-            }
-#endif
-#if UNITY_IPHONE
-            this.transactionId = transactionId;
-#endif
-        }
-        return this;
-    }
-
-    // 交易分类
-    public TalkingDataTransaction SetCategory(string category)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setCategory", category);
-            }
-#endif
-#if UNITY_IPHONE
-            this.category = category;
-#endif
-        }
-        return this;
-    }
-
-    // 交易额
-    public TalkingDataTransaction SetAmount(int amount)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setAmount", amount);
-            }
-#endif
-#if UNITY_IPHONE
-            this.amount = amount;
-#endif
-        }
-        return this;
-    }
-
-    // 交易甲方
-    public TalkingDataTransaction SetPersonA(string personA)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setPersonA", personA);
-            }
-#endif
-#if UNITY_IPHONE
-            this.personA = personA;
-#endif
-        }
-        return this;
-    }
-
-    // 交易乙方
-    public TalkingDataTransaction SetPersonB(string personB)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setPersonB", personB);
-            }
-#endif
-#if UNITY_IPHONE
-            this.personB = personB;
-#endif
-        }
-        return this;
-    }
-
-    // 交易起始Unix时间戳。单位:毫秒
-    public TalkingDataTransaction SetStartDate(long startDate)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setStartDate", startDate);
-            }
-#endif
-#if UNITY_IPHONE
-            this.startDate = startDate;
-#endif
-        }
-        return this;
-    }
-
-    // 交易终止Unix时间戳。单位:毫秒
-    public TalkingDataTransaction SetEndDate(long endDate)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setEndDate", endDate);
-            }
-#endif
-#if UNITY_IPHONE
-            this.endDate = endDate;
-#endif
-        }
-        return this;
-    }
-
-    // 货币类型
-    public TalkingDataTransaction SetCurrencyType(string currencyType)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setCurrencyType", currencyType);
-            }
-#endif
-#if UNITY_IPHONE
-            this.currencyType = currencyType;
-#endif
-        }
-        return this;
-    }
-
-    // 交易详情
-    public TalkingDataTransaction SetContent(string content)
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-#if UNITY_ANDROID
-            if (javaObj != null)
-            {
-                javaObj.Call<AndroidJavaObject>("setContent", content);
-            }
-#endif
-#if UNITY_IPHONE
-            this.content = content;
-#endif
-        }
-        return this;
-    }
-
-#if UNITY_IPHONE
-    public override string ToString()
-    {
-        if (Application.platform != RuntimePlatform.OSXEditor && Application.platform != RuntimePlatform.WindowsEditor)
-        {
-            string transactionStr = "{\"transactionId\":\"" + transactionId + "\""
-                                  + ",\"category\":\"" + category + "\""
-                                  + ",\"amount\":" + amount
-                                  + ",\"personA\":\"" + personA + "\""
-                                  + ",\"personB\":\"" + personB + "\""
-                                  + ",\"startDate\":" + startDate
-                                  + ",\"endDate\":" + endDate
-                                  + ",\"currencyType\":\"" + currencyType + "\""
-                                  + ",\"content\":\"" + content + "\""
-                                  + "}";
-            return transactionStr;
-        }
-        return null;
-    }
-#endif
-}
-#endif

+ 0 - 11
Assets/Scripts/ThirdParty/TalkingDataScripts/TalkingDataTransaction.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: Bi8dvCyvVy5dVTCHE6ZvgxXMWE8Mw7Lqin3HmXqMWWu5Wmqq2iYJZ+h2l7if
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 11 - 0
Assets/Settings/rpAsset.asset

@@ -73,6 +73,13 @@ MonoBehaviour:
   m_ColorGradingLutSize: 32
   m_UseFastSRGBLinearConversion: 0
   m_SupportDataDrivenLensFlare: 1
+  m_PostProcessPreserveAlpha: 0
+  m_GPUResidentDrawerStat: 0
+  m_GRDEnableCollectTransform: 1
+  m_GRDEnableCollectLightMap: 0
+  m_GRDEnableCollectLightProbe: 0
+  m_GRDEnableCollectMotionVector: 0
+  m_BRGShaderVariantStorageStripType: 0
   m_ShadowType: 1
   m_LocalShadowsSupported: 0
   m_LocalShadowsAtlasResolution: 256
@@ -82,6 +89,7 @@ MonoBehaviour:
   m_Textures:
     blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3}
     bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3}
+  testURPForceGRD: 0
   m_PrefilteringModeMainLightShadows: 3
   m_PrefilteringModeAdditionalLight: 3
   m_PrefilteringModeAdditionalLightShadows: 2
@@ -110,5 +118,8 @@ MonoBehaviour:
   m_PrefilterSoftShadows: 0
   m_PrefilterScreenCoord: 1
   m_PrefilterNativeRenderPass: 1
+  m_PrefilterPreserveAlpha: 1
+  m_PrefilterUseLightmapSingle: 0
+  m_PrefilterBRGVariantStorageStrip: 0
   m_ShaderVariantLogLevel: 0
   m_ShadowCascades: 0

二進制
Excel2Json/Excel/ChouKa.xlsx


二進制
Excel2Json/Excel/Language.xlsx


二進制
Excel2Json/Excel/修仙游戏数据规划表.xlsx


+ 7 - 0
Packages/com.singularitygroup.hotreload/.gitignore

@@ -0,0 +1,7 @@
+# do not include HotReloadSettingsObject inside the upm package.
+#  (needs to be editable by the user)
+#  (only created on first Android build)
+/Resources/HotReloadSettingsObject.asset
+/Resources/HotReloadSettingsObject.asset.meta
+/Resources.meta
+

+ 1 - 8
Packages/com.singularitygroup.hotreload/Editor/Window/GUI/Tabs/HotReloadRunTab.cs

@@ -901,14 +901,7 @@ namespace SingularityGroup.HotReload.Editor {
         }
         
         internal static void RenderIndieLicenseInfo(GUIStyle style) {
-            string message;
-            if (EditorCodePatcher.licenseType == UnityLicenseType.UnityPersonalPlus) {
-                message = "Unity Plus users require an Indie license. Please upgrade your license on our website.";
-            } else if (EditorCodePatcher.licenseType == UnityLicenseType.UnityPro) {
-                message = "Unity Pro/Enterprise users from company with your number of employees require an Indie license. Please upgrade your license on our website.";
-            } else {
-                return;
-            }
+            string message = "Unity Plus users require an Indie license. Please upgrade your license on our website.";
             GUILayout.Space(8);
             using (new EditorGUILayout.HorizontalScope()) {
                 EditorGUILayout.HelpBox(message, MessageType.Info);

+ 2 - 2
Packages/com.singularitygroup.hotreload/Runtime/PackageConst.cs

@@ -8,10 +8,10 @@ namespace SingularityGroup.HotReload {
         public static bool IsAssetStoreBuild => true;
 
         
-        public const string Version = "1.13.7";
+        public const string Version = "1.13.8";
         // Never higher than Version
         // Used for the download
-        public const string ServerVersion = "1.13.7";
+        public const string ServerVersion = "1.13.8";
         public const string PackageName = "com.singularitygroup.hotreload";
         public const string LibraryCachePath = "Library/" + PackageName;
         public const string ConfigFileName = "hot-reload-config.json";

+ 1 - 1
Packages/com.singularitygroup.hotreload/package.json

@@ -12,7 +12,7 @@
     "sg",
     "singularity"
   ],
-  "version": "1.13.7",
+  "version": "1.13.8",
   "dependencies": {
     "com.unity.ugui": "1.0.0",
     "com.unity.modules.unitywebrequest": "1.0.0"

+ 5 - 5
Packages/manifest.json

@@ -16,17 +16,17 @@
     "com.unity.entities": "1.0.16",
     "com.unity.entities.graphics": "1.0.16",
     "com.unity.feature.2d": "2.0.1",
-    "com.unity.ide.rider": "3.0.31",
+    "com.unity.ide.rider": "3.0.35",
     "com.unity.ide.visualstudio": "2.0.22",
     "com.unity.ide.vscode": "1.2.5",
-    "com.unity.memoryprofiler": "1.1.1",
+    "com.unity.memoryprofiler": "1.1.6",
     "com.unity.recorder": "4.0.3",
-    "com.unity.render-pipelines.universal": "14.0.11",
+    "com.unity.render-pipelines.universal": "14.1.0",
     "com.unity.test-framework": "1.1.33",
-    "com.unity.timeline": "1.7.6",
+    "com.unity.timeline": "1.7.7",
     "com.unity.ugui": "1.0.0",
     "com.unity.visualscripting": "1.9.4",
-    "com.unity.xr.legacyinputhelpers": "2.1.10",
+    "com.unity.xr.legacyinputhelpers": "2.1.12",
     "com.unity.modules.ai": "1.0.0",
     "com.unity.modules.androidjni": "1.0.0",
     "com.unity.modules.animation": "1.0.0",

+ 49 - 46
Packages/packages-lock.json

@@ -70,11 +70,11 @@
       }
     },
     "com.unity.2d.animation": {
-      "version": "9.1.2",
+      "version": "9.2.0",
       "depth": 1,
       "source": "registry",
       "dependencies": {
-        "com.unity.2d.common": "8.0.3",
+        "com.unity.2d.common": "8.1.0",
         "com.unity.2d.sprite": "1.0.0",
         "com.unity.collections": "1.1.0",
         "com.unity.modules.animation": "1.0.0",
@@ -83,19 +83,19 @@
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.2d.aseprite": {
-      "version": "1.1.6",
+      "version": "1.1.8",
       "depth": 1,
       "source": "registry",
       "dependencies": {
-        "com.unity.2d.sprite": "1.0.0",
         "com.unity.2d.common": "6.0.6",
+        "com.unity.2d.sprite": "1.0.0",
         "com.unity.mathematics": "1.2.6",
         "com.unity.modules.animation": "1.0.0"
       },
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.2d.common": {
-      "version": "8.0.3",
+      "version": "8.1.0",
       "depth": 2,
       "source": "registry",
       "dependencies": {
@@ -108,20 +108,22 @@
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.2d.pixel-perfect": {
-      "version": "5.0.3",
+      "version": "5.1.0",
       "depth": 1,
       "source": "registry",
-      "dependencies": {},
+      "dependencies": {
+        "com.unity.modules.imgui": "1.0.0"
+      },
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.2d.psdimporter": {
-      "version": "8.0.5",
+      "version": "8.1.0",
       "depth": 1,
       "source": "registry",
       "dependencies": {
-        "com.unity.2d.animation": "9.1.1",
-        "com.unity.2d.common": "8.0.2",
-        "com.unity.2d.sprite": "1.0.0"
+        "com.unity.2d.common": "8.1.0",
+        "com.unity.2d.sprite": "1.0.0",
+        "com.unity.2d.animation": "9.2.0"
       },
       "url": "https://packages.tuanjie.cn"
     },
@@ -132,12 +134,12 @@
       "dependencies": {}
     },
     "com.unity.2d.spriteshape": {
-      "version": "9.0.4",
+      "version": "9.1.0",
       "depth": 1,
       "source": "registry",
       "dependencies": {
+        "com.unity.2d.common": "8.1.0",
         "com.unity.mathematics": "1.1.0",
-        "com.unity.2d.common": "8.0.3",
         "com.unity.modules.physics2d": "1.0.0"
       },
       "url": "https://packages.tuanjie.cn"
@@ -152,13 +154,13 @@
       }
     },
     "com.unity.2d.tilemap.extras": {
-      "version": "3.1.2",
+      "version": "3.1.3",
       "depth": 1,
       "source": "registry",
       "dependencies": {
-        "com.unity.modules.tilemap": "1.0.0",
-        "com.unity.2d.tilemap": "1.0.0",
         "com.unity.ugui": "1.0.0",
+        "com.unity.2d.tilemap": "1.0.0",
+        "com.unity.modules.tilemap": "1.0.0",
         "com.unity.modules.jsonserialize": "1.0.0"
       },
       "url": "https://packages.tuanjie.cn"
@@ -183,7 +185,7 @@
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.burst": {
-      "version": "1.8.17",
+      "version": "1.8.19",
       "depth": 1,
       "source": "registry",
       "dependencies": {
@@ -266,18 +268,18 @@
       "depth": 0,
       "source": "builtin",
       "dependencies": {
-        "com.unity.2d.animation": "9.1.2",
-        "com.unity.2d.pixel-perfect": "5.0.3",
-        "com.unity.2d.psdimporter": "8.0.5",
+        "com.unity.2d.animation": "9.2.0",
+        "com.unity.2d.pixel-perfect": "5.1.0",
+        "com.unity.2d.psdimporter": "8.1.0",
         "com.unity.2d.sprite": "1.0.0",
-        "com.unity.2d.spriteshape": "9.0.4",
+        "com.unity.2d.spriteshape": "9.1.0",
         "com.unity.2d.tilemap": "1.0.0",
-        "com.unity.2d.tilemap.extras": "3.1.2",
-        "com.unity.2d.aseprite": "1.1.6"
+        "com.unity.2d.tilemap.extras": "3.1.3",
+        "com.unity.2d.aseprite": "1.1.8"
       }
     },
     "com.unity.ide.rider": {
-      "version": "3.0.31",
+      "version": "3.0.35",
       "depth": 0,
       "source": "registry",
       "dependencies": {
@@ -309,11 +311,15 @@
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.memoryprofiler": {
-      "version": "1.1.1",
+      "version": "1.1.6",
       "depth": 0,
       "source": "registry",
       "dependencies": {
-        "com.unity.editorcoroutines": "1.0.0"
+        "com.unity.editorcoroutines": "1.0.0",
+        "com.unity.collections": "1.2.3",
+        "com.unity.mathematics": "1.2.1",
+        "com.unity.burst": "1.8.0",
+        "com.unity.profiling.core": "1.0.0"
       },
       "url": "https://packages.tuanjie.cn"
     },
@@ -348,7 +354,7 @@
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.render-pipelines.core": {
-      "version": "14.0.11",
+      "version": "14.1.0",
       "depth": 1,
       "source": "builtin",
       "dependencies": {
@@ -359,14 +365,14 @@
       }
     },
     "com.unity.render-pipelines.universal": {
-      "version": "14.0.11",
+      "version": "14.1.0",
       "depth": 0,
       "source": "builtin",
       "dependencies": {
         "com.unity.mathematics": "1.2.1",
         "com.unity.burst": "1.8.9",
-        "com.unity.render-pipelines.core": "14.0.11",
-        "com.unity.shadergraph": "14.0.11",
+        "com.unity.render-pipelines.core": "14.1.0",
+        "com.unity.shadergraph": "14.1.0",
         "com.unity.render-pipelines.universal-config": "14.0.9"
       }
     },
@@ -379,7 +385,7 @@
       }
     },
     "com.unity.scriptablebuildpipeline": {
-      "version": "1.21.24",
+      "version": "1.21.25",
       "depth": 1,
       "source": "registry",
       "dependencies": {},
@@ -403,33 +409,33 @@
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.services.analytics": {
-      "version": "5.0.0",
+      "version": "6.0.3",
       "depth": 1,
       "source": "registry",
       "dependencies": {
         "com.unity.ugui": "1.0.0",
-        "com.unity.modules.jsonserialize": "1.0.0",
-        "com.unity.services.core": "1.10.1"
+        "com.unity.services.core": "1.12.4",
+        "com.unity.modules.jsonserialize": "1.0.0"
       },
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.services.core": {
-      "version": "1.12.5",
+      "version": "1.14.0",
       "depth": 2,
       "source": "registry",
       "dependencies": {
-        "com.unity.modules.unitywebrequest": "1.0.0",
+        "com.unity.modules.androidjni": "1.0.0",
         "com.unity.nuget.newtonsoft-json": "3.2.1",
-        "com.unity.modules.androidjni": "1.0.0"
+        "com.unity.modules.unitywebrequest": "1.0.0"
       },
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.shadergraph": {
-      "version": "14.0.11",
+      "version": "14.1.0",
       "depth": 1,
       "source": "builtin",
       "dependencies": {
-        "com.unity.render-pipelines.core": "14.0.11",
+        "com.unity.render-pipelines.core": "14.1.0",
         "com.unity.searcher": "4.9.2"
       }
     },
@@ -464,13 +470,13 @@
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.timeline": {
-      "version": "1.7.6",
+      "version": "1.7.7",
       "depth": 0,
       "source": "registry",
       "dependencies": {
+        "com.unity.modules.audio": "1.0.0",
         "com.unity.modules.director": "1.0.0",
         "com.unity.modules.animation": "1.0.0",
-        "com.unity.modules.audio": "1.0.0",
         "com.unity.modules.particlesystem": "1.0.0"
       },
       "url": "https://packages.tuanjie.cn"
@@ -495,7 +501,7 @@
       "url": "https://packages.tuanjie.cn"
     },
     "com.unity.xr.legacyinputhelpers": {
-      "version": "2.1.10",
+      "version": "2.1.12",
       "depth": 0,
       "source": "registry",
       "dependencies": {
@@ -526,10 +532,7 @@
       "version": "1.0.0",
       "depth": 0,
       "source": "builtin",
-      "dependencies": {
-        "com.unity.modules.audio": "1.0.0",
-        "com.unity.modules.animation": "1.0.0"
-      }
+      "dependencies": {}
     },
     "com.unity.modules.audio": {
       "version": "1.0.0",

+ 3 - 3
ProjectSettings/ProjectVersion.txt

@@ -1,3 +1,3 @@
-m_EditorVersion: 2022.3.48t6
-m_EditorVersionWithRevision: 2022.3.48t6 (b281c1694403)
-m_TuanjieEditorVersion: 1.4.3
+m_EditorVersion: 2022.3.61t8
+m_EditorVersionWithRevision: 2022.3.61t8 (4d1c4dc33c81)
+m_TuanjieEditorVersion: 1.6.7

+ 32 - 0
ProjectSettings/ThreadInfoSettings.asset

@@ -0,0 +1,32 @@
+%YAML 1.1
+%TAG !u! tag:yousandi.cn,2023:
+--- !u!9625 &1
+ThreadInfoSettings:
+  m_ObjectHideFlags: 0
+  m_TargetPlatform: 0
+  m_HMIAndroidPlatformThreadInfoSettings:
+    m_BasePlatformThreadInfoSettings:
+      m_MainThreadPriority: -2
+      m_JobWorkerThreadPriority: 0
+      m_GFXDeviceWorkerThreadPriority: -2
+      m_MainThreadAffinity: 2
+      m_JobWorkerThreadAffinity: 2
+      m_GFXDeviceWorkerThreadAffinity: 2
+    m_AndroidChoreographerThreadPriority: 0
+    m_AndroidChoreographerThreadAffinity: 0
+  m_EmbeddedLinuxPlatformThreadInfoSettings:
+    m_BasePlatformThreadInfoSettings:
+      m_MainThreadPriority: 0
+      m_JobWorkerThreadPriority: 0
+      m_GFXDeviceWorkerThreadPriority: -2
+      m_MainThreadAffinity: 2
+      m_JobWorkerThreadAffinity: 0
+      m_GFXDeviceWorkerThreadAffinity: 2
+  m_QnxPlatformThreadInfoSettings:
+    m_BasePlatformThreadInfoSettings:
+      m_MainThreadPriority: 10
+      m_JobWorkerThreadPriority: 10
+      m_GFXDeviceWorkerThreadPriority: 50
+      m_MainThreadAffinity: 2
+      m_JobWorkerThreadAffinity: 0
+      m_GFXDeviceWorkerThreadAffinity: 2

部分文件因文件數量過多而無法顯示