gdl_123 4 месяцев назад
Родитель
Сommit
3fe2c42e6f

+ 4 - 4
Assets/Content/Prefabs/UI/UILanuch/UILanuch.prefab

@@ -7891,7 +7891,7 @@ RectTransform:
   m_AnchorMin: {x: 0, y: 0}
   m_AnchorMax: {x: 1, y: 1}
   m_AnchoredPosition: {x: NaN, y: NaN}
-  m_SizeDelta: {x: 0, y: 0}
+  m_SizeDelta: {x: NaN, y: NaN}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &8529244539716104526
 CanvasRenderer:
@@ -7921,7 +7921,7 @@ MonoBehaviour:
   m_OnCullStateChanged:
     m_PersistentCalls:
       m_Calls: []
-  m_Sprite: {fileID: 21300000, guid: e7710d562ab611d46ba8bcf941361329, type: 3}
+  m_Sprite: {fileID: 21300000, guid: 1b13b6f00f1200541a6bf6e422d10886, type: 3}
   m_Type: 0
   m_PreserveAspect: 0
   m_FillCenter: 1
@@ -9429,7 +9429,7 @@ RectTransform:
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
   m_AnchoredPosition: {x: 0, y: 500}
-  m_SizeDelta: {x: 635.04, y: 345.6}
+  m_SizeDelta: {x: 895, y: 485}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &5882261254970375091
 CanvasRenderer:
@@ -9459,7 +9459,7 @@ MonoBehaviour:
   m_OnCullStateChanged:
     m_PersistentCalls:
       m_Calls: []
-  m_Sprite: {fileID: 21300000, guid: e7710d562ab611d46ba8bcf941361329, type: 3}
+  m_Sprite: {fileID: 21300000, guid: 1b13b6f00f1200541a6bf6e422d10886, type: 3}
   m_Type: 0
   m_PreserveAspect: 0
   m_FillCenter: 1

BIN
Assets/Content/Raw_Art/UI/UILanuch/img_logo_01.png


+ 6 - 5
Assets/Lua/Core/PlatformPack.lua

@@ -1,9 +1,10 @@
 local PlatformPack = {
-	URL_KEY = 'http://110.40.223.119:81//',
-	SERVERLIST_URL = 'http://110.40.223.119:81//serverlist',
-	NOTIFY_URL = 'http://110.40.223.119:88/res/NoticeNew/',
-	SPECIAL_INFO_URL = 'http://110.40.223.119:81//channel',
-	CUSTOMER_SERVICE_INFO_URL = 'http://110.40.223.119:81//vipService',
+	URL_KEY = 'http://165.154.202.27:81//',
+	SERVERLIST_URL = 'http://165.154.202.27:81//serverlist',
+	NOTIFY_URL = 'http://165.154.202.27:88/res/NoticeNew/',
+	SPECIAL_INFO_URL = 'http://165.154.202.27:81//channel',
+	CUSTOMER_SERVICE_INFO_URL = 'http://165.154.202.27:81//vipService',
+	SpecialFuncShield = true,
 }
 
 return PlatformPack

+ 138 - 0
Assets/Plugins/QuickSDK/LoginKitListener.cs

