コード例 #1
0
        void OnReceivedPurchaseCallback(ItemBundlePurchaseResponse response)
        {
            Debug.Log("Successfully purchased item bundle:" + response.PremiumBalance);

            ItemStoreServices.GetPremiumCurrencyBalance(null);
            ItemStoreServices.GetStandardCurrencyBalance(new StandardCurrencyBalanceRequest(null), null);

            if (OnPurchaseSuccessful != null)
            {
                OnPurchaseSuccessful(response);
            }
        }
コード例 #2
0
        private static void GetWolrdCurrencyInfo(List <int> location)
        {
            if (!IsGettingWolrdCurrency)
            {
                IsGettingWolrdCurrency = true;
                ItemStoreServices.GetCurrencyInfo(worldCurrencyInfo =>
                {
                    ItemTextureCache.GetItemTexture(worldCurrencyInfo.PremiumCurrencyImage, icon =>
                    {
                        PremiumInfo = new CurrencyDetails()
                        {
                            Name = worldCurrencyInfo.PremiumCurrencyName,
                            Icon = icon
                        };
                        if (RecivedPremiumDetails != null)
                        {
                            RecivedPremiumDetails(PremiumInfo.Name, PremiumInfo.Icon);
                        }
                    });
                    ItemStoreServices.GetPremiumCurrencyBalance(premiumCurrencyResponse =>
                    {
                        PremiumAmount = premiumCurrencyResponse.Amount;
                        if (RecivecdPremiumAmount != null)
                        {
                            RecivecdPremiumAmount(premiumCurrencyResponse.Amount);
                        }
                    });

                    ItemTextureCache.GetItemTexture(worldCurrencyInfo.StandardCurrencyImage, icon =>
                    {
                        StandardInfo = new CurrencyDetails()
                        {
                            Name = worldCurrencyInfo.StandardCurrencyName,
                            Icon = icon
                        };
                        if (RecivedStandardDetails != null)
                        {
                            RecivedStandardDetails(StandardInfo.Name, StandardInfo.Icon);
                        }
                    });
                    ItemStoreServices.GetStandardCurrencyBalance(new StandardCurrencyBalanceRequest(StandardCurrencyLoaction), standardCurrencybalance =>
                    {
                        StandardAmount = standardCurrencybalance.Total;
                        if (RecivecdStandardAmount != null)
                        {
                            RecivecdStandardAmount(standardCurrencybalance.Total);
                        }
                    });
                });
            }
        }
コード例 #3
0
        public void PurchaseItemWithPremiumCurrency()
        {
            PurchaseItemRequest.PaymentType paymentType;
            if (premiumCurrencyCost > 0)
            {
                paymentType = PurchaseItemRequest.PaymentType.Premium;
            }
            else
            {
                paymentType = PurchaseItemRequest.PaymentType.Free;
            }

            ItemStoreServices.PurchaseItem(new PurchaseItemRequest(itemInfo.storeItem.ItemId, int.Parse(itemQuantityAmount.text), paymentType, purchaseLocation, StandardCurrencyAccessLocations), OnReceivedItemPurchaseConfirmation);
            ClosePanel();
        }
コード例 #4
0
 public static void GetPremiumCurrencyBalance(Action <int> callback, bool forceUpdate = true)
 {
     if (PremiumAmount == null)
     {
         GetWolrdCurrencyInfo(StandardCurrencyLoaction);
         RecivecdPremiumAmount += callback;
     }
     else if (forceUpdate)
     {
         ItemStoreServices.GetPremiumCurrencyBalance(balance =>
         {
             callback(balance.Amount);
         });
     }
     else
     {
         callback(PremiumAmount.GetValueOrDefault(0));
     }
 }
