API Usage Example
Create empty
GameObject
namedDigitalObjectController
in the scene, setGameObject
tag toDigitalObjectController
and addAsylumDigitalObjectsController.cs
as its componentCreate new C# script(e.g.
ItemsController
) and linkAsylumDigitalObjectsController
component to it. You can do it via inspector, using public/serializable fields or FindObjectOfType method or with the help of dependency injection (like Zenject)Remember to set the user's wallet passphrase before start working with AsylumDigitalObjectsController. Simply initialize the property
AccountSecretPhrase
with a string with the secret phrase. You can set it from inspector in AsylumDigitalObjectsController component.//ItemsController.cs
void Start
{
AsylumDigitalObjectsController asylumClient = FindObjectOfType<AsylumDigitalObjectsController>();
}Get user items list in the
ItemsController
. Simply subscribe on the eventOnUserItemsRecieved
and callRequestAsylumUserItems
// ItemsController.cs
AsylumDigitalObjectsController asylumClient;
void Start()
{
//Connect to the chain.
asylumClient.ConnectToChain();
// Subsribe on event
asylumClient.OnItemWasLoaded += OnItemLoaded;
//Send request
asylumClient.RequestAsylumUserItems();
// Manual call
List<AsylumItemAsyncHandler> items = asylumClient.ItemHandlers;
}
void OnItemLoaded(List<AsylumItemAsyncHandler> items)
{
...
}Get user info in the
ItemsController
. Simply subscribe on the eventOnUserInfoRecieved
and callingRequestAsylumUserInfo
//ItemsController.cs
AsylumDigitalObjectsController asylumClient;
void Start()
{
//Connect to chain.
asylumClient.OnConnected();
// Subsribe on event
asylumClient.OnUserInfoRecieved += UserInfoRecieved;
//Send request
asylumClient.RequestAsylumUserInfo();
// Manual call
UserInfo userInfo = asylumClient.UserInfo;
}
void UserInfoRecieved(UserInfo info)
{
...
}Get user info in the
ItemsController
. Simply subscribe on the eventOnItemWasLoaded
and callingRequestMintAsylumItem
//ItemsController.cs
AsylumDigitalObjectsController asylumClient;
void Start()
{
//Connect to chain.
asylumClient.OnConnected();
// Subsribe on event
asylumClient.OnItemWasLoaded += MintedItemsRecieved;
// Set blueprintId for minted item
int blueprintId = 0;
// Set metadata for the minted item
AsylumItemMetadata metadata = new AsylumItemMetadata("description of minted item","name of minted item");
//Send a request with 2 params
reactClientInstance.RequestMintAsylumItem(blueprintId,metadata);
}
void MintedItemsRecieved(List<AsylumItemAsyncHandler> mintedItems)
{
...
}