Ejemplo n.º 1
0
    private void IOS_OnStoreKitInitComplete(SA.Common.Models.Result res)
    {
        UM_BillingConnectionResult r = new UM_BillingConnectionResult();

        _IsConnected = res.IsSucceeded;
        r.isSuccess  = res.IsSucceeded;
        if (res.IsSucceeded)
        {
            r.message = "Inited";

            foreach (UM_InAppProduct product in UltimateMobileSettings.Instance.InAppProducts)
            {
                IOSProductTemplate tpl = IOSInAppPurchaseManager.Instance.GetProductById(product.IOSId);
                if (tpl != null)
                {
                    product.SetTemplate(tpl);
                }
            }

            SendServiceConnectedEvent(r);
        }
        else
        {
            if (res.Error != null)
            {
                r.message = res.Error.Message;
            }

            SendServiceConnectedEvent(r);
        }
    }
            public void onStoreDataReceived(string message)
            {
                if (message.Equals(string.Empty))
                {
                    return;
                }


                string[] storeData = message.Split(DATA_SPLITTER[0]);

                for (int i = 0; i < storeData.Length; i += 7)
                {
                    string             prodcutId = storeData[i];
                    IOSProductTemplate tpl       = new IOSProductTemplate();


                    tpl.DisplayName    = storeData[i + 1];
                    tpl.Description    = storeData[i + 2];
                    tpl.LocalizedPrice = storeData[i + 3];
                    tpl.Price          = System.Convert.ToSingle(storeData[i + 4]);
                    tpl.CurrencyCode   = storeData[i + 5];
                    tpl.CurrencySymbol = storeData[i + 6];
                    tpl.IsAvaliable    = true;

                    iosProducts.Add(prodcutId, tpl);
                }


                StansAssetsGrowIntegration.instance.OnBillingSupported();
                DelegateMessage(message);
            }
Ejemplo n.º 3
0
	public void SetTemplate(IOSProductTemplate tpl) {
		_IOSTemplate = tpl;
		_template = new UM_InAppProductTemplate();
		_template.id = tpl.id;
		_template.title = tpl.title;
		_template.description = tpl.description;
		_template.price = tpl.price;
		_isTemplateSet = true;
	}
Ejemplo n.º 4
0
	public void SetTemplate(IOSProductTemplate tpl) {
		_IOSTemplate = tpl;
		_template = new UM_InAppProductTemplate();
		_template.id = tpl.Id;
		_template.title = tpl.DisplayName;
		_template.description = tpl.Description;
		_template.price = tpl.Price.ToString();
		_isTemplateSet = true;
	}
Ejemplo n.º 5
0
 public void SetTemplate(IOSProductTemplate tpl)
 {
     _IOSTemplate          = tpl;
     _template             = new UM_InAppProductTemplate();
     _template.id          = tpl.id;
     _template.title       = tpl.title;
     _template.description = tpl.description;
     _template.price       = tpl.price;
 }
Ejemplo n.º 6
0
 public void SetTemplate(IOSProductTemplate tpl)
 {
     _IOSTemplate          = tpl;
     _template             = new UM_InAppProductTemplate();
     _template.id          = tpl.Id;
     _template.title       = tpl.DisplayName;
     _template.description = tpl.Description;
     _template.price       = tpl.Price.ToString();
     _isTemplateSet        = true;
 }
Ejemplo n.º 7
0
    //--------------------------------------
    //  UNITY EDITOR FAKE SECTION
    //--------------------------------------

    private void EditorFakeInitEvent()
    {
        foreach (string id in _productsIds)
        {
            IOSProductTemplate tpl = new IOSProductTemplate();
            tpl.id             = id;
            tpl.title          = "Title for " + id;
            tpl.description    = "Description for " + id;
            tpl.localizedPrice = "1 $";
            tpl.price          = "1";
            tpl.currencyCode   = "USD";
            tpl.currencySymbol = "$";
            _products.Add(tpl);
        }

        FireSuccessInitEvent();
    }
            public void onProductBought(string array)
            {
                string[] data;
                data = array.Split("|" [0]);


                string productId = data [0];

                if (iosProducts.ContainsKey(productId))
                {
                    IOSProductTemplate tpl = iosProducts[productId];
                    StansAssetsGrowIntegration.instance.OnMarketPurchaseFinished(productId, tpl.PriceInMicros, tpl.CurrencyCode);
                }
                else
                {
                    StansAssetsGrowIntegration.instance.OnMarketPurchaseFinished(productId, 0, "USD");
                }


                //	StansAssetsGrowIntegration.instance.OnMarketPurchaseFinished(productId)
                DelegateMessage(array);
            }