コード例 #5
0
 public static void GetStandardCurrencyBalance(List <int> location, Action <int> callback, bool forceUpdate = true)
 {
     StandardCurrencyLoaction = location;
     if (StandardAmount == null)
     {
         GetWolrdCurrencyInfo(StandardCurrencyLoaction);
         RecivecdStandardAmount += callback;
     }
     else if (forceUpdate)
     {
         ItemStoreServices.GetStandardCurrencyBalance(new StandardCurrencyBalanceRequest(StandardCurrencyLoaction), balance =>
         {
             StandardAmount = balance.Total;
             callback(StandardAmount.GetValueOrDefault(0));
             Debug.Log(StandardAmount);
         });
     }
     else
     {
         callback(StandardAmount.GetValueOrDefault(0));
     }
 }
コード例 #6
0
 public void GetItemBundles()
 {
     ItemStoreServices.GetItemBundles(new ItemBundlesRequest(), CloudGoods_OnStoreItemBundleListLoaded);
 }
コード例 #7
0
        public void Initialize()
        {
            Debug.Log("Initialize Credit Bundles");
            ItemStoreServices.GetPremiumCurrencyBalance(null);

            switch (CloudGoodsSettings.PlatformType)
            {
            case CloudGoodsSettings.BuildPlatformType.Automatic:
                if (isWaitingForPlatform)
                {
                    return;
                }
                isWaitingForPlatform = true;
                CloudGoodsSettings.OnBuildPlatformFound += (platform) =>
                {
                    Debug.Log("Recived new build platform");
                    Initialize();
                };
                return;

            case CloudGoodsSettings.BuildPlatformType.Facebook:
                platformPurchasor = gameObject.AddComponent <FaceBookPurchaser>();
                break;

            case CloudGoodsSettings.BuildPlatformType.Kongergate:
                platformPurchasor = gameObject.AddComponent <KongregatePurchase>();
                break;

            case CloudGoodsSettings.BuildPlatformType.Android:
                platformPurchasor = gameObject.AddComponent <AndroidPremiumCurrencyPurchaser>();
                break;

            case CloudGoodsSettings.BuildPlatformType.IOS:
                platformPurchasor = gameObject.AddComponent <iOSPremiumCurrencyPurchaser>();
                GameObject o = new GameObject("iOSConnect");
                o.AddComponent <iOSConnect>();
                break;

            case CloudGoodsSettings.BuildPlatformType.CloudGoodsStandAlone:
                Debug.LogWarning("Cloud Goods Stand alone has not purchase method currently.");
                break;
            }

            if (platformPurchasor == null)
            {
                Debug.Log("platform purchasor is null");
                return;
            }

            platformPurchasor.RecievedPurchaseResponse += OnRecievedPurchaseResponse;
            platformPurchasor.OnPurchaseErrorEvent     += platformPurchasor_OnPurchaseErrorEvent;

            if (CloudGoodsSettings.PlatformType == CloudGoodsSettings.BuildPlatformType.Editor)
            {
                Debug.Log("Get credit bundles from editor");

                ItemStoreServices.GetPremiumBundles(new PremiumBundlesRequest(1), OnPurchaseBundlesRecieved);
            }
            else
            {
                Debug.Log("Purchasing credit bundles from platform:" + CloudGoodsSettings.PlatformType);
                ItemStoreServices.GetPremiumBundles(new PremiumBundlesRequest((int)CloudGoodsSettings.PlatformType), OnPurchaseBundlesRecieved);
            }

            isInitialized = true;
        }
コード例 #8
0
 public void PurchaseBundleWithPremiumCurrency()
 {
     ItemStoreServices.PurchaseItemBundle(new ItemBundlePurchaseRequest(currentItemBundle.Id, (int)CurrencyType.Premium, AccessLocations, purchaseContainerLocation), OnReceivedPurchaseCallback);
     ClosePurchaseWindow();
 }
コード例 #9
0
 public void InitializeStore()
 {
     ItemStoreServices.GetStoreItems(new StoreItemsRequest(), OnReceivedStoreItems);
 }