MintWebGL1155.cs 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using Models;
  2. using Web3Unity.Scripts.Library.ETHEREUEM.Connect;
  3. using UnityEngine;
  4. using System;
  5. #if UNITY_WEBGL
  6. public class MintWebGL1155 : MonoBehaviour
  7. {
  8. // set chain: ethereum, moonbeam, polygon etc
  9. public string chain = "ethereum";
  10. // set network mainnet, testnet
  11. public string network = "goerli";
  12. // address of nft you want to mint
  13. public string nftAddress = "0x2c1867bc3026178a47a677513746dcc6822a137a";
  14. // type
  15. string type = "1155";
  16. public async void VoucherMintNft1155()
  17. {
  18. try
  19. {
  20. var voucherResponse1155 = await EVM.Get1155Voucher();
  21. CreateRedeemVoucherModel.CreateVoucher1155 voucher1155 = new CreateRedeemVoucherModel.CreateVoucher1155();
  22. voucher1155.tokenId = voucherResponse1155.tokenId;
  23. voucher1155.minPrice = voucherResponse1155.minPrice;
  24. voucher1155.signer = voucherResponse1155.signer;
  25. voucher1155.receiver = voucherResponse1155.receiver;
  26. voucher1155.amount = voucherResponse1155.amount;
  27. voucher1155.nonce = voucherResponse1155.nonce;
  28. voucher1155.signature = voucherResponse1155.signature;
  29. string voucherArgs = JsonUtility.ToJson(voucher1155);
  30. // connects to user's browser wallet to call a transaction
  31. RedeemVoucherTxModel.Response voucherResponse = await EVM.CreateRedeemTransaction(chain, network, voucherArgs, type, nftAddress, voucherResponse1155.receiver);
  32. string response = await Web3GL.SendTransactionData(voucherResponse.tx.to, voucherResponse.tx.value.ToString(), voucherResponse.tx.gasPrice, voucherResponse.tx.gasLimit, voucherResponse.tx.data);
  33. print("Response: " + response);
  34. }
  35. catch (Exception e)
  36. {
  37. Debug.LogException(e, this);
  38. }
  39. }
  40. }
  41. #endif