public Inventory(string json)
 {
     var j = new JSON(json);
     foreach (var entry in (List<object>) j.fields["purchaseMap"])
     {
         List<object> pair = (List<object>) entry;
     #if UNITY_IOS
         string key = OpenIAB_iOS.StoreSku2Sku(pair[0].ToString());
     #else
         string key = pair[0].ToString();
     #endif
         Purchase value = new Purchase(pair[1].ToString());
         _purchaseMap.Add(key, value);
     }
     foreach (var entry in (List<object>) j.fields["skuMap"])
     {
         List<object> pair = (List<object>) entry;
     #if UNITY_IOS
         string key = OpenIAB_iOS.StoreSku2Sku(pair[0].ToString());
         SkuDetails value = new SkuDetails((JSON) pair[1]);
     #else
         string key = pair[0].ToString();
         SkuDetails value = new SkuDetails(pair[1].ToString());
     #endif
         _skuMap.Add(key, value);
     }
 }
        static OpenIAB_WP8()
        {
            Store.PurchaseSucceeded += (storeSku, payload) =>
            {
                string sku = GetSku(storeSku);
                Purchase purchase = Purchase.CreateFromSku(sku, payload);
                OpenIAB.EventManager.SendMessage("OnPurchaseSucceeded", purchase);
            };
            Store.PurchaseFailed += (error) => { OpenIAB.EventManager.SendMessage("OnPurchaseFailed", error); };

            Store.ConsumeSucceeded += (storeSku) =>
            {
                string sku = GetSku(storeSku);
                Purchase purchase = Purchase.CreateFromSku(sku);
                OpenIAB.EventManager.SendMessage("OnConsumePurchaseSucceeded", purchase);
            };
            Store.ConsumeFailed += (error) => { OpenIAB.EventManager.SendMessage("OnConsumePurchaseFailed", error); };

            Store.LoadListingsSucceeded += (listings) =>
            {
                Inventory inventory = GetInventory();
                foreach (KeyValuePair<string, ProductListing> pair in listings)
                {
                    SkuDetails skuDetails = new SkuDetails(pair.Value);
                    inventory.AddSkuDetails(skuDetails);
                }
                OpenIAB.EventManager.SendMessage("OnQueryInventorySucceeded", inventory);
            };
            Store.LoadListingsFailed += (error) =>
            {
                OpenIAB.EventManager.SendMessage("OnQueryInventoryFailed", error);
            };
        }
        public Inventory(string json)
        {
            var j = new JSON(json);
            foreach (var entry in (List<object>) j.fields["purchaseMap"])
            {
                List<object> pair = (List<object>) entry;
#if UNITY_IOS
				string key = OpenIAB_iOS.StoreSku2Sku(pair[0].ToString());
				// TODO: use same cotr on all platforms. Test why it works on Android json
                Purchase value = new Purchase((JSON) pair[1]);
#else
                string key = pair[0].ToString();
                Purchase value = new Purchase(pair[1].ToString());
#endif
                _purchaseMap.Add(key, value);
            }
            foreach (var entry in (List<object>) j.fields["skuMap"])
            {
                List<object> pair = (List<object>) entry;
#if UNITY_IOS
				string key = OpenIAB_iOS.StoreSku2Sku(pair[0].ToString());
                SkuDetails value = new SkuDetails((JSON) pair[1]);
#else
                string key = pair[0].ToString();
                SkuDetails value = new SkuDetails(pair[1].ToString());
#endif
                _skuMap.Add(key, value);
            }
        }
Example #4
0
        public Inventory(string json)
        {
            var j = new JSON(json);

            foreach (var entry in (List <object>)j.fields["purchaseMap"])
            {
                List <object> pair = (List <object>)entry;
#if UNITY_IOS
                string key = OpenIAB_iOS.StoreSku2Sku(pair[0].ToString());
                // TODO: use same cotr on all platforms. Test why it works on Android json
                Purchase value = new Purchase((JSON)pair[1]);
#else
                string   key   = pair[0].ToString();
                Purchase value = new Purchase(pair[1].ToString());
#endif
                _purchaseMap.Add(key, value);
            }
            foreach (var entry in (List <object>)j.fields["skuMap"])
            {
                List <object> pair = (List <object>)entry;
#if UNITY_IOS
                string     key   = OpenIAB_iOS.StoreSku2Sku(pair[0].ToString());
                SkuDetails value = new SkuDetails((JSON)pair[1]);
#else
                string     key   = pair[0].ToString();
                SkuDetails value = new SkuDetails(pair[1].ToString());
#endif
                _skuMap.Add(key, value);
            }
        }