@@ -0,0 +1,138 @@
+using UnityEngine;
+using System.Collections;
+#if UNITY_IOS
+namespace quicksdk
+{
+    // LoginKitLisener
+    public class LoginKitListener : MonoBehaviour
+    {
+        //callback
+        //public abstract void onInitSuccess(string msg);
+        //      public abstract void onLoginSuccess(string userInfo);
+        //public abstract void onBindSuccess(string userInfo);
+        //public abstract void onUnBindSuccess(string userInfo);
+        //      public abstract void onGameLogoutSuccess(string msg);
+        //      public abstract void onLogoutSuccess(string msg);
+        //      public abstract void onPurchaseSuccess(string orderInfos);
+        //      public abstract void onPurchaseFail();
+        //      public abstract void onRestoreSuccess(string products);
+        //      public abstract void onRestoreFail(string message);
+        //      public abstract void findProductInfoSuccess(string products);
+        //      public abstract void findProductInfoFail(string message);
+        //      //callback end
+
+        private YouYiListener m_YouYiListener;
+
+        public void InitListener(YouYiListener youYiListener)
+        {
+            m_YouYiListener = youYiListener;
+        }
+        public void onInitSuccess(string msg)
+        {
+            Debug.Log("QKSDK 初始化:"+ msg);
+            //执行初始化成功操作
+            if (msg == "Fail")
+            {
+                Debug.Log("QKSDK初始化失败");
+                QKGame.InitState = QKSDKInitState.Fail;
+                m_YouYiListener.OnInitFailed();
+            }
+            else
+            {
+                QKGame.InitState = QKSDKInitState.Success;
+                Debug.Log("QKSDK初始化成功");
+                m_YouYiListener.OnInitSuccess();
+            }
+               
+
+        }
+        public void onLoginSuccess(string userInfo)
+        {
+
+            var data = quickgame.SimpleJSON.JSONNode.Parse(userInfo);
+            //string uid = data["uid"].Value;
+            string token = data["token"].Value;
+            //string loginType = data["loginType"].Value;
+            //string isNewUser = data[@"isNewUser"].Value;
+            //string isGuest = data[@"isGuest"].Value;
+            //执行登录成功操作
+            m_YouYiListener.UID = data["uid"].Value;
+            m_YouYiListener.OnLoginSuccess(token);
+        }
+
+        public void onBindSuccess(string userInfo)
+        {
+
+            //var data = quickgame.SimpleJSON.JSONNode.Parse(userInfo);
+            //string uid = data["uid"].Value;
+            //string token = data["token"].Value;
+            //string type = data["type"].Value;
+            //执行绑定成功操作
+        }
+
+        public void onUnBindSuccess(string userInfo)
+        {
+            //var data = quickgame.SimpleJSON.JSONNode.Parse(userInfo);
+            //string uid = data["uid"].Value;
+            //string token = data["token"].Value;
+            //string type = data["type"].Value;
+            //执行解绑成功操作
+        }
+
+        public void onGameLogoutSuccess(string msg)
+        {
+            m_YouYiListener.OnLogoutSuccess();
+            //游戏主动调用logout操作完成回调
+        }
+
+        public void onLogoutSuccess(string msg)
+        {
+            m_YouYiListener.OnLogoutSuccess();
+            //玩家主动点击个人中心切换账号成功回调
+        }
+        public void onPurchaseSuccess(string orderInfos)
+        {
+            //var data = quickgame.SimpleJSON.JSONNode.Parse(orderInfos);
+            //string productId = data["productId"].Value;
+            //string orderNo = data["orderNo"].Value;
+            ////gameOrderNo可能为空字符串比如订阅品续订时
+            //string gameOrderNo = data["gameOrderNo"].Value;
+            //string receiptString = data["receiptString"].Value;
+            //购买成功回调
+            m_YouYiListener.OnPaySuccess();
+        }
+        public void onPurchaseFail()
+        {
+            //购买失败回调
+            m_YouYiListener.OnPayFailed();
+        }
+        public void onRestoreSuccess(string products)
+        {
+            //var data = quickgame.SimpleJSON.JSONNode.Parse(products);
+            //恢复Appstore订阅品购买成功回调
+        }
+        public void onRestoreFail(string msg)
+        {
+            //恢复Appstore订阅品购买失败回调
+        }
+        public void findProductInfoSuccess(string products)
+        {
+            //var listdata = quickgame.SimpleJSON.JSONNode.Parse(products);
+            //var data = listdata[0];
+            //string productId = data["productId"].Value;
+            //string productName = data["productName"].Value;
+            //string productDesc = data["productDesc"].Value;
+            //string price = data["price"].Value;
+            //string total = data["total"].Value;
+            //string extras_params = data["extras_params"].Value;
+            //从苹果服务器获取商品信息成功回调
+            Debug.Log("====================" + products);
+        }
+        public void findProductInfoFail(string msg)
+        {
+            //从苹果服务器获取商品信息失败回调
+            Debug.Log("====================从苹果服务器获取商品信息失败回调");
+        }
+    }
+}
+#endif

+ 210 - 1
Assets/Plugins/QuickSDK/QKGame.cs

@@ -3,7 +3,7 @@ using System.Collections;
 using System.Runtime.InteropServices;
 //using Newtonsoft.Json;
 #if UNITY_IOS
-
+using quicksdk;
 using System.Collections.Generic;
 
 
@@ -37,5 +37,214 @@ public class QKGame {
         { "49.99",new ProductInfo(){ ID = "intention49.99",Name = "49.99禮包"} },
         { "99.99",new ProductInfo(){ ID = "intention99.99",Name = "99.99禮包"} },
     };
