private void CompletePurchase() { this.m_Message = string.Empty; string password = this.m_Password; this.m_Password = string.Empty; this.m_Purchasing = AssetStoreInstaBuyWindow.PurchaseStatus.InProgress; AssetStoreClient.DirectPurchase(this.m_Asset.packageID, password, delegate(PurchaseResult result) { this.m_Purchasing = AssetStoreInstaBuyWindow.PurchaseStatus.Init; if (result.error != null) { this.m_Purchasing = AssetStoreInstaBuyWindow.PurchaseStatus.Declined; this.m_Message = "An error occured while completing you purhase."; base.Close(); } string text = null; switch (result.status) { case PurchaseResult.Status.BasketNotEmpty: this.m_Message = "Something else has been put in our Asset Store basket while doing this purchase."; this.m_Purchasing = AssetStoreInstaBuyWindow.PurchaseStatus.Declined; break; case PurchaseResult.Status.ServiceDisabled: this.m_Message = "Single click purchase has been disabled while doing this purchase."; this.m_Purchasing = AssetStoreInstaBuyWindow.PurchaseStatus.Declined; break; case PurchaseResult.Status.AnonymousUser: this.m_Message = "You have been logged out from somewhere else while doing this purchase."; this.m_Purchasing = AssetStoreInstaBuyWindow.PurchaseStatus.Declined; break; case PurchaseResult.Status.PasswordMissing: this.m_Message = result.message; base.Repaint(); break; case PurchaseResult.Status.PasswordWrong: this.m_Message = result.message; base.Repaint(); break; case PurchaseResult.Status.PurchaseDeclined: this.m_Purchasing = AssetStoreInstaBuyWindow.PurchaseStatus.Declined; if (result.message != null) { this.m_Message = result.message; } base.Repaint(); break; case PurchaseResult.Status.Ok: this.m_Purchasing = AssetStoreInstaBuyWindow.PurchaseStatus.Complete; if (result.message != null) { this.m_Message = result.message; } base.Repaint(); break; } if (text != null) { EditorUtility.DisplayDialog("Purchase failed", text + " This purchase has been cancelled.", "Add this item to basket", "Cancel"); } }); Analytics.Track(string.Format("/AssetStore/InstaBuy/{0}/{1}", this.m_Asset.packageID, this.m_Asset.id)); }
void CompletePurchase() { m_Message = ""; string pw = m_Password; m_Password = ""; m_Purchasing = PurchaseStatus.InProgress; AssetStoreClient.DirectPurchase(m_Asset.packageID, pw, delegate(PurchaseResult result) { m_Purchasing = PurchaseStatus.Init; if (result.error != null) { m_Purchasing = PurchaseStatus.Declined; m_Message = "An error occurred while completing you purhase."; Close(); } string msg = null; switch (result.status) { case PurchaseResult.Status.BasketNotEmpty: m_Message = "Something else has been put in our Asset Store basket while doing this purchase."; m_Purchasing = PurchaseStatus.Declined; break; case PurchaseResult.Status.ServiceDisabled: m_Message = "Single click purchase has been disabled while doing this purchase."; m_Purchasing = PurchaseStatus.Declined; break; case PurchaseResult.Status.AnonymousUser: m_Message = "You have been logged out from somewhere else while doing this purchase."; m_Purchasing = PurchaseStatus.Declined; break; case PurchaseResult.Status.PasswordMissing: m_Message = result.message; Repaint(); break; case PurchaseResult.Status.PasswordWrong: m_Message = result.message; Repaint(); break; case PurchaseResult.Status.PurchaseDeclined: m_Purchasing = PurchaseStatus.Declined; if (result.message != null) { m_Message = result.message; } Repaint(); break; case PurchaseResult.Status.Ok: m_Purchasing = PurchaseStatus.Complete; if (result.message != null) { m_Message = result.message; } Repaint(); break; } if (msg != null) { EditorUtility.DisplayDialog("Purchase failed", msg + " This purchase has been cancelled.", "Add this item to basket", "Cancel"); } }); UsabilityAnalytics.Track(string.Format("/AssetStore/InstaBuy/{0}/{1}", m_Asset.packageID, m_Asset.id)); }