Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/trilitech/tezos-unity-sdk-examples

Scene-by-scene examples demonstrating the Tezos SDK For Unity
https://github.com/trilitech/tezos-unity-sdk-examples

blockchain crypto dapp decentralization defi gaming nft tezos unity web3

Last synced: 16 days ago
JSON representation

Scene-by-scene examples demonstrating the Tezos SDK For Unity

Awesome Lists containing this project

README

        

# Tezos SDK For Unity - Examples

This **Unity Project** demonstrates key features of the "Tezos SDK For Unity". It contains one isolated Unity Scene for each feature.

### Getting Started
1. Download this repo (*.zip or *.git)
1. Download the [Unity Editor](https://store.unity.com/#plans-individual)
1. Open this repo in the Unity Editor
1. Enjoy!

### Documentation
* Web Documentation - **Overview** of the "Tezos SDK For Unity"

### Configuration
* **Unity Project** - ./Unity/
* **Unity Version** - [Version](./Unity/ProjectSettings/ProjectVersion.txt)
* **Unity Target** - [Standalone MAC/PC](https://support.unity.com/hc/en-us/articles/206336795-What-platforms-are-supported-by-Unity-)
* **Unity Menus** - See `Unity → Window → Tezos → Tezos SDK For Unity → Open ReadMe` for additional orientation
* **Unity Dependencies** - The [Unity Package Manager](https://docs.unity3d.com/Manual/upm-ui.html) resolves all project dependencies from the [Manifest.json](./Unity/Packages/manifest.json) including the Tezos SDK For Unity. No further action is required

### Videos

This **Unity Project** is featured in the following videos.

Tezos SDK For Unity - Authentication
Tezos SDK For Unity - NFTS

### Screenshots

Example01_Authentication
Example02_NFTTokenGating

### Features

This project showcases several key features and use-cases for the "Tezos SDK For Unity". Here are highlights.

**Authentication**

User connects to the blockchain with a Tezos-compatible mobile wallet.

To see this feature in action, play the `Example01_Authentication` Scene. The Example01_Authentication.cs class provides a full demonstration. Here is partial snippet.

```csharp

// Store reference for convenience
ITezosAPI tezos = TezosSingleton.Instance;

// Determines if the user is authenticated
if (!tezos.HasActiveWalletAddress())
{
// Makes a call to connect with a wallet
tezos.ConnectWallet();
}
```

**NFTs**

User checks ownership of a given NFT. In production, this may unlock related game features.

To see this feature in action, play the `Example02_NFTTokenGating` Scene. The Example02_NFTTokenGating.cs class provides a full demonstration. Here is partial snippet.

```csharp

// Setup
string demoNFTAddress = "KT1BRADdqGk2eLmMqvyWzqVmPQ1RCBCbW5dY";
int demoTokenId = 1;

// Store reference for convenience
ITezosAPI tezos = TezosSingleton.Instance;

// Returns the address of the current active wallet
string activeWalletAddress = tezos.GetActiveWalletAddress();

// Determines if the user account owns a given Nft
bool hasTheNft = tezos.IsOwnerOfToken(
activeWalletAddress,
demoNFTAddress,
demoTokenId);

if (hasTheNft)
{
// Unlock special game features
}
```