+
+    [DllImport("__Internal")]
+    private static extern void LuluSetListener(string gameObjectName);
+    public void loginKitSetListener(LoginKitListener listener)
+    {
+        Debug.Log("gameObject is " + listener.gameObject.name);
+        if (listener == null)
+        {
+            Debug.LogError("set LoginKitListener error, listener is null");
+            return;
+        }
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            string gameObjectName = listener.gameObject.name;
+            LuluSetListener(gameObjectName);
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern void luLuInit();
+    //init
+    public static void txQKInit()
+    {     
+        if (Application.platform != RuntimePlatform.OSXEditor || InitState == QKSDKInitState.None || InitState == QKSDKInitState.Fail)
+        {
+            InitState = QKSDKInitState.Initing;
+            luLuInit();
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern void luLuLogin(bool isShowMenu);
+    //Login
+    public static void txQKLogin(bool isShowMenu)
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor )
+        {  
+			luLuLogin(isShowMenu); 
+        }  
+     }
+    [DllImport("__Internal")]
+     private static extern void loginKitLoginWithType(int type);
+     //Login
+     public static void loginKitLoginWithType_Thread(int type)
+     {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            loginKitLoginWithType(type);
+        }
+     }
+     [DllImport("__Internal")]
+     private static extern void luLuFastStartGame();
+     //Login
+     public static void txQKFastStartGame()
+     {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luLuFastStartGame();
+        }
+     }
+     [DllImport("__Internal")]
+     private static extern string luLuGetUserBindInfo();
+     //luLuUserCenter
+     //public static Dictionary<string, int> loginkitGetUserBindInfo()
+     //{
+     //   if (Application.platform != RuntimePlatform.OSXEditor)
+     //   {
+     //       string jsonString = luLuGetUserBindInfo();
+     //       return JsonConvert.deserializeobject(jsonString);
+     //   }
+     //}
+     [DllImport("__Internal")]  
+     private static extern void luLuUserCenter();  
+     //luLuUserCenter
+     public static void txQKCenter()
+     {  
+        if (Application.platform != RuntimePlatform.OSXEditor)   
+        {  
+			luLuUserCenter(); 
+        }  
+     }
+	 [DllImport("__Internal")]
+	 private static extern void luLuLogout();
+	 //Logout
+	 public static void txQKLogout()
+	 {
+		if (Application.platform != RuntimePlatform.OSXEditor)   
+		{  
+			luLuLogout(); 
+		}  
+	 }
+     [DllImport("__Internal")]
+    private static extern void luLuBindAccount();
+    //bindAccount
+    public static void txQKBindAccount()
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luLuBindAccount();
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern void luLuBindAccountWithType(int type);
+    //bindAccountType
+    public static void txQKBindAccountWithType(int type)
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luLuBindAccountWithType(type);
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern void luLuUnbindAccountWithType(int type);
+    //unbindAccountType
+    public static void txQKUnbindAccountWithType(int type)
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luLuUnbindAccountWithType(type);
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern void luLuAccountDeletion();
+    //accountDeletion
+    public static void txQKAccountDeletion()
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luLuAccountDeletion();
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern void luLuShowMenu(float y);
+    //luLuShowMenu
+    public static void txQKShowMenu(float y)
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luLuShowMenu(y);
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern void luLuDismissMenu();
+    //luLuDismissMenu
+    public static void txQKDismissMenu()
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luLuDismissMenu();
+        }
+    }
+    [DllImport("__Internal")]
+     private static extern void luluSetRoleInfo(string serverName,string serverId,string roleId,string roleName,string roleLevel,string roleVipLevel);
+    //setRoleInfo,参数 游戏服名 游戏服id 角色名 角色id 角色等级 角色vip等级
+    public static void txQKSetRoleInfo(string serverName,string serverId,string roleId,string roleName,string roleLevel,string roleVipLevel)
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luluSetRoleInfo(serverName,serverId,roleId,roleName,roleLevel,roleLevel);
+        }
+    }
+	[DllImport("__Internal")]  
+	private static extern void luLuCongzi(string productId,string productName,string amount,string orderNo,string callBackUrl,string extrasParams);
+	//Pay RMB,参数 苹果商品ID 商品名称 价格 游戏订单号 游戏收单服务器地址 透传参数
+	public static void txQKCongzi(string productId,string productName,string amount,string orderNo,string callBackUrl,string extrasParams)
+	{      
+        if (Application.platform != RuntimePlatform.OSXEditor)   
+		{  
+			luLuCongzi(productId,productName,amount,orderNo,callBackUrl,extrasParams);
+		}  
+	}
+    [DllImport("__Internal")]
+    private static extern void luluRestoreNonConsumptionProducts();
+    //lulurestoreNonConsumptionProducts
+    public static void txQKRestoreNonConsumptionProducts()
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luluRestoreNonConsumptionProducts();
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern void luluFindProductInfo(string productIds);
+    //luLuDismissMenu
+    public static void txQKFindProductInfo(List<string> goodsIds)
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            luluFindProductInfo(string.Join(",", goodsIds.ToArray()));
+        }
+    }
+    [DllImport("__Internal")]
+    private static extern string LuluGetUserId();
+    public string loginKitGetUserId()
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            return LuluGetUserId();
+        }
+        return "";
+    }
+    [DllImport("__Internal")]
+    private static extern string LuluGetDeviceId();
+    public string loginKitGetDeviceId()
+    {
+        if (Application.platform != RuntimePlatform.OSXEditor)
+        {
+            return LuluGetDeviceId();
+        }
+        return "";
+    }
 }
 #endif

