Despliegue de Smart Contracts
Si bien, en general, recomendamos desplegar sus smart contracts mediante el Builder, reconocemos que hay casos de uso donde desplegar un smart contract desde Unity (o una aplicación hecha con Unity) es útil.
El despliegue de contratos implica enviar una transacción, lo cual se realiza mediante una tarea asíncrona. Puede usar await
al llamar a SequenceWallet.DeployContract
dentro de una tarea asíncrona si desea obtener directamente el objeto ContractDeploymentReturn
. O bien, puede tomar el enfoque recomendado, que es configurar funciones manejadoras para los eventos SequenceWallet.OnDeployContractComplete
y SequenceWallet.OnDeployContractFailed
y llamar al método SequenceWallet.DeployContract
desde cualquier lugar (sin await).
SequenceWallet.DeployContract
es básicamente un envoltorio para una llamada muy especial a SequenceWallet.SendTransaction
y, por lo tanto, puede esperar recibir también los eventos SequenceWallet.OnSendTransactionComplete
o SequenceWallet.OnSendTransactionFailed
.
Si no está familiarizado con el trabajo con eventos en Unity, consulte esta excelente publicación en Reddit.
Para desplegar un contrato, primero debe compilar el código de su smart contract a bytecode y agregar el bytecode como una cadena hexadecimal en uno de sus scripts de C#.
Para desplegar un smart contract, puede usar este fragmento de código: