Browse Source

Merge branch 'main' of ssh://192.168.0.8:29418/xianjing into hy_ru

gdl_123 5 months ago
parent
commit
476fb6dce6

+ 1 - 0
.gitignore

@@ -99,3 +99,4 @@ assetbundleBak*
 /Local/ios
 /ProjectSettings/Packages
 /Build/zy
+/Local

+ 24 - 0
Assets/Editor/AssetBundle/AbNameHxInfo.cs

@@ -0,0 +1,24 @@
+using System.Collections.Generic;
+using UnityEngine;
+
+
+[System.Serializable]
+public class abNameInfo
+{
+    [SerializeField]
+    public string BaseName = "";
+    [SerializeField]
+    public string HxName = "";
+}
+
+
+[System.Serializable]
+public class AbNameHxInfo
+{
+    [SerializeField]
+    public string HxKey = "";
+
+    [SerializeField]
+    public List<abNameInfo> Infos = new List<abNameInfo>();
+}
+

+ 11 - 0
Assets/Editor/AssetBundle/AbNameHxInfo.cs.meta

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

+ 102 - 10
Assets/Editor/AssetBundle/CheckHotUpdateRes.cs

@@ -7,6 +7,10 @@ using System;
 using System.Reflection;
 using System.IO;
 using System.IO.Compression;
+using System.Security.Cryptography;
+using System.Text;
+using System.Linq;
+
 
 public class CheckHotUpdateRes : EditorWindow
 {
@@ -32,6 +36,15 @@ public class CheckHotUpdateRes : EditorWindow
         }
     }
 
+    [MenuItem("AssetBundle/创建最大Version")]
+    public static void CreateVersion()
+    {
+#if UNITY_IOS
+        FileHelper.WirteStringToFile(Application.dataPath+ "/StreamingAssets/unityRes/afivs", "99.99.99.99");
+#else
+        FileHelper.WirteStringToFile(Application.dataPath + "/StreamingAssets/AssetsAndroid/Version", "99.99.99.99");
+#endif
+    }
 
     [MenuItem("AssetBundle/热更相关")]
     public static void OpenCheckHotUpdateWindow()
@@ -58,7 +71,7 @@ public class CheckHotUpdateRes : EditorWindow
         //Debug.Log();
         info = AssetDatabase.LoadAssetAtPath<CheckResWindowInfo>(path);
         info.InitTags();
-        curResInfo = info.GetResInfo();
+         curResInfo = info.GetResInfo();
         if (curResInfo == null)
         {
             curResInfo = new ResInfo();
@@ -79,6 +92,7 @@ public class CheckHotUpdateRes : EditorWindow
         DrowSelectFolder("旧版本文件", "选择文件路径", "选择旧版本资源MD5文件路径", ref curResInfo.OldPath);
         DrowSelectFolder("新版本文件", "选择文件路径", "选择新版本资源MD5文件路径", ref curResInfo.NewPath);   
         DrowSelectFolder("需跟新文件输出路径", "选择文件路径", "选择需跟新文件输出路径", ref curResInfo.OutputPath);
+        DrowSelectFolder("ab包名基础名字文件路径", "选择文件路径", "选择ab包名基础名字文件路径", ref curResInfo.BaseNameFileInfoPath);
         DrawInfo();
         DrawCheckBtn();
 
@@ -213,6 +227,11 @@ public class CheckHotUpdateRes : EditorWindow
         GUILayout.BeginHorizontal();
         GUILayout.Space(60);
         curResInfo.IsIgnore =GUILayout.Toggle(curResInfo.IsIgnore, "是否开启忽略某些文件") ;
+        GUILayout.Space(60);
+        if (GUILayout.Button("制作混淆信息"))
+        {
+           MakeAbHxNameAssets();
+        }
         GUILayout.EndHorizontal();
     }
     private List<VersionInfoData> SerizlizeResList(byte[] data)
@@ -242,6 +261,14 @@ public class CheckHotUpdateRes : EditorWindow
 
         List<VersionInfoData> newlist = GetInfoDatas(newPath);
         ChangeResMD5(newlist);
+
+        Dictionary<string, string> abNamedic = null;
+        if (curResInfo.IsHx)
+        {
+            abNamedic= GetCurInfoAbNameInfos();
+        }
+
+
         if (Oldlist != null && newlist != null)
         {
             int size = newlist.Count;
@@ -256,22 +283,26 @@ public class CheckHotUpdateRes : EditorWindow
 
                 bool isignore = false;
 
-               
-                RG_Ignore_Info rG_Ignore_Info = curResInfo.Rg_Essential_Infos.FindFirst(it => !it.IsIgnore && newlist[i].FullName.Contains(it.Field));
+                string baseName = newlist[i].FullName; ;
+                RG_Ignore_Info rG_Ignore_Info = null;
+                if (curResInfo.IsHx && abNamedic.ContainsKey(newlist[i].FullName))
+                {
+
+                    baseName = abNamedic[newlist[i].FullName];
+                }
+                rG_Ignore_Info = curResInfo.Rg_Essential_Infos.FindFirst(it => !it.IsIgnore && baseName.Contains(it.Field));
 
                 bool isEssential = rG_Ignore_Info != null;
 
                 if (curResInfo.IsIgnore && !isEssential)
                 {
-                    string igstr = curResInfo.IgnoreFiles.FindFirst(it => it == newlist[i].FullName);
-                    rG_Ignore_Info = curResInfo.rG_Ignore_Infos.FindFirst(it => it.IsIgnore && newlist[i].FullName.Contains( it.Field));
+                    string igstr = curResInfo.IgnoreFiles.FindFirst(it => it == baseName);
+                    rG_Ignore_Info = curResInfo.rG_Ignore_Infos.FindFirst(it => it.IsIgnore && baseName.Contains( it.Field));
                     if (!string.IsNullOrEmpty(igstr) || rG_Ignore_Info != null)
                     {
                         isignore = true;
-                        Debug.Log("=========忽略=============" + newlist[i].FullName);
-                    }
-
-                    
+                        Debug.Log("=========忽略=============" + baseName);
+                    }                   
                 }
 
                 VersionInfoData ores = Oldlist.FindFirst(it=> it.FullName == newlist[i].FullName);
@@ -285,7 +316,7 @@ public class CheckHotUpdateRes : EditorWindow
                     }
                     else if (newlist[i].MD5 != ores.MD5)
                     {
-                        Debug.Log($"新 {newlist[i].FullName} MD5=[{newlist[i].MD5}]");
+                        Debug.Log($"新 {newlist[i].FullName} MD5=[{newlist[i].MD5}]   Base = [{baseName}]");
                         Debug.Log($"旧 {ores.FullName} MD5=[{ores.MD5}]");
                         needResList.Add(newlist[i]);
                     }
@@ -294,6 +325,7 @@ public class CheckHotUpdateRes : EditorWindow
                 }
                 else
                 {
+                    Debug.Log($"新 {newlist[i].FullName} MD5=[{newlist[i].MD5}]   Base = [{baseName}]");
                     needResList.Add(newlist[i]);
                 }
             }
@@ -443,4 +475,64 @@ public class CheckHotUpdateRes : EditorWindow
         string datapath = $"{Application.dataPath}/Content/Icons/";
         FileHelper.CopyDir(datapath, curResInfo.OutputPath, "meta");
     }
+
+
+
+    public static string GetABFileName(string abName,string s_ObscureKey)
+    {
+
+        try
+        {
+            using (var md5 = new MD5CryptoServiceProvider())
+            {
+                UTF8Encoding encoding = new UTF8Encoding(false);
+                byte[] bytes = encoding.GetBytes((abName + s_ObscureKey).ToLower());
+                bytes = md5.ComputeHash(bytes);
+                StringBuilder sb = new StringBuilder();
+                for (int i = 0; i < bytes.Length; i++)
+                {
+                    sb.Append(bytes[i].ToString("x2"));
+                }
+                return sb.ToString();
+            }
+        }
+        catch (Exception e)
+        {
+            Debug.LogException(e);
+        }
+
+        return abName;
+    }
+
+
+    private void MakeAbHxNameAssets()
+    {
+        List<VersionInfoData> baseData = GetInfoDatas(curResInfo.BaseNameFileInfoPath);
+        AbNameHxInfo hxInfo = curResInfo.abNameHxInfo == null? new AbNameHxInfo():curResInfo.abNameHxInfo;
+        if (hxInfo.Infos == null)
+            hxInfo.Infos = new List<abNameInfo>();
+        foreach (var item in baseData)
+        {
+            string hxName = GetABFileName(item.FullName,curResInfo.hxKey);
+            abNameInfo nameInfo = new abNameInfo() 
+            {
+                BaseName = item.FullName,
+                HxName = hxName,
+            };
+            hxInfo.Infos.Add(nameInfo);
+        }
+        curResInfo.abNameHxInfo = hxInfo;
+    }
+
+    public Dictionary<string,string> GetCurInfoAbNameInfos()
+    {
+        Dictionary<string, string> abinfos = new Dictionary<string, string>();
+
+        foreach (var item in curResInfo.abNameHxInfo.Infos)
+        {
+            abinfos.Add(item.HxName,item.BaseName);
+        }
+
+        return abinfos;
+    }
 }

+ 6 - 0
Assets/Editor/AssetBundle/ResInfo.cs

@@ -25,6 +25,7 @@ public class ResInfo : ScriptableObject
 
     public string OutputPath = "C:/Users/Administrator/Desktop/My/项目/1";
 
+    public string BaseNameFileInfoPath = "";
     public string VersionFileName = "Version";
 
     public string mainfestFileName = "mainfest";
@@ -37,4 +38,9 @@ public class ResInfo : ScriptableObject
     public int ChangeNum;
     public bool IsIgnore = true;
     public BuildLanguage Language = BuildLanguage.cn;
+
+    public bool IsHx = false;
+    public string hxKey = "";
+
+    public AbNameHxInfo abNameHxInfo;
 }

+ 3 - 2
Assets/Lua/Enum/ProtoMsgId.lua

@@ -721,8 +721,9 @@
 	SC_CLIMBING_TOWER_WJ_BOSS_NTF       = 6065,  -- SCClimbingTowerWjBossNtf **SCClimbingTowerWjBossNtf **login.proto ** [SCClimbingTowerWjBossNtf]
 	CS_CLIMBING_TOWER_WJ_BUFF_REQ       = 6066,  -- CSClimbingTowerWjBuffReq **CSClimbingTowerWjBuffReq **login.proto **game [CSClimbingTowerWjBuffReq]
 	SC_CLIMBING_TOWER_WJ_BUFF_ACK       = 6067,  -- SCClimbingTowerWjBuffAck **SCClimbingTowerWjBuffAck **login.proto ** [SCClimbingTowerWjBuffAck]
-	CS_PAY_ORDER_COMPLETE_REQ         = 6072,		--	CSPayOrderCompleteReq **CSPayOrderCompleteReq **login.proto **game [SSPayOrderCompleteReq]
-	SC_PAY_ORDER_COMPLETE_ACK         = 6073,		--	SCPayOrderCompleteAck **SCPayOrderCompleteAck **login.proto **game [SSPayOrderCompleteAck]
+	CS_PAY_ORDER_COMPLETE_REQ         = 6072,		--	CSPayOrderCompleteReq **CSPayOrderCompleteReq **login.proto **game [CSPayOrderCompleteReq]
+	SC_PAY_ORDER_COMPLETE_ACK         = 6073,		--	SCPayOrderCompleteAck **SCPayOrderCompleteAck **login.proto **game [SCPayOrderCompleteAck]
+	SC_DNY_SDK_NTF       = 6076,		--	SCDnySdkNtf **SCDnySdkNtf **login.proto ** [SCDnySdkNtf]
 
     }
     return ProtoMsgId

+ 185 - 0
Assets/Lua/Managers/SDKEventReportMgr.lua