+ 1 - 1
Build/BuildDependenceResource/CurPackEnv.ini

@@ -1 +1 @@
-{"m_ChannelUniqueId":"12002025","m_BuildClassName":"Pack.PackPlatformAndroid"}
+{"m_ChannelUniqueId":"22002003","m_BuildClassName":"Pack.PackPlatformiOS"}

+ 163 - 0
Build/BuildDependenceResource/Plugins/SDKBridge/Quick_IOS_New/YouYiListener.cs

@@ -0,0 +1,163 @@
+using System.Collections;
+using System.Text;
+using UnityEngine;
+using UnityEngine.Networking;
+
+public class YouYiListener : MonoBehaviour
+{
+    private UnityWebRequest m_CheckLoginWebRequest;
+    private string m_Token = string.Empty;
+    private string m_Uid = string.Empty;
+    private Coroutine m_CheckCoroutine = null;
+
+    public string UID { set { m_Uid = value; } }
+    public void OnInitSuccess()
+    {
+        SDKMgr.Instance.SetInited(true);
+        SDKEventUtil.SendMessage(SDKCBEnum.INIT_SUCCESS_CB);
+    }
+    
+    public void OnInitFailed()
+    {
+        SDKMgr.Instance.SetInited(false);
+        SDKEventUtil.SendMessage(SDKCBEnum.INIT_FAILED_CB);
+    }
+    
+    public void OnLoginSuccess(string token)
+    {
+        SDKMgr.Instance.SetLogined(true);
+        m_Token = token;
+        // StartCheckLogin();
+        UserInfo userInfo = new UserInfo()
+        {
+            uid = m_Uid,
+            userName = "",
+            token = m_Token,
+            timeSp="",
+        };
+        SDKMgr.Instance.SetInited(true);
+        SDKEventUtil.SendMessage(SDKCBEnum.LOGIN_SUCCESS_CB, userInfo);
+
+    }
+
+    public void OnLoginFailed()
+    {
+        SDKEventUtil.SendMessage(SDKCBEnum.LOGIN_FAILED_CB);
+        StopCheckLogin();
+    }
+
+    public void OnLogoutSuccess()
+    {
+        m_Token = string.Empty;
+        SDKMgr.Instance.SetLogined(false);
+        SDKEventUtil.SendMessage(SDKCBEnum.LOGOUT_SUCCESS_CB);
+    }
+
+    public void OnExitSuccess()
+    {
+        SDKEventUtil.SendMessage(SDKCBEnum.EXIT_SUCCESS_CB);
+    }
+    
+    public void OnPaySuccess()
+    {
+        SDKEventUtil.SendMessage(SDKCBEnum.PAY_SUCCESS_CB);
+    }
+
+    public void OnPayFailed()
+    {
+        SDKEventUtil.SendMessage(SDKCBEnum.PAY_FAILED_CB);
+    }
+
+    private void StopCheckLogin()
+    {
+        if (m_CheckCoroutine != null)
+        {
+            StopCoroutine(m_CheckCoroutine);
+            m_CheckCoroutine = null;
+        }
+        if (m_CheckLoginWebRequest != null)
+        {
+            m_CheckLoginWebRequest.Dispose();
+            m_CheckLoginWebRequest = null;
+        }
+    }
+
+    public void StartCheckLogin()
+    {
+        StopCheckLogin();
+        m_CheckCoroutine = StartCoroutine(CheckLogin());
+    }
+
+    private IEnumerator CheckLogin()
+    {
+        StringBuilder sb = new StringBuilder();
+        sb.Append(SDKMgr.Instance.httpCheckUrl);
+        sb.Append("sdkcheck?platform=");
+        if (SDKMgr.Instance.sdk != null)
+        {
+            sb.Append(SDKMgr.Instance.sdk.SDKName);
+            string subplatform = SDKMgr.Instance.GetChannelName();
+            if (!string.IsNullOrEmpty(subplatform))
+            {
+                sb.Append("&sub_platform=");
+                sb.Append(subplatform);
+            }
+        }
+        sb.Append("&sauthjson=");
+        sb.Append(m_Token);
+        m_CheckLoginWebRequest = UnityWebRequest.Get(sb.ToString());
+        yield return m_CheckLoginWebRequest.SendWebRequest();
+        if (!string.IsNullOrEmpty(m_CheckLoginWebRequest.error))
+        {
+            OnLoginFailed();
+            yield break;
+        }
+        var downloadHandler = m_CheckLoginWebRequest.downloadHandler;
+        if (downloadHandler == null)
+        {
+            OnLoginFailed();
+            yield break;
+        }
+        string text = downloadHandler.text;
+        try
+        {
+            var result = JsonUtility.FromJson<CheckLoginResult>(text);
+            if (result.code == 0 && !string.IsNullOrEmpty(result.userinfo))
+            {
+                var arr = result.userinfo.Split('.');
+                var userinfoStr = Encoding.UTF8.GetString(System.Convert.FromBase64String(arr[0]));
+                var userinfo = JsonUtility.FromJson<LoginResultUserInfo>(userinfoStr);
+                UserInfo userInfo = new UserInfo()
+                {
+                    uid = userinfo.aid,
+                    userName = "",
+                    token = result.userinfo,
+                };
+                SDKMgr.Instance.SetInited(true);
+                SDKEventUtil.SendMessage(SDKCBEnum.LOGIN_SUCCESS_CB , userInfo);
+            }
+            else
+            {
+                OnLoginFailed();
+                SDKMgr.Instance.Logout();
+            }
+        }
+        catch
+        {
+            OnLoginFailed();
+            Debug.LogWarning("CheckLogin Fail   " + sb.ToString());
+        }
+    }
+
+    private class CheckLoginResult
+    {
+        public int code = 0;
+        public string userinfo = string.Empty;
+        public string platform = string.Empty;
+    }
+
+    private class LoginResultUserInfo
+    {
+        public string aid = string.Empty;
+    }
+}

