public void Initialize() { Debug.Log("Initialize Credit Bundles"); switch (BuildPlatform.Platform) { case BuildPlatform.BuildPlatformType.Automatic: if (isWaitingForPlatform) { return; } isWaitingForPlatform = true; BuildPlatform.OnBuildPlatformFound += (platform) => { Debug.Log("Recived new build platform"); Initialize(); }; return; case BuildPlatform.BuildPlatformType.Facebook: platformPurchasor = gameObject.AddComponent <FaceBookPurchaser>(); break; case BuildPlatform.BuildPlatformType.Kongergate: platformPurchasor = gameObject.AddComponent <KongregatePurchase>(); break; case BuildPlatform.BuildPlatformType.Android: platformPurchasor = gameObject.AddComponent <AndroidPremiumCurrencyPurchaser>(); break; case BuildPlatform.BuildPlatformType.IOS: platformPurchasor = gameObject.AddComponent <iOSPremiumCurrencyPurchaser>(); GameObject o = new GameObject("iOSConnect"); o.AddComponent <iOSConnect>(); break; case BuildPlatform.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 (BuildPlatform.Platform == BuildPlatform.BuildPlatformType.EditorTestPurchasing) { Debug.Log("Get credit bundles from editor"); CloudGoods.GetCreditBundles(1, OnPurchaseBundlesRecieved); } else { Debug.Log("Purchasing credit bundles from platform:" + BuildPlatform.Platform); CloudGoods.GetCreditBundles((int)BuildPlatform.Platform, OnPurchaseBundlesRecieved); } isInitialized = true; }