void OnPurchaseSuccess(string[] items) { if (_pendingPurchase == null) { Debug.LogErrorFormat( "Received purchase success notification when no purchase was in progress: {0}", string.Join(", ", items)); return; } // When the purchase succeeds, request an updated list of user items from // Kongregate. The purchase items flow doesn't return the metadata for the // purchased item, so we need to request the items ourself to finish the // purchase flow. KongregateWeb.RequestUserItemList(); }
public void TestUserItems() { bool userItemsRecieved = false; KongregateWeb.UserItemsReceived += items => { userItemsRecieved = true; Assert.AreEqual( new UserItem[] { new UserItem(123, "cool_item", "some metadata goes here", 1), }, items); }; KongregateWeb.RequestUserItemList(); _kongWebInstance.SendMessage("OnUserItems", UserItemJson); Assert.IsTrue(userItemsRecieved); }
public void RetrieveProducts(ReadOnlyCollection <ProductDefinition> products) { Debug.Assert( _pendingPurchase == null, "Attempting to update store products while purchase is in progress"); _pendingProducts = products; // Wait for the API to become ready, then request the list of store items // and the user's items. // // NOTE: BecameReady is invoked immediately if the API is already ready, so // the callback will still be invoked even if the API is already ready. KongregateWeb.BecameReady += () => { KongregateWeb.RequestItemList(); KongregateWeb.RequestUserItemList(); }; }