+ 11 - 0
Build/BuildDependenceResource/Plugins/SDKBridge/Quick_IOS_New/YouYiListener.cs.meta

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

+ 163 - 0
Build/BuildDependenceResource/Plugins/SDKBridge/Quick_IOS_New/YouYiSDKiOS.cs

@@ -0,0 +1,163 @@
+#if UNITY_IOS
+using System.Runtime.InteropServices;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using System.Runtime.InteropServices;
+using quicksdk;
+
+public class YouYiSDKiOS : SDKBase
+{
+    private YouYiListener m_YouYiListener;
+
+    public QKGame qKGamesdk;
+    private LoginKitListener qkListenter;
+    public YouYiSDKiOS()
+    {
+        SDKName = "SDKYOUYI_IOS";
+        m_YouYiListener = SDKMgr.Instance.gameObject.AddComponent<YouYiListener>();
+        qkListenter = SDKMgr.Instance.gameObject.AddComponent<LoginKitListener>();
+        qKGamesdk = new QKGame();
+        //YouYi_SetCallbackGoName(SDKMgr.Instance.gameObject.name);
+        qkListenter.InitListener(m_YouYiListener);
+        qKGamesdk.loginKitSetListener(qkListenter);
+    }
+
+    public override void Init()
+    {
+        base.Init();
+        //YouYi_Init();
+        if (QKGame.InitState == QKSDKInitState.Success)
+        {
+            CallInitSuccessCB();
+            return;
+        }
+
+        QKGame.txQKInit();
+    }
+
+    public override void OnApplicationFocus(bool focusStatus)
+    {
+        base.OnApplicationFocus(focusStatus);
+    }
+
+    public override void Login()
+    {
+        //YouYi_Login();
+        QKGame.txQKLogin(true);
+    }
+
+    public override void Logout()
+    {
+        //YouYi_Logout();
+        QKGame.txQKLogout();
+    }
+
+    public override void SwitchAccount()
+    {
+        //YouYi_SwitchAccount();
+        
+    }
+
+    public override void Pay(int goodsId, string goodsName, string goodsDesc, int count, float amount, string cpOrderId, string extrasParams)
+    {      
+        GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
+
+        if (gameRoleInfo == null || !gameRoleInfo.Valid())
+        {
+            Debug.LogError("[YISDK][Pay] GameRoleInfo is null or not valid !!!");
+            m_YouYiListener.OnPayFailed();
+            return;
+        }
+        Dictionary<string, SDKMgr.ProductInfo> cfgs = SDKMgr.Instance.ProductInfos;
+
+        int itemp = Mathf.FloorToInt(amount);
+        string pice = "";
+        if ((itemp + 0.005f) > amount)
+        {
+            pice = itemp.ToString();
+        }
+        else
+        {
+            pice = amount.ToString("F2");
+        }
+
+        Debug.Log("价格 = " + pice);
+        if (cfgs.ContainsKey(pice))
+        {
+            Debug.Log("有 价格 = " + pice);
+            SDKMgr.ProductInfo productInfo = cfgs[pice];
+
+            //Debug.Log($"=========================={productInfo.ID}======={productInfo.Name}");
+
+           
+            QKGame.txQKCongzi(productInfo.ID, productInfo.Name, amount.ToString(), cpOrderId, goodsName, extrasParams);
+        }
+        else
+        {
+            Debug.Log("没有 价格 = " + pice);
+            m_YouYiListener.OnPayFailed();
+        }
+
+    }
+
+    public override void CreateRole()
+    {
+        GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
+        if (gameRoleInfo == null || !gameRoleInfo.Valid())
+        {
+            Debug.LogError("[YISDK][CreateRole] GameRoleInfo is null or not valid !!!");
+            return;
+        }
+        QKGame.txQKSetRoleInfo(gameRoleInfo.serverName,gameRoleInfo.serverId.ToString(),gameRoleInfo.roleId.ToString(),gameRoleInfo.roleName,gameRoleInfo.roleLv.ToString(),"0");
+    }
+
+    public override void EnterGame()
+    {
+        GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
+        if (gameRoleInfo == null || !gameRoleInfo.Valid())
+        {
+            Debug.LogError("[YISDK][EnterGame] GameRoleInfo is null or not valid !!!");
+            return;
+        }
+        QKGame.txQKSetRoleInfo(gameRoleInfo.serverName, gameRoleInfo.serverId.ToString(), gameRoleInfo.roleId.ToString(), gameRoleInfo.roleName, gameRoleInfo.roleLv.ToString(), "0");
+    }
+
+    public override void UpdateRoleLv()
+    {
+        GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
+        if (gameRoleInfo == null || !gameRoleInfo.Valid())
+        {
+            Debug.LogError("[YISDK][UpdateRoleLv] GameRoleInfo is null or not valid !!!");
+            return;
+        }
+        QKGame.txQKSetRoleInfo(gameRoleInfo.serverName, gameRoleInfo.serverId.ToString(), gameRoleInfo.roleId.ToString(), gameRoleInfo.roleName, gameRoleInfo.roleLv.ToString(), "0");
+    }
+
+    public override void ExitGame()
+    {
+
+    }
+
+    public override bool Exit()
+    {
+        return false;
+    }
+
+    public override bool Quit()
+    {
+        return false;
+    }
+
+    public override void CallInitSuccessCB()
+    {
+        m_YouYiListener.OnInitSuccess();
+    }
+
+    public override void CallLoginSuccessCB()
+    {
+        m_YouYiListener.StartCheckLogin();
+    }
+
+}
+#endif