Ejemplo n.º 9
0
	private void BillingSettings() {

		EditorGUILayout.Space();
		EditorGUILayout.HelpBox("In-App Purchases", MessageType.None);


		EditorGUI.indentLevel++; {

			EditorGUILayout.BeginVertical (GUI.skin.box);


			EditorGUILayout.BeginHorizontal();
			IOSNativeSettings.Instance.ShowStoreKitProducts = EditorGUILayout.Foldout(IOSNativeSettings.Instance.ShowStoreKitProducts, "Products");



			EditorGUILayout.EndHorizontal();
			EditorGUILayout.Space();

			if(IOSNativeSettings.Instance.ShowStoreKitProducts) {

				foreach(IOSProductTemplate product in IOSNativeSettings.Instance.InAppProducts) {


					EditorGUILayout.BeginVertical (GUI.skin.box);

					EditorGUILayout.BeginHorizontal();



					if(product.Texture != null) {
						GUILayout.Box(product.Texture, ImageBoxStyle, new GUILayoutOption[]{GUILayout.Width(18), GUILayout.Height(18)});
					}

					product.IsOpen 	= EditorGUILayout.Foldout(product.IsOpen, product.DisplayName);

				


					EditorGUILayout.LabelField("           "+ product.Price + "$");
					bool ItemWasRemoved = DrawSrotingButtons((object) product, IOSNativeSettings.Instance.InAppProducts);
					if(ItemWasRemoved) {
						return;
					}


					EditorGUILayout.EndHorizontal();

					if(product.IsOpen) {
						EditorGUILayout.BeginHorizontal();
						EditorGUILayout.LabelField(ProductIdDLabel);
						product.Id	 	= EditorGUILayout.TextField(product.Id);
						if(product.Id.Length > 0) {
							product.Id 		= product.Id.Trim();
						}
						EditorGUILayout.EndHorizontal();
						

						EditorGUILayout.BeginHorizontal();
						EditorGUILayout.LabelField(DisplayNameLabel);
						product.DisplayName	 	= EditorGUILayout.TextField(product.DisplayName);
						EditorGUILayout.EndHorizontal();



						EditorGUILayout.BeginHorizontal();
						EditorGUILayout.LabelField(IsConsLabel);
						product.ProductType	 	= (ISN_InAppType) EditorGUILayout.EnumPopup(product.ProductType);
						EditorGUILayout.EndHorizontal();

						EditorGUILayout.BeginHorizontal();
						EditorGUILayout.LabelField(PriceTierLabel);
						EditorGUI.BeginChangeCheck();
						product.PriceTier	 	= (ISN_InAppPriceTier) EditorGUILayout.EnumPopup(product.PriceTier);
						if(EditorGUI.EndChangeCheck()) {
							product.UpdatePriceByTier();
						}
						EditorGUILayout.EndHorizontal();

						EditorGUILayout.Space();
						EditorGUILayout.Space();



						EditorGUILayout.BeginHorizontal();
						EditorGUILayout.LabelField(DescriptionLabel);
						EditorGUILayout.EndHorizontal();

						EditorGUILayout.BeginHorizontal();
						product.Description	 = EditorGUILayout.TextArea(product.Description,  new GUILayoutOption[]{GUILayout.Height(60), GUILayout.Width(200)} );
						product.Texture = (Texture2D) EditorGUILayout.ObjectField("", product.Texture, typeof (Texture2D), false);
						EditorGUILayout.EndHorizontal();

					}

					EditorGUILayout.EndVertical();

				}

				EditorGUILayout.BeginHorizontal();
				EditorGUILayout.Space();
				if(GUILayout.Button("Add new", EditorStyles.miniButton, GUILayout.Width(250))) {
					IOSProductTemplate product =  new IOSProductTemplate();
					IOSNativeSettings.Instance.InAppProducts.Add(product);
				}

				EditorGUILayout.Space();
				EditorGUILayout.EndHorizontal();
				EditorGUILayout.Space();
			}









			EditorGUILayout.EndVertical();
		}EditorGUI.indentLevel--;



			EditorGUILayout.Space();
			EditorGUILayout.Space();
			EditorGUILayout.LabelField(SKPVDLabel);

			/*****************************************/

			if(IOSNativeSettings.Instance.DefaultStoreProductsView.Count == 0) {
				EditorGUILayout.HelpBox("No Default Store Products View Added", MessageType.Info);
			}
			
			

			int i = 0;
			foreach(string str in IOSNativeSettings.Instance.DefaultStoreProductsView) {
				EditorGUILayout.BeginHorizontal();
				IOSNativeSettings.Instance.DefaultStoreProductsView[i]	 	= EditorGUILayout.TextField(IOSNativeSettings.Instance.DefaultStoreProductsView[i]);
				if(IOSNativeSettings.Instance.DefaultStoreProductsView[i].Length > 0) {
					IOSNativeSettings.Instance.DefaultStoreProductsView[i]		= IOSNativeSettings.Instance.DefaultStoreProductsView[i].Trim();
				}

				if(GUILayout.Button("Remove",  GUILayout.Width(80))) {
					IOSNativeSettings.Instance.DefaultStoreProductsView.Remove(str);
					break;
				}
				EditorGUILayout.EndHorizontal();
				i++;
			}
			
			
			EditorGUILayout.BeginHorizontal();
			EditorGUILayout.Space();
			if(GUILayout.Button("Add",  GUILayout.Width(80))) {
				IOSNativeSettings.Instance.DefaultStoreProductsView.Add("");
			}
			EditorGUILayout.EndHorizontal();


			EditorGUILayout.Space();
			
			
			EditorGUILayout.HelpBox("API Settings", MessageType.None);
			
			EditorGUILayout.BeginHorizontal();
			EditorGUILayout.LabelField(SendBillingFakeActions);
			IOSNativeSettings.Instance.SendFakeEventsInEditor = EditorGUILayout.Toggle(IOSNativeSettings.Instance.SendFakeEventsInEditor);
			EditorGUILayout.EndHorizontal();
			
			
			EditorGUILayout.BeginHorizontal();
			EditorGUILayout.LabelField(CheckInternetLabel);
			IOSNativeSettings.Instance.checkInternetBeforeLoadRequest = EditorGUILayout.Toggle(IOSNativeSettings.Instance.checkInternetBeforeLoadRequest);
			EditorGUILayout.EndHorizontal();
		

			EditorGUILayout.Space();

		//}
	}