@@ -0,0 +1,185 @@
+
+
+
+local SDKEventReportMgr = class("SDKEventReportMgr")
+
+
+
+
+SDKEventReportMgr.EventType = 
+{
+Activate 					=1,			--激活					Activate
+Register					=2,			--注册	````			Register
+login						=3,			--登录					login
+Create_character			=4,			--创角					Create_character
+Share						=5,			--分享					Share
+Complete_guide				=6,			--完成新手引导			Complete_guide
+Invite_friend				=7,			--邀请好友				Invite_friend
+level_5						=8,			--升到5级				level_5
+level_10					=9,			--升到10级				level_10
+level_20					=10,		--升到20级				level_20
+First_payment				=11,		--首次支付				First_payment
+Pay							=12,		--支付					Pay
+Cumulative_99				=13,		--累计充值$9.9			Cumulative_99
+Cumulative_199				=14,		--累计充值$19.9			Cumulative_199
+Join_guild					=15,		--加入公会				Join_guild
+days_2_activity				=16,		--次日活跃				days_2_activity
+days_3_activity				=17,		--3日活跃				days_3_activity
+days_7_activity				=18,		--7日活跃				days_7_activity
+days_14_activity			=19,		--14日活跃				days_14_activity
+days_30_activity			=20,		--30日活跃				days_30_activity
+Achieve_80_weekly_activity	=21,		--周活跃达到80			Achieve_80_weekly_activity
+Receive_2days_bonus			=22,		--领取2日签到奖励		Receive_2days_bonus
+Receive_3days_bonus			=23,		--领取3日签到奖励		Receive_3days_bonus
+Receive_8days_bonus			=24,		--领取8日签到奖励		Receive_8days_bonus
+Receive_30days_bonus		=25,		--领取30日签到奖励		Receive_30days_bonus
+}
+
+--[[
+安卓
+
+adjust_token:e49hr2fre4u8
+adjus事件上报及对应的token:
+激活			5wxghs	
+注册			xrodh1	
+完成新手引导		lnss3e	
+首次支付			507qdg	
+加入公会			7ic4s0	
+创角			spnuiu	
+分享			a4ab6g	
+邀请好友			i42999	
+支付			u8uojo]]
+SDKEventReportMgr.SDKEventCfg =
+{
+["Android"] = 
+{
+	[SDKEventReportMgr.EventType.Activate					]={event="Activate"						,	eventToken="5wxghs"				,					},
+	[SDKEventReportMgr.EventType.Register					]={event="Register"						,	eventToken="xrodh1"				,					},
+	[SDKEventReportMgr.EventType.login						]={event="login"						,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Create_character			]={event="Create_character"				,	eventToken="spnuiu"				,					},
+	[SDKEventReportMgr.EventType.Share						]={event="Share"						,	eventToken="a4ab6g"				,					},
+	[SDKEventReportMgr.EventType.Complete_guide				]={event="Complete_guide"				,	eventToken="lnss3e"				,					},
+	[SDKEventReportMgr.EventType.Invite_friend				]={event="Invite_friend"				,	eventToken="i42999"				,					},
+	[SDKEventReportMgr.EventType.level_5					]={event="level_5"						,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.level_10					]={event="level_10"						,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.level_20					]={event="level_20"						,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.First_payment				]={event="First_payment"				,	eventToken="507qdg"				,					},
+	[SDKEventReportMgr.EventType.Pay						]={event="Pay"							,	eventToken="u8uojo"				,					},
+	[SDKEventReportMgr.EventType.Cumulative_99				]={event="Cumulative_99"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Cumulative_199				]={event="Cumulative_199"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Join_guild					]={event="Join_guild"					,	eventToken="7ic4s0"				,					},
+	[SDKEventReportMgr.EventType.days_2_activity			]={event="days_2_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.days_3_activity			]={event="days_3_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.days_7_activity			]={event="days_7_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.days_14_activity			]={event="days_14_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.days_30_activity			]={event="days_30_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Achieve_80_weekly_activity	]={event="Achieve_80_weekly_activity"	,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Receive_2days_bonus		]={event="Receive_2days_bonus"			,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Receive_3days_bonus		]={event="Receive_3days_bonus"			,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Receive_8days_bonus		]={event="Receive_8days_bonus"			,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Receive_30days_bonus		]={event="Receive_30days_bonus"			,	eventToken=""					,					},
+},
+--[[
+adjust_token:zg6ixp19pdz4
+adjus事件上报及对应的token
+激活			kky0yu
+注册			6s22py
+完成新手引导		69if8s
+首次支付			p6p840
+加入公会			21l1no
+创角			1p4znl
+分享			e56qk7
+邀请好友			tbb1em
+支付			ot7zkz]]
+["IOS"] = 
+{
+	[SDKEventReportMgr.EventType.Activate					]={event="Activate"						,	eventToken="kky0yu"				,					},
+	[SDKEventReportMgr.EventType.Register					]={event="Register"						,	eventToken="6s22py"				,					},
+	[SDKEventReportMgr.EventType.login						]={event="login"						,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Create_character			]={event="Create_character"				,	eventToken="1p4znl"				,					},
+	[SDKEventReportMgr.EventType.Share						]={event="Share"						,	eventToken="e56qk7"				,					},
+	[SDKEventReportMgr.EventType.Complete_guide				]={event="Complete_guide"				,	eventToken="69if8s"				,					},
+	[SDKEventReportMgr.EventType.Invite_friend				]={event="Invite_friend"				,	eventToken="tbb1em"				,					},
+	[SDKEventReportMgr.EventType.level_5					]={event="level_5"						,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.level_10					]={event="level_10"						,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.level_20					]={event="level_20"						,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.First_payment				]={event="First_payment"				,	eventToken="p6p840"				,					},
+	[SDKEventReportMgr.EventType.Pay						]={event="Pay"							,	eventToken="ot7zkz"				,					},
+	[SDKEventReportMgr.EventType.Cumulative_99				]={event="Cumulative_99"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Cumulative_199				]={event="Cumulative_199"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Join_guild					]={event="Join_guild"					,	eventToken="21l1no"				,					},
+	[SDKEventReportMgr.EventType.days_2_activity			]={event="days_2_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.days_3_activity			]={event="days_3_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.days_7_activity			]={event="days_7_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.days_14_activity			]={event="days_14_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.days_30_activity			]={event="days_30_activity"				,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Achieve_80_weekly_activity	]={event="Achieve_80_weekly_activity"	,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Receive_2days_bonus		]={event="Receive_2days_bonus"			,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Receive_3days_bonus		]={event="Receive_3days_bonus"			,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Receive_8days_bonus		]={event="Receive_8days_bonus"			,	eventToken=""					,					},
+	[SDKEventReportMgr.EventType.Receive_30days_bonus		]={event="Receive_30days_bonus"			,	eventToken=""					,					},
+},
+}
+
+function SDKEventReportMgr:ctor()
+	self:RegisterNetEvents()
+end
+
+function SDKEventReportMgr:RegisterNetEvents()
+	 ManagerContainer.NetManager:NetRegister(ProtoMsgId.SC_DNY_SDK_NTF, self.OnSC_DNY_SDK_NTF, self)
+end
+
+function SDKEventReportMgr:UnRegisterNetEvents()
+	 ManagerContainer.NetManager:UnRegisterPbIdCallback(ProtoMsgId.SC_DNY_SDK_NTF)
+end
+
+function SDKEventReportMgr:Destroy()
+	self:UnRegisterNetEvents()
+end
+
+function SDKEventReportMgr:SendEvent(type)
+     if not SDKMgr.Instance:IsReportAction() then
+        return
+    end
+   local curCfg = self:GetCfgByType(type)
+   if curCfg == nil then
+		LogError("没找到对应统计 id ="..type)
+		return
+   end
+     local datas = System.Collections.Generic.Dictionary_object_object()
+     datas:Add('event', curCfg.event)
+     datas:Add('eventToken', curCfg.eventToken)
+     SDKMgr.Instance:ReportAction(datas)
+
+end
+
+function SDKEventReportMgr:GetCurPlatformCfg()
+     local platform = self:GetCurPlatform()
+    return self.SDKEventCfg[platform]
+end
+
+function SDKEventReportMgr:GetCurPlatform()
+    if self.platform == nil then
+        self.platform = ManagerContainer.LuaGameMgr.platform
+    end
+    if self.platform == "" then
+        return "IOS"
+    else
+        return "Android"
+    end
+end
+
+function SDKEventReportMgr:GetCfgByType(type)
+    local curCfg = self:GetCurPlatformCfg()
+
+    return curCfg[type]
+end
+
+
+function SDKEventReportMgr:OnSC_DNY_SDK_NTF(data)
+	if data.error and data.error == 0 then
+		return
+	end
+	self:SendEvent(data.type);
+end
+return SDKEventReportMgr

+ 7 - 0
Assets/Lua/Managers/SDKEventReportMgr.lua.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: d9ef31b91afbe814f83f17a9eaac8b14
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 4 - 2
Assets/Lua/Pb/login.txt

@@ -1,5 +1,5 @@
 
-ßÛ
+‚Ü
 login.protoserverproto
 user.proto"0
 
@@ -2718,4 +2718,6 @@ rewardList?
 CSPayOrderCompleteReq
 cp_order_id (R	cpOrderId"-
 SCPayOrderCompleteAck
-error (Rerrorbproto3
+error (Rerror"!
+SCDnySdkNtf
+type (Rtypebproto3

BIN
Assets/Lua/Pb/messagedefclient.txt


+ 7 - 4
Assets/Lua/Pb/protocal.txt

@@ -1,7 +1,7 @@
 
-Ý•
+Û—
 protocal.protoserverprotocommon.protoerror_code.protologin.proto
-user.proto"±é
+user.proto"�ê
 Request7
 CS_PING_REQè (2.serverproto.CSPingReqR	CSPINGREQ:
 CS_LOGIN_REQê (2.serverproto.CSLoginReqR
@@ -372,7 +372,8 @@ $CS_RUNE_SPECIAL_PRIVILEGE_REWARD_REQ
 CS_CLIMBING_TOWER_WJ_BEGIN_REQ«/ (2&.serverproto.CSClimbingTowerWjBeginReqRCSCLIMBINGTOWERWJBEGINREQd
 CS_CLIMBING_TOWER_WJ_END_REQ­/ (2$.serverproto.CSClimbingTowerWjEndReqRCSCLIMBINGTOWERWJENDREQg
 CS_CLIMBING_TOWER_WJ_RANK_REQ¯/ (2%.serverproto.CSClimbingTowerWjRankReqRCSCLIMBINGTOWERWJRANKREQg
-CS_CLIMBING_TOWER_WJ_BUFF_REQ²/ (2%.serverproto.CSClimbingTowerWjBuffReqRCSCLIMBINGTOWERWJBUFFREQ"Æ«
+CS_CLIMBING_TOWER_WJ_BUFF_REQ²/ (2%.serverproto.CSClimbingTowerWjBuffReqRCSCLIMBINGTOWERWJBUFFREQ]
+CS_PAY_ORDER_COMPLETE_REQ¸/ (2".serverproto.CSPayOrderCompleteReqRCSPAYORDERCOMPLETEREQ"å¬
 Response7
 SC_PING_ACKé (2.serverproto.SCPingAckR	SCPINGACK:
 SC_LOGIN_ACKë (2.serverproto.SCLoginAckR
@@ -856,4 +857,6 @@ $SC_RUNE_SPECIAL_PRIVILEGE_REWARD_ACK
 SC_CLIMBING_TOWER_WJ_END_ACK®/ (2$.serverproto.SCClimbingTowerWjEndAckRSCCLIMBINGTOWERWJENDACKg
 SC_CLIMBING_TOWER_WJ_RANK_ACK°/ (2%.serverproto.SCClimbingTowerWjRankAckRSCCLIMBINGTOWERWJRANKACKg
 SC_CLIMBING_TOWER_WJ_BOSS_NTF±/ (2%.serverproto.SCClimbingTowerWjBossNtfRSCCLIMBINGTOWERWJBOSSNTFg
-SC_CLIMBING_TOWER_WJ_BUFF_ACK³/ (2%.serverproto.SCClimbingTowerWjBuffAckRSCCLIMBINGTOWERWJBUFFACKbproto3
+SC_CLIMBING_TOWER_WJ_BUFF_ACK³/ (2%.serverproto.SCClimbingTowerWjBuffAckRSCCLIMBINGTOWERWJBUFFACK]
+SC_PAY_ORDER_COMPLETE_ACK¹/ (2".serverproto.SCPayOrderCompleteAckRSCPAYORDERCOMPLETEACK>
+SC_DNY_SDK_NTF¼/ (2.serverproto.SCDnySdkNtfRSCDNYSDKNTFbproto3

+ 7 - 0
Build/BuildDependenceResource/Plugins/SDKBridge/XuanYou_IOS/QSDKMgr.cs

@@ -3,6 +3,13 @@ using System.Runtime.InteropServices;
 
 namespace qsdk
 {
+        public class SDKOrderExtraInfo
+    {
+        public int serverId;
+        public string platform;
+        public string subPlatform;
+        public string orderNo;
+    }
     public class QSdkMgr
     {
 

+ 30 - 8
Build/BuildDependenceResource/Plugins/SDKBridge/XuanYou_IOS/YouYiSDKiOS.cs

@@ -3,7 +3,7 @@ using System.Runtime.InteropServices;
 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
-
+using System.Text;
 using qsdk;
 
 public class YouYiSDKiOS : SDKBase
@@ -95,6 +95,8 @@ public class YouYiSDKiOS : SDKBase
             {
                 SDKOrderExtraInfo ext = (SDKOrderExtraInfo)extraInfo;
                 ext.orderNo = cpOrderId;
+                ext.serverId = gameRoleInfo.serverId;
+                ext.platform = SDKName;
                 extrasParams = JsonUtility.ToJson(ext);
             }
 
@@ -157,6 +159,32 @@ public class YouYiSDKiOS : SDKBase
         return false;
     }
 
+    public override bool IsReportAction() { return true; }
+
+    public override void ReportAction(Dictionary<object, object> datas)
+    {
+        base.ReportAction(datas);
+        GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
+
+        if (gameRoleInfo == null || !gameRoleInfo.Valid())
+        {
+            return;
+        }
+
+         StringBuilder stringBuilder = new StringBuilder();
+        int count = 0;
+        foreach (var item in datas)
+        {
+            count++;
+            if (count == datas.Count)
+                stringBuilder.Append(item.Key.ToString()).Append(",").Append(item.Value.ToString());
+            else
+                stringBuilder.Append(item.Key.ToString()).Append(",").Append(item.Value.ToString()).Append(",");
+        }
+        QSdkMgr.UpdateRoleInfo(4, gameRoleInfo, stringBuilder.ToString());
+    }
+
+
     public override void CallInitSuccessCB()
     {
         m_YouYiListener.OnInitSuccess();
@@ -166,13 +194,7 @@ public class YouYiSDKiOS : SDKBase
     {
         m_YouYiListener.StartCheckLogin();
     }
-    public class SDKOrderExtraInfo
-    {
-        public int serverId;
-        public string platform;
-        public string subPlatform;
-        public string orderNo;
-    }
+
 
 }
 #endif

+ 57 - 10
Build/BuildDependenceResource/Plugins/iOS/Xuanyou_SDK_IOS/QsdkMgr.mm

@@ -152,7 +152,7 @@ void QSDK_Pay(const char *productId,const char *productName,const char * amount,
                 const char* serverID,const char* accountID,const char* roleID,const char* roleLv) {
     
      NSDictionary *ext = @{
-        @"gameextrasParams":QsdkCreateNSString(extrasParams),
+        @"extra":QsdkCreateNSString(extrasParams),
      };
     //支付
     SPProductData *product = [SPProductData new];
@@ -176,11 +176,17 @@ void QSDK_logout() {
         SDK_Logout_Callback(success,data);
     }];
 }
-
+extern NSDictionary* GetParameters(NSArray* arr);
 void QSDK_UpdateRoleInfo(int type,const char * roleName,const char * roleId,
                         const char * roleLv, const char * serverName,
                         const char * serverId,const char * extra)
 {
+    SPRoleData *roleData = [SPRoleData new];
+    roleData.roleName =QsdkCreateNSString(roleName);
+    roleData.roleLevel = QsdkCreateNSString(roleLv);
+    roleData.roleId = QsdkCreateNSString(roleId);
+    roleData.serverId = QsdkCreateNSString(serverId);
+    roleData.serverName = QsdkCreateNSString(serverName);
     SPSDKReportType RType = SPSDKReportTypeOnlinePeriod;
     if(type == 0)
     {
@@ -190,16 +196,40 @@ void QSDK_UpdateRoleInfo(int type,const char * roleName,const char * roleId,
     {
         RType =  SPSDKReportTypeEnterGame;
     }
-    else
+    else if(type == 4)
     {
-        return;
+        RType = SPSDKReportTypeOther;
+        NSString* exStr = QsdkCreateNSString(extra);
+        
+        NSArray* dataArr =  [exStr componentsSeparatedByString:	@","];
+        if(dataArr != nullptr && dataArr.count >= 4)
+        {
+            
+            /*for(int i =4;i> dataArr.count;i+=2)
+            {
+                [NSDictionary dictionaryWithObject:dataArr[i+1] forKey:dataArr[i]];
+            }*/
+            if(dataArr.count==4)
+            {
+                roleData.extra = @{
+                @"firEventName":dataArr[1],
+                @"adjEventToken":dataArr[3],
+            };
+            }
+            else
+            {
+                roleData.extra = @{
+                    @"firEventName":dataArr[1],
+                    @"adjEventToken":dataArr[3],
+                    @"firEventParameters":GetParameters(dataArr),
+                };
+            }
+            
+
+        }
+        
     }
-    SPRoleData *roleData = [SPRoleData new];
-    roleData.roleName =QsdkCreateNSString(roleName);
-    roleData.roleLevel = QsdkCreateNSString(roleLv);
-    roleData.roleId = QsdkCreateNSString(roleId);
-    roleData.serverId = QsdkCreateNSString(serverId);
-    roleData.serverName = QsdkCreateNSString(serverName);
+   
     [SPSDK.instance reportRole:roleData type:RType callback:^(BOOL success, id data) 
     {
  
@@ -207,3 +237,20 @@ void QSDK_UpdateRoleInfo(int type,const char * roleName,const char * roleId,
 }
 
 }
+
+NSDictionary* GetParameters(NSArray* arr)
+{
+    int count = ((int)arr.count/2) - 2;
+    int start = 4;
+    if(count ==1){return @{arr[start]:arr[start+1],};}
+    else if(count ==2){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],}; }
+    else if(count ==3){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],arr[start+4]:arr[start+5],};}
+    else if(count ==4){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],arr[start+4]:arr[start+5],arr[start+6]:arr[start+7],};}
+    else if(count ==5){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],arr[start+4]:arr[start+5],arr[start+6]:arr[start+7],arr[start+8]:arr[start+9],};}
+    else if(count ==6){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],arr[start+4]:arr[start+5],arr[start+6]:arr[start+7],arr[start+8]:arr[start+9],arr[start+10]:arr[start+11],};}
+    else if(count ==7){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],arr[start+4]:arr[start+5],arr[start+6]:arr[start+7],arr[start+8]:arr[start+9],arr[start+10]:arr[start+11],arr[start+12]:arr[start+13],};}
+    else if(count ==8){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],arr[start+4]:arr[start+5],arr[start+6]:arr[start+7],arr[start+8]:arr[start+9],arr[start+10]:arr[start+11],arr[start+12]:arr[start+13],arr[start+14]:arr[start+15],};}
+    else if(count ==9){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],arr[start+4]:arr[start+5],arr[start+6]:arr[start+7],arr[start+8]:arr[start+9],arr[start+10]:arr[start+11],arr[start+12]:arr[start+13],arr[start+14]:arr[start+15],arr[start+16]:arr[start+17],};}
+    else if(count >=10){return @{arr[start]:arr[start+1],arr[start+2]:arr[start+3],arr[start+4]:arr[start+5],arr[start+6]:arr[start+7],arr[start+8]:arr[start+9],arr[start+10]:arr[start+11],arr[start+12]:arr[start+13],arr[start+14]:arr[start+15],arr[start+16]:arr[start+17],arr[start+18]:arr[start+19],};}
+    return [NSDictionary dictionary];
+}

+ 3 - 2
ProtocolGen/proto/ProtoMsgId.lua

@@ -721,8 +721,9 @@
 	SC_CLIMBING_TOWER_WJ_BOSS_NTF       = 6065,  -- SCClimbingTowerWjBossNtf **SCClimbingTowerWjBossNtf **login.proto ** [SCClimbingTowerWjBossNtf]
 	CS_CLIMBING_TOWER_WJ_BUFF_REQ       = 6066,  -- CSClimbingTowerWjBuffReq **CSClimbingTowerWjBuffReq **login.proto **game [CSClimbingTowerWjBuffReq]
 	SC_CLIMBING_TOWER_WJ_BUFF_ACK       = 6067,  -- SCClimbingTowerWjBuffAck **SCClimbingTowerWjBuffAck **login.proto ** [SCClimbingTowerWjBuffAck]
-	CS_PAY_ORDER_COMPLETE_REQ         = 6072,		--	CSPayOrderCompleteReq **CSPayOrderCompleteReq **login.proto **game [SSPayOrderCompleteReq]
-	SC_PAY_ORDER_COMPLETE_ACK         = 6073,		--	SCPayOrderCompleteAck **SCPayOrderCompleteAck **login.proto **game [SSPayOrderCompleteAck]
+	CS_PAY_ORDER_COMPLETE_REQ         = 6072,		--	CSPayOrderCompleteReq **CSPayOrderCompleteReq **login.proto **game [CSPayOrderCompleteReq]
+	SC_PAY_ORDER_COMPLETE_ACK         = 6073,		--	SCPayOrderCompleteAck **SCPayOrderCompleteAck **login.proto **game [SCPayOrderCompleteAck]
+	SC_DNY_SDK_NTF       = 6076,		--	SCDnySdkNtf **SCDnySdkNtf **login.proto ** [SCDnySdkNtf]
 
     }
     return ProtoMsgId

+ 4 - 0
ProtocolGen/proto/login.proto

@@ -3833,4 +3833,8 @@ message CSPayOrderCompleteReq {   //project game  //RouteRule game
 
 message SCPayOrderCompleteAck {   //project game  //RouteRule game
     int32 error                                         = 1; //错误码,0成功
+}
+
+message SCDnySdkNtf {
+    int32       type =1;//类型
 }

+ 3 - 2
ProtocolGen/proto/messagedefclient.proto

@@ -724,6 +724,7 @@ enum protoMsgId{
 	SC_CLIMBING_TOWER_WJ_BOSS_NTF       = 6065;  // SCClimbingTowerWjBossNtf **SCClimbingTowerWjBossNtf **login.proto ** [SCClimbingTowerWjBossNtf]
 	CS_CLIMBING_TOWER_WJ_BUFF_REQ       = 6066;  // CSClimbingTowerWjBuffReq **CSClimbingTowerWjBuffReq **login.proto **game [CSClimbingTowerWjBuffReq]
 	SC_CLIMBING_TOWER_WJ_BUFF_ACK       = 6067;  // SCClimbingTowerWjBuffAck **SCClimbingTowerWjBuffAck **login.proto ** [SCClimbingTowerWjBuffAck]
-	CS_PAY_ORDER_COMPLETE_REQ         = 6072;		//	CSPayOrderCompleteReq **CSPayOrderCompleteReq **login.proto **game [SSPayOrderCompleteReq]
-	SC_PAY_ORDER_COMPLETE_ACK         = 6073;		//	SCPayOrderCompleteAck **SCPayOrderCompleteAck **login.proto **game [SSPayOrderCompleteAck]
+	CS_PAY_ORDER_COMPLETE_REQ         = 6072;		//	CSPayOrderCompleteReq **CSPayOrderCompleteReq **login.proto **game [CSPayOrderCompleteReq]
+	SC_PAY_ORDER_COMPLETE_ACK         = 6073;		//	SCPayOrderCompleteAck **SCPayOrderCompleteAck **login.proto **game [SCPayOrderCompleteAck]
+	SC_DNY_SDK_NTF       = 6076;		//	SCDnySdkNtf **SCDnySdkNtf **login.proto ** [SCDnySdkNtf]
 }

+ 3 - 2
ProtocolGen/proto/protocal.proto

@@ -321,7 +321,7 @@ message Request {
      CSClimbingTowerWjEndReq         	CS_CLIMBING_TOWER_WJ_END_REQ           =  6061;         // CSClimbingTowerWjEndReq **CSClimbingTowerWjEndReq **login.proto **game [CSClimbingTowerWjEndReq]
      CSClimbingTowerWjRankReq         	CS_CLIMBING_TOWER_WJ_RANK_REQ           =  6063;         // CSClimbingTowerWjRankReq **CSClimbingTowerWjRankReq **login.proto **game [CSClimbingTowerWjRankReq]
      CSClimbingTowerWjBuffReq         	CS_CLIMBING_TOWER_WJ_BUFF_REQ           =  6066;         // CSClimbingTowerWjBuffReq **CSClimbingTowerWjBuffReq **login.proto **game [CSClimbingTowerWjBuffReq]
-     SSPayOrderCompleteReq         	CS_PAY_ORDER_COMPLETE_REQ             =  6072;         //	CSPayOrderCompleteReq **CSPayOrderCompleteReq **login.proto **game [SSPayOrderCompleteReq]
+     CSPayOrderCompleteReq         	CS_PAY_ORDER_COMPLETE_REQ             =  6072;         //	CSPayOrderCompleteReq **CSPayOrderCompleteReq **login.proto **game [CSPayOrderCompleteReq]
 }
 message Response {
      SCPingAck           	SC_PING_ACK                          =  1001;         //	SCPingAck **SCPingAck **login.proto ** [SCPingAck]
@@ -732,5 +732,6 @@ message Response {
      SCClimbingTowerWjRankAck           	SC_CLIMBING_TOWER_WJ_RANK_ACK           =  6064;         // SCClimbingTowerWjRankAck **SCClimbingTowerWjRankAck **login.proto ** [SCClimbingTowerWjRankAck]
      SCClimbingTowerWjBossNtf           	SC_CLIMBING_TOWER_WJ_BOSS_NTF           =  6065;         // SCClimbingTowerWjBossNtf **SCClimbingTowerWjBossNtf **login.proto ** [SCClimbingTowerWjBossNtf]
      SCClimbingTowerWjBuffAck           	SC_CLIMBING_TOWER_WJ_BUFF_ACK           =  6067;         // SCClimbingTowerWjBuffAck **SCClimbingTowerWjBuffAck **login.proto ** [SCClimbingTowerWjBuffAck]
-     SSPayOrderCompleteAck           	SC_PAY_ORDER_COMPLETE_ACK             =  6073;         //	SCPayOrderCompleteAck **SCPayOrderCompleteAck **login.proto **game [SSPayOrderCompleteAck]
+     SCPayOrderCompleteAck           	SC_PAY_ORDER_COMPLETE_ACK             =  6073;         //	SCPayOrderCompleteAck **SCPayOrderCompleteAck **login.proto **game [SCPayOrderCompleteAck]
+     SCDnySdkNtf           	SC_DNY_SDK_NTF           =  6076;         //	SCDnySdkNtf **SCDnySdkNtf **login.proto ** [SCDnySdkNtf]
 }

+ 56 - 56
UserSettings/Layouts/default-2021.dwlt

@@ -41,9 +41,9 @@ MonoBehaviour:
     x: 588
     y: 57
     width: 1304
-    height: 905
+    height: 903
   m_ShowMode: 4
-  m_Title: Console
+  m_Title: Inspector
   m_RootView: {fileID: 5}
   m_MinSize: {x: 875, y: 300}
   m_MaxSize: {x: 10000, y: 10000}
@@ -67,8 +67,8 @@ MonoBehaviour:
     y: 0
     width: 546
     height: 963
-  m_MinSize: {x: 200, y: 200}
-  m_MaxSize: {x: 4000, y: 4000}
+  m_MinSize: {x: 200, y: 221}
+  m_MaxSize: {x: 4000, y: 4021}
   m_ActualView: {fileID: 15}
   m_Panes:
   - {fileID: 15}
@@ -97,7 +97,7 @@ MonoBehaviour:
   m_MinSize: {x: 200, y: 221}
   m_MaxSize: {x: 4000, y: 4021}
   vertical: 0
-  controlID: 84
+  controlID: 43
 --- !u!114 &5
 MonoBehaviour:
   m_ObjectHideFlags: 52
@@ -119,7 +119,7 @@ MonoBehaviour:
     x: 0
     y: 0
     width: 1304
-    height: 905
+    height: 903
   m_MinSize: {x: 875, y: 300}
   m_MaxSize: {x: 10000, y: 10000}
   m_UseTopView: 1
@@ -164,7 +164,7 @@ MonoBehaviour:
   m_Position:
     serializedVersion: 2
     x: 0
-    y: 885
+    y: 883
     width: 1304
     height: 20
   m_MinSize: {x: 0, y: 0}
@@ -189,11 +189,11 @@ MonoBehaviour:
     x: 0
     y: 30
     width: 1304
-    height: 855
+    height: 853
   m_MinSize: {x: 300, y: 200}
   m_MaxSize: {x: 24288, y: 16192}
   vertical: 0
-  controlID: 112
+  controlID: 35
 --- !u!114 &9
 MonoBehaviour:
   m_ObjectHideFlags: 52
@@ -214,11 +214,11 @@ MonoBehaviour:
     x: 0
     y: 0
     width: 926
-    height: 855
+    height: 853
   m_MinSize: {x: 200, y: 200}
   m_MaxSize: {x: 16192, y: 16192}
   vertical: 1
-  controlID: 113
+  controlID: 72
 --- !u!114 &10
 MonoBehaviour:
   m_ObjectHideFlags: 52
@@ -239,11 +239,11 @@ MonoBehaviour:
     x: 0
     y: 0
     width: 926
-    height: 460
+    height: 541
   m_MinSize: {x: 200, y: 100}
   m_MaxSize: {x: 16192, y: 8096}
   vertical: 0
-  controlID: 114
+  controlID: 17
 --- !u!114 &11
 MonoBehaviour:
   m_ObjectHideFlags: 52
@@ -261,8 +261,8 @@ MonoBehaviour:
     serializedVersion: 2
     x: 0
     y: 0
-    width: 288
-    height: 460
+    width: 464
+    height: 541
   m_MinSize: {x: 201, y: 221}
   m_MaxSize: {x: 4001, y: 4021}
   m_ActualView: {fileID: 17}
@@ -285,10 +285,10 @@ MonoBehaviour:
   m_Children: []
   m_Position:
     serializedVersion: 2
-    x: 288
+    x: 464
     y: 0
-    width: 638
-    height: 460
+    width: 462
+    height: 541
   m_MinSize: {x: 202, y: 221}
   m_MaxSize: {x: 4002, y: 4021}
   m_ActualView: {fileID: 18}
@@ -313,9 +313,9 @@ MonoBehaviour:
   m_Position:
     serializedVersion: 2
     x: 0
-    y: 460
+    y: 541
     width: 926
-    height: 395
+    height: 312
   m_MinSize: {x: 101, y: 121}
   m_MaxSize: {x: 4001, y: 4021}
   m_ActualView: {fileID: 20}
@@ -342,7 +342,7 @@ MonoBehaviour:
     x: 926
     y: 0
     width: 378
-    height: 855
+    height: 853
   m_MinSize: {x: 276, y: 71}
   m_MaxSize: {x: 4001, y: 4021}
   m_ActualView: {fileID: 21}
@@ -466,9 +466,9 @@ MonoBehaviour:
   m_Pos:
     serializedVersion: 2
     x: 588
-    y: 547
+    y: 628
     width: 925
-    height: 374
+    height: 291
   m_ViewDataDictionary: {fileID: 0}
   m_OverlayCanvas:
     m_LastAppliedPresetName: Default
@@ -485,23 +485,23 @@ MonoBehaviour:
     m_SkipHidden: 0
     m_SearchArea: 1
     m_Folders:
-    - Assets/Content/Prefabs/Effects/Hero/Master/HuoQiuShu_Skill11
+    - Assets/Editor/CsvToLua
     m_Globs: []
     m_OriginalText: 
     m_FilterByTypeIntersection: 0
   m_ViewMode: 1
   m_StartGridSize: 16
   m_LastFolders:
-  - Assets/Content/Prefabs/Effects/Hero/Master/HuoQiuShu_Skill11
+  - Assets/Editor/CsvToLua
   m_LastFoldersGridSize: 16
   m_LastProjectPath: E:\Project\Unity\bt_client_2022_S
   m_LockTracker:
     m_IsLocked: 0
   m_FolderTreeState:
-    scrollPos: {x: 0, y: 607}
-    m_SelectedIDs: 425f0000
-    m_LastClickedID: 24386
-    m_ExpandedIDs: 00000000b65e0000b85e0000ba5e0000bc5e0000be5e0000c05e0000c25e0000c45e00000c5f0000445f0000465f0000485f000000ca9a3b
+    scrollPos: {x: 0, y: 53}
+    m_SelectedIDs: 827c0300
+    m_LastClickedID: 228482
+    m_ExpandedIDs: 00000000e2b20200e4b20200e6b20200e8b20200eab20200ecb20200eeb20200787b030000ca9a3b
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -529,7 +529,7 @@ MonoBehaviour:
     scrollPos: {x: 0, y: 0}
     m_SelectedIDs: 
     m_LastClickedID: 0
-    m_ExpandedIDs: 00000000b65e0000b85e0000ba5e0000bc5e0000be5e0000c05e0000c25e0000c45e0000
+    m_ExpandedIDs: 00000000e2b20200e4b20200e6b20200e8b20200eab20200ecb20200eeb20200
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -556,8 +556,8 @@ MonoBehaviour:
   m_ListAreaState:
     m_SelectedInstanceIDs: 
     m_LastClickedInstanceID: 0
-    m_HadKeyboardFocusLastEvent: 0
-    m_ExpandedInstanceIDs: c62300002cdf01008cb00c0000cf0c0076280d007e660c0098660c0060940c0008a10c00e6950c008ec90c00c2f8010000000000084604006c410400a2010500
+    m_HadKeyboardFocusLastEvent: 1
+    m_ExpandedInstanceIDs: c62300002cdf01008cb00c0000cf0c0076280d007e660c0098660c0060940c0008a10c00e6950c008ec90c00c2f8010000000000084604006c410400a2010500b6610000
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -573,7 +573,7 @@ MonoBehaviour:
       m_IsRenaming: 0
       m_OriginalEventType: 11
       m_IsRenamingFilename: 1
-      m_ClientGUIView: {fileID: 13}
+      m_ClientGUIView: {fileID: 12}
     m_CreateAssetUtility:
       m_EndAction: {fileID: 0}
       m_InstanceID: 0
@@ -608,8 +608,8 @@ MonoBehaviour:
     serializedVersion: 2
     x: 588
     y: 87
-    width: 287
-    height: 439
+    width: 463
+    height: 520
   m_ViewDataDictionary: {fileID: 0}
   m_OverlayCanvas:
     m_LastAppliedPresetName: Default
@@ -620,7 +620,7 @@ MonoBehaviour:
       scrollPos: {x: 0, y: 0}
       m_SelectedIDs: 
       m_LastClickedID: 0
-      m_ExpandedIDs: e4faffff
+      m_ExpandedIDs: bab0fbffe61afefff4ffffff9cb20200
       m_RenameOverlay:
         m_UserAcceptedRename: 0
         m_Name: 
@@ -665,10 +665,10 @@ MonoBehaviour:
     m_Tooltip: 
   m_Pos:
     serializedVersion: 2
-    x: 876
+    x: 1052
     y: 87
-    width: 636
-    height: 439
+    width: 460
+    height: 520
   m_ViewDataDictionary: {fileID: 0}
   m_OverlayCanvas:
     m_LastAppliedPresetName: Default
@@ -865,7 +865,7 @@ MonoBehaviour:
       floating: 0
       collapsed: 0
       displayed: 0
-      snapOffset: {x: 0, y: 25}
+      snapOffset: {x: 0, y: 0}
       snapOffsetDelta: {x: 0, y: 0}
       snapCorner: 0
       id: Scene View/Particles
@@ -932,14 +932,14 @@ MonoBehaviour:
   m_OverrideSceneCullingMask: 6917529027641081856
   m_SceneIsLit: 1
   m_SceneLighting: 1
-  m_2DMode: 0
+  m_2DMode: 1
   m_isRotationLocked: 0
   m_PlayAudio: 0
   m_AudioPlay: 0
   m_Position:
-    m_Target: {x: -53.92711, y: 2.9127536, z: -56.499435}
+    m_Target: {x: -1.1684126, y: 1.6461904, z: 1.2718133}
     speed: 2
-    m_Value: {x: -53.92711, y: 2.9127536, z: -56.499435}
+    m_Value: {x: -1.1684126, y: 1.6461904, z: 1.2718133}
   m_RenderMode: 0
   m_CameraMode:
     drawMode: 0
@@ -968,17 +968,17 @@ MonoBehaviour:
       m_Size: {x: 1, y: 1}
     yGrid:
       m_Fade:
-        m_Target: 1
+        m_Target: 0
         speed: 2
-        m_Value: 1
+        m_Value: 0
       m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4}
       m_Pivot: {x: 0, y: 0, z: 0}
       m_Size: {x: 1, y: 1}
     zGrid:
       m_Fade:
-        m_Target: 0
+        m_Target: 1
         speed: 2
-        m_Value: 0
+        m_Value: 1
       m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4}
       m_Pivot: {x: 0, y: 0, z: 0}
       m_Size: {x: 1, y: 1}
@@ -986,17 +986,17 @@ MonoBehaviour:
     m_GridAxis: 1
     m_gridOpacity: 0.5
   m_Rotation:
-    m_Target: {x: 0.0012546577, y: 0.9908172, z: -0.1348914, w: 0.009215888}
+    m_Target: {x: 0, y: 0, z: 0, w: 1}
     speed: 2
-    m_Value: {x: 0.0012546573, y: 0.99081683, z: -0.13489136, w: 0.009215884}
+    m_Value: {x: 0, y: 0, z: 0, w: 1}
   m_Size:
-    m_Target: 1.232658
+    m_Target: 4.3113775
     speed: 2
-    m_Value: 1.232658
+    m_Value: 4.3113775
   m_Ortho:
-    m_Target: 0
+    m_Target: 1
     speed: 2
-    m_Value: 0
+    m_Value: 1
   m_CameraSettings:
     m_Speed: 1
     m_SpeedNormalized: 0.5
@@ -1107,9 +1107,9 @@ MonoBehaviour:
   m_Pos:
     serializedVersion: 2
     x: 588
-    y: 547
+    y: 628
     width: 925
-    height: 374
+    height: 291
   m_ViewDataDictionary: {fileID: 0}
   m_OverlayCanvas:
     m_LastAppliedPresetName: Default
@@ -1139,7 +1139,7 @@ MonoBehaviour:
     x: 1514
     y: 87
     width: 377
-    height: 834
+    height: 832
   m_ViewDataDictionary: {fileID: 0}
   m_OverlayCanvas:
     m_LastAppliedPresetName: Default