Example #5
0
        static OpenIAB_WP8()
        {
            Store.PurchaseSucceeded += (storeSku, payload) =>
            {
                string   sku      = GetSku(storeSku);
                Purchase purchase = Purchase.CreateFromSku(sku, payload);
                OpenIAB.EventManager.SendMessage("OnPurchaseSucceeded", purchase);
            };
            Store.PurchaseFailed += (error) => { OpenIAB.EventManager.SendMessage("OnPurchaseFailed", error); };

            Store.ConsumeSucceeded += (storeSku) =>
            {
                string   sku      = GetSku(storeSku);
                Purchase purchase = Purchase.CreateFromSku(sku);
                OpenIAB.EventManager.SendMessage("OnConsumePurchaseSucceeded", purchase);
            };
            Store.ConsumeFailed += (error) => { OpenIAB.EventManager.SendMessage("OnConsumePurchaseFailed", error); };

            Store.LoadListingsSucceeded += (listings) =>
            {
                Inventory inventory = GetInventory();
                foreach (KeyValuePair <string, ProductListing> pair in listings)
                {
                    SkuDetails skuDetails = new SkuDetails(pair.Value);
                    inventory.AddSkuDetails(skuDetails);
                }
                OpenIAB.EventManager.SendMessage("OnQueryInventorySucceeded", inventory);
            };
            Store.LoadListingsFailed += (error) =>
            {
                OpenIAB.EventManager.SendMessage("OnQueryInventoryFailed", error);
            };
        }
Example #6
0
 public Inventory(string json)
 {
     var j = new JSON(json);
     foreach (var entry in (List<object>)j.fields["purchaseMap"]) {
         List<object> pair = (List<object>) entry;
         string key = pair[0].ToString();
         Purchase value = new Purchase(pair[1].ToString());
         _purchaseMap.Add(key, value);
     }
     foreach (var entry in (List<object>) j.fields["skuMap"]) {
         List<object> pair = (List<object>) entry;
         string key = pair[0].ToString();
         SkuDetails value = new SkuDetails(pair[1].ToString());
         _skuMap.Add(key, value);
     }
 }
Example #7
0
        public Inventory(string json)
        {
            var j = new JSON(json);

            foreach (var entry in (List <object>)j.fields["purchaseMap"])
            {
                List <object> pair  = (List <object>)entry;
                string        key   = pair[0].ToString();
                Purchase      value = new Purchase(pair[1].ToString());
                _purchaseMap.Add(key, value);
            }
            foreach (var entry in (List <object>)j.fields["skuMap"])
            {
                List <object> pair  = (List <object>)entry;
                string        key   = pair[0].ToString();
                SkuDetails    value = new SkuDetails(pair[1].ToString());
                _skuMap.Add(key, value);
            }
        }
Example #8
0
        public Inventory(string json)
        {
            JSON jSON = new JSON(json);

            foreach (object item in (List <object>)jSON.fields["purchaseMap"])
            {
                List <object> list  = (List <object>)item;
                string        key   = list[0].ToString();
                Purchase      value = new Purchase(list[1].ToString());
                _purchaseMap.Add(key, value);
            }
            foreach (object item2 in (List <object>)jSON.fields["skuMap"])
            {
                List <object> list2  = (List <object>)item2;
                string        key2   = list2[0].ToString();
                SkuDetails    value2 = new SkuDetails(list2[1].ToString());
                _skuMap.Add(key2, value2);
            }
        }
Example #9
0
 public void AddSkuDetails(SkuDetails d)
 {
     _skuMap.Add(d.Sku, d);
 }
Example #10
0
 public void AddSkuDetails(SkuDetails d)
 {
     _skuMap.Add(d.Sku, d);
 }
	//
	//
	//
	int PriceComparer(SkuDetails sku1, SkuDetails sku2)
	{
		return (int)(PriceStringToFloat(sku1.Price) - PriceStringToFloat(sku2.Price));
	}