+ 11 - 0
Build/BuildDependenceResource/Plugins/SDKBridge/Quick_IOS_New/YouYiSDKiOS.cs.meta

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

+ 5 - 5
ProjectSettings/ProjectSettings.asset

@@ -13,7 +13,7 @@ PlayerSettings:
   useOnDemandResources: 0
   accelerometerFrequency: 60
   companyName: mianywl
-  productName: "\u4E1C\u5357\u4E9A\u6D4B\u8BD5\u670D"
+  productName: Rookie Rising
   defaultCursor: {fileID: 0}
   cursorHotspot: {x: 0, y: 0}
   m_SplashScreenBackgroundColor: {r: 1, g: 1, b: 1, a: 1}
@@ -138,7 +138,7 @@ PlayerSettings:
     16:10: 1
     16:9: 1
     Others: 1
-  bundleVersion: 1.0.0.6
+  bundleVersion: 0.1.0
   preloadedAssets: []
   metroInputSource: 0
   wsaTransparentSwapchain: 0
@@ -161,7 +161,7 @@ PlayerSettings:
   applicationIdentifier:
     Android: com.xjro.rutest
     WebGL: com.wt.no.sdk.test
-    iPhone: com.boliking.ios
+    iPhone: com.cxzusgame.ios
   buildNumber:
     Standalone: 0
     iPhone: 0.1.0.0
@@ -845,10 +845,10 @@ PlayerSettings:
   webGLDecompressionFallback: 1
   webGLPowerPreference: 1
   scriptingDefineSymbols:
-    Android: USE_LUA;VUPLEX_CCU;FPS_DISABLE;GAME_DEBUG
+    Android: USE_LUA;VUPLEX_CCU
     Standalone: USE_LUA;VUPLEX_CCU
     WebGL: USE_LUA;VUPLEX_CCU
-    iPhone: USE_LUA;VUPLEX_CCU
+    iPhone: USE_LUA;VUPLEX_CCU;FPS_DISABLE
   additionalCompilerArguments: {}
   platformArchitecture:
     iPhone: 1

+ 63 - 46
UserSettings/Layouts/default-2021.dwlt

@@ -43,7 +43,7 @@ MonoBehaviour:
     width: 1304
     height: 903
   m_ShowMode: 4
-  m_Title: Inspector
+  m_Title: Hierarchy
   m_RootView: {fileID: 5}
   m_MinSize: {x: 875, y: 300}
   m_MaxSize: {x: 10000, y: 10000}
@@ -97,7 +97,7 @@ MonoBehaviour:
   m_MinSize: {x: 200, y: 221}
   m_MaxSize: {x: 4000, y: 4021}
   vertical: 0
-  controlID: 43
+  controlID: 33
 --- !u!114 &5
 MonoBehaviour:
   m_ObjectHideFlags: 52
