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); } }
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); } }); }); } }
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(); }
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)); } }
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)); } }
public void GetItemBundles() { ItemStoreServices.GetItemBundles(new ItemBundlesRequest(), CloudGoods_OnStoreItemBundleListLoaded); }
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; }
public void PurchaseBundleWithPremiumCurrency() { ItemStoreServices.PurchaseItemBundle(new ItemBundlePurchaseRequest(currentItemBundle.Id, (int)CurrencyType.Premium, AccessLocations, purchaseContainerLocation), OnReceivedPurchaseCallback); ClosePurchaseWindow(); }
public void InitializeStore() { ItemStoreServices.GetStoreItems(new StoreItemsRequest(), OnReceivedStoreItems); }