"uid": "4a13bcd3-ff64-43a4-8c13-e978d968f68c",
"priceInUSD": 0.99,
"quantity": 10"uid": "0eeae85c-c9af-47f0-8df4-56a4442c23d7",
"priceInUSD": 1.99,
"quantity": 20"uid": "9d2ed68b-2a6c-45d4-bc07-29f256799943",
"priceInUSD": 2.99,
"quantity": 30"uid": "b7bcbbf6-753d-47dd-8bff-93b4539c825d",
"priceInUSD": 4.99,
"quantity": 50"uid": "b81e8e95-59a6-4a77-b1bc-f5b7d6eacfa4",
"priceInUSD": 9.99,
"quantity": 110"uid": "f35c4f83-cf22-4723-828a-66e8069614eb",
"priceInUSD"
"uid": "3c814835-9f6f-4947-98f0-6e70964b887d",
"priceInUSD"
"uid": "b65994dc-ecfd-4549-ab32-51e196947c8b",
"priceInUSD"
using UnityEngine;
using RGN.Modules.Currency;
using UnityEngine.Purchasing;
public class CurrenciesExamples : MonoBehaviour
{
public PurchaseProcessingResult ProcessPurchase(PurchaseEventArgs purchaseEvent)
{
bool validPurchase = true; // Presume valid for platforms with no R.V.
if (validPurchase)
{
Debug.Log($"Product {purchaseEvent.purchasedProduct.definition.id} Purchased");
string transactionId = purchaseEvent.purchasedProduct.transactionID;
string receipt = purchaseEvent.purchasedProduct.receipt;
PurchaseRGNCoinAsync(transactionId, receipt);
}
else
{
Debug.LogError($"Something happened when trying to purchase product {purchaseEvent.purchasedProduct.definition.id}");
}
return PurchaseProcessingResult.Complete;
}
public async void PurchaseRGNCoinAsync(string transactionId, string receipt)
{
string rgnProductId = "4a13bcd3-ff64-43a4-8c13-e978d968f68c"; // 10 rgn-coin
await CurrencyModule.I.PurchaseRGNCoinAsync(rgnProductId, transactionId, receipt);
}
}using System.Collections.Generic;
using UnityEngine;
using RGN.Modules.Currency;
public class CurrenciesExamples : MonoBehaviour
{
public async void GetRgnCoinCurrenciesAsync()
{
List<Currency> currencies = await CurrencyModule.I.GetUserCurrenciesAsync();
Currency readyCurrency = currencies.Find(x => x.name.Equals("rgn-coin"));
Debug.Log($"User has {readyCurrency.quantity} rgn-coin");
}
}using System.Collections.Generic;
using UnityEngine;
using RGN.Modules.Currency;
public class CurrenciesExamples : MonoBehaviour
{
public async void AddSoftCurrenciesAsync()
{
Currency goldCurrency = new Currency
{
name = "gold",
quantity = 10
};
List<Currency> currenciesToAdd = new List<Currency> { goldCurrency };
await CurrencyModule.I.AddUserCurrenciesAsync(currenciesToAdd);
}
}using System.Collections.Generic;
using UnityEngine;
using RGN.Modules.Currency;
public class CurrenciesExamples : MonoBehaviour
{
public async void GetSoftCurrenciesAsync()
{
List<Currency> currencies = await CurrencyModule.I.GetUserCurrenciesAsync();
Currency goldCurrency = currencies.Find(x => x.name.Equals("gold"));
Debug.Log($"User has {goldCurrency.quantity} gold");
}
}