@@ -193,7 +193,7 @@ MonoBehaviour:
   m_MinSize: {x: 300, y: 200}
   m_MaxSize: {x: 24288, y: 16192}
   vertical: 0
-  controlID: 35
+  controlID: 102
 --- !u!114 &9
 MonoBehaviour:
   m_ObjectHideFlags: 52
@@ -218,7 +218,7 @@ MonoBehaviour:
   m_MinSize: {x: 200, y: 200}
   m_MaxSize: {x: 16192, y: 16192}
   vertical: 1
-  controlID: 72
+  controlID: 16
 --- !u!114 &10
 MonoBehaviour:
   m_ObjectHideFlags: 52
@@ -343,8 +343,8 @@ MonoBehaviour:
     y: 0
     width: 378
     height: 853
-  m_MinSize: {x: 276, y: 71}
-  m_MaxSize: {x: 4001, y: 4021}
+  m_MinSize: {x: 275, y: 50}
+  m_MaxSize: {x: 4000, y: 4000}
   m_ActualView: {fileID: 21}
   m_Panes:
   - {fileID: 21}
@@ -475,7 +475,7 @@ MonoBehaviour:
     m_SaveData: []
     m_OverlaysVisible: 1
   m_SearchFilter:
-    m_NameFilter: 
+    m_NameFilter: UIlan
     m_ClassNames: []
     m_AssetLabels: []
     m_AssetBundleNames: []
@@ -485,23 +485,23 @@ MonoBehaviour:
     m_SkipHidden: 0
     m_SearchArea: 1
     m_Folders:
-    - Assets/Editor/CsvToLua
+    - Assets/Plugins/QuickSDK
     m_Globs: []
-    m_OriginalText: 
+    m_OriginalText: UIlan
     m_FilterByTypeIntersection: 0
   m_ViewMode: 1
   m_StartGridSize: 16
   m_LastFolders:
-  - Assets/Editor/CsvToLua
+  - Assets/Plugins/QuickSDK
   m_LastFoldersGridSize: 16
   m_LastProjectPath: E:\Project\Unity\bt_client_2022_S
   m_LockTracker:
     m_IsLocked: 0
   m_FolderTreeState:
-    scrollPos: {x: 0, y: 53}
-    m_SelectedIDs: 827c0300
-    m_LastClickedID: 228482
-    m_ExpandedIDs: 00000000e2b20200e4b20200e6b20200e8b20200eab20200ecb20200eeb20200787b030000ca9a3b
+    scrollPos: {x: 0, y: 180}
+    m_SelectedIDs: 50270a00
+    m_LastClickedID: 665424
+    m_ExpandedIDs: 00000000625f0000645f0000665f0000685f00006a5f00006c5f000008230a0060240a0000ca9a3bffffff7f
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -529,7 +529,7 @@ MonoBehaviour:
     scrollPos: {x: 0, y: 0}
     m_SelectedIDs: 
     m_LastClickedID: 0
-    m_ExpandedIDs: 00000000e2b20200e4b20200e6b20200e8b20200eab20200ecb20200eeb20200
+    m_ExpandedIDs: 00000000625f0000645f0000665f0000685f00006a5f00006c5f00006e5f0000
     m_RenameOverlay:
       m_UserAcceptedRename: 0
       m_Name: 
@@ -554,8 +554,8 @@ MonoBehaviour:
       m_Icon: {fileID: 0}
       m_ResourceFile: 
   m_ListAreaState:
-    m_SelectedInstanceIDs: 
-    m_LastClickedInstanceID: 0
+    m_SelectedInstanceIDs: 784e0a00
+    m_LastClickedInstanceID: 675448
     m_HadKeyboardFocusLastEvent: 1
     m_ExpandedInstanceIDs: c62300002cdf01008cb00c0000cf0c0076280d007e660c0098660c0060940c0008a10c00e6950c008ec90c00c2f8010000000000084604006c410400a2010500b6610000
     m_RenameOverlay:
@@ -573,7 +573,7 @@ MonoBehaviour:
       m_IsRenaming: 0
       m_OriginalEventType: 11
       m_IsRenamingFilename: 1
-      m_ClientGUIView: {fileID: 12}
+      m_ClientGUIView: {fileID: 13}
     m_CreateAssetUtility:
       m_EndAction: {fileID: 0}
       m_InstanceID: 0
@@ -618,9 +618,9 @@ MonoBehaviour:
   m_SceneHierarchy:
     m_TreeViewState:
       scrollPos: {x: 0, y: 0}
-      m_SelectedIDs: 
-      m_LastClickedID: 0
-      m_ExpandedIDs: bab0fbffe61afefff4ffffff9cb20200
+      m_SelectedIDs: 50500a00
+      m_LastClickedID: 675920
+      m_ExpandedIDs: 066bfbff844d0a00da4d0a00084e0a00ba4e0a00204f0a00544f0a005e4f0a00704f0a00764f0a00
       m_RenameOverlay:
         m_UserAcceptedRename: 0
         m_Name: 