Ejemplo n.º 10
0
	private void MoreActions() {


		
		IOSNativeSettings.Instance.ShowOtherParams = EditorGUILayout.Foldout(IOSNativeSettings.Instance.ShowOtherParams, "More Actions");
		if (IOSNativeSettings.Instance.ShowOtherParams) {




			EditorGUI.BeginChangeCheck();


			EditorGUILayout.BeginHorizontal();
			EditorGUILayout.LabelField(DisablePluginLogsNote);
			IOSNativeSettings.Instance.DisablePluginLogs = EditorGUILayout.Toggle(IOSNativeSettings.Instance.DisablePluginLogs);
			EditorGUILayout.EndHorizontal();


			EditorGUILayout.Space();

			EditorGUILayout.BeginHorizontal();
			if(GUILayout.Button("Load Example Settings",  GUILayout.Width(140))) {
				PlayerSettings.bundleIdentifier = "com.stansassets.iosnative.dev";
				IOSNativeSettings.Instance.InAppProducts.Clear();

				IOSProductTemplate SmallPack =  new IOSProductTemplate();
				SmallPack.IsOpen = false;
				SmallPack.Id = "your.product.id1.here";
				SmallPack.PriceTier = ISN_InAppPriceTier.Tier1;
				SmallPack.DisplayName = "Small Pack";
				SmallPack.ProductType = ISN_InAppType.Consumable;


				IOSProductTemplate NonConsumablePack =  new IOSProductTemplate();
				NonConsumablePack.IsOpen = false;
				NonConsumablePack.Id = "your.product.id2.here";
				NonConsumablePack.PriceTier = ISN_InAppPriceTier.Tier2;
				NonConsumablePack.DisplayName = "Non Consumable Pack";
				NonConsumablePack.ProductType = ISN_InAppType.Consumable;

				IOSNativeSettings.Instance.InAppProducts.Add(SmallPack);
				IOSNativeSettings.Instance.InAppProducts.Add(NonConsumablePack);



				IOSNativeSettings.Instance.Leaderboards.Clear();
				GK_Leaderboard Leaderboard1 =  new GK_Leaderboard("your.ios.leaderbord1.id");
				Leaderboard1.IsOpen = false;
				Leaderboard1.Info.Title = "Leaderboard 1";

				IOSNativeSettings.Instance.Leaderboards.Clear();
				GK_Leaderboard Leaderboard2 =  new GK_Leaderboard("your.ios.leaderbord2.id");
				Leaderboard2.IsOpen = false;
				Leaderboard2.Info.Title = "Leaderboard 2";

				IOSNativeSettings.Instance.Leaderboards.Add(Leaderboard1);
				IOSNativeSettings.Instance.Leaderboards.Add(Leaderboard2);


				IOSNativeSettings.Instance.Achievements.Clear();
				GK_AchievementTemplate Achievement1 =  new GK_AchievementTemplate();
				Achievement1.Id = "your.achievement.id1.here";
				Achievement1.IsOpen = false;
				Achievement1.Title = "Achievement 1";
				
	
				GK_AchievementTemplate Achievement2 =  new GK_AchievementTemplate();
				Achievement2.Id = "your.achievement.id2.here";
				Achievement2.IsOpen = false;
				Achievement2.Title = "Achievement 2";

				GK_AchievementTemplate Achievement3 =  new GK_AchievementTemplate();
				Achievement3.Id = "your.achievement.id3.here";
				Achievement3.IsOpen = false;
				Achievement3.Title = "Achievement 3";
				
				IOSNativeSettings.Instance.Achievements.Add(Achievement1);
				IOSNativeSettings.Instance.Achievements.Add(Achievement2);
				IOSNativeSettings.Instance.Achievements.Add(Achievement3);

				IOSNativeSettings.Instance.SoomlaEnvKey = "3c3df370-ad80-4577-8fe5-ca2c49b2c1b4";
				IOSNativeSettings.Instance.SoomlaGameKey = "db24ba61-3aa7-4653-a3f7-9c613cb2c0f3";

			}


			if(GUILayout.Button("Remove IOS Native",  GUILayout.Width(140))) {
				SA_RemoveTool.RemovePlugins();
			}



			EditorGUILayout.EndHorizontal();



		

		}
	}
			public void onStoreDataReceived(string message) {

				if(message.Equals(string.Empty)) {
					return;
				}


				string[] storeData = message.Split(DATA_SPLITTER[0]);

				for(int i = 0; i < storeData.Length; i+=7) {
					string prodcutId = storeData[i];
					IOSProductTemplate tpl =  new IOSProductTemplate();


					tpl.DisplayName 	= storeData[i + 1];
					tpl.Description 	= storeData[i + 2];
					tpl.LocalizedPrice 	= storeData[i + 3];
					tpl.Price 			= System.Convert.ToSingle(storeData[i + 4]);
					tpl.CurrencyCode 	= storeData[i + 5];
					tpl.CurrencySymbol 	= storeData[i + 6];
					tpl.IsAvaliable = true;

					iosProducts.Add(prodcutId, tpl);

				}


				StansAssetsGrowIntegration.instance.OnBillingSupported();
				DelegateMessage (message);
			}