@@ -679,7 +679,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 1
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: -101, y: -26}
+      snapOffsetDelta: {x: -101, y: -1}
       snapCorner: 3
       id: Tool Settings
       index: 0
@@ -712,7 +712,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 1
       id: unity-search-toolbar
       index: 1
@@ -723,7 +723,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 1
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: unity-transform-toolbar
       index: 0
@@ -756,7 +756,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Light Settings
       index: 0
@@ -767,7 +767,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Camera
       index: 1
@@ -778,7 +778,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Cloth Constraints
       index: 2
@@ -789,7 +789,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Cloth Collisions
       index: 3
@@ -800,7 +800,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Navmesh Display
       index: 4
@@ -811,7 +811,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Agent Display
       index: 5
@@ -822,7 +822,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Obstacle Display
       index: 6
@@ -833,7 +833,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Occlusion Culling
       index: 7
@@ -844,7 +844,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Physics Debugger
       index: 8
@@ -855,7 +855,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Scene Visibility
       index: 9
@@ -866,7 +866,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Particles
       index: 10
@@ -899,7 +899,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Open Tile Palette
       index: 2
@@ -910,7 +910,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Scene View/Tilemap Focus
       index: 3
@@ -921,7 +921,7 @@ MonoBehaviour:
       collapsed: 0
       displayed: 0
       snapOffset: {x: 0, y: 0}
-      snapOffsetDelta: {x: 0, y: 0}
+      snapOffsetDelta: {x: 0, y: 25}
       snapCorner: 0
       id: Cinemachine
       index: 4
@@ -929,17 +929,17 @@ MonoBehaviour:
     m_OverlaysVisible: 1
   m_WindowGUID: cc27987af1a868c49b0894db9c0f5429
   m_Gizmos: 1
-  m_OverrideSceneCullingMask: 6917529027641081856
-  m_SceneIsLit: 1
+  m_OverrideSceneCullingMask: 0
+  m_SceneIsLit: 0
   m_SceneLighting: 1
   m_2DMode: 1
   m_isRotationLocked: 0
   m_PlayAudio: 0
   m_AudioPlay: 0
   m_Position:
-    m_Target: {x: -1.1684126, y: 1.6461904, z: 1.2718133}
+    m_Target: {x: 1.1863148, y: 3.3370848, z: 1.5919832}
     speed: 2
-    m_Value: {x: -1.1684126, y: 1.6461904, z: 1.2718133}
+    m_Value: {x: -1.3395422, y: 2.4246774, z: 1.0223503}
   m_RenderMode: 0
   m_CameraMode:
     drawMode: 0
@@ -990,9 +990,9 @@ MonoBehaviour:
     speed: 2
     m_Value: {x: 0, y: 0, z: 0, w: 1}
   m_Size:
-    m_Target: 4.3113775
+    m_Target: 7.2062683
     speed: 2
-    m_Value: 4.3113775
+    m_Value: 2.0889614
   m_Ortho:
     m_Target: 1
     speed: 2
@@ -1050,6 +1050,7 @@ MonoBehaviour:
   m_ViewTransforms:
     m_KeySerializationHelper:
     - {fileID: 1107033589464668458, guid: 72fdd5e869d92304db46d9c4a9611197, type: 2}
+    - {fileID: 1107055253092224398, guid: ec099100a25a6e94facf1732e56ceb4c, type: 2}
     m_ValueSerializationHelper:
     - e00: 1
       e01: 0
@@ -1067,11 +1068,27 @@ MonoBehaviour:
       e31: 0
       e32: 0
       e33: 1
+    - e00: 1
+      e01: 0
+      e02: 0
+      e03: 0
+      e10: 0
+      e11: 1
+      e12: 0
+      e13: 0
+      e20: 0
+      e21: 0
+      e22: 1
+      e23: 0
+      e30: 0
+      e31: 0
+      e32: 0
+      e33: 1
   m_PreviewAnimator: {fileID: 0}
-  m_AnimatorController: {fileID: 9100000, guid: 72fdd5e869d92304db46d9c4a9611197,
+  m_AnimatorController: {fileID: 9100000, guid: ec099100a25a6e94facf1732e56ceb4c,
     type: 2}
   m_BreadCrumbs:
-  - m_Target: {fileID: 1107033589464668458, guid: 72fdd5e869d92304db46d9c4a9611197,
+  - m_Target: {fileID: 1107055253092224398, guid: ec099100a25a6e94facf1732e56ceb4c,
       type: 2}
     m_ScrollPosition: {x: 0, y: 0}
   stateMachineGraph: {fileID: 0}