本教程将以一个玩家登录后显示角色列表的功能为例子来向您讲解如何集成使用坚果矩阵的Unity SDK。
在这个例子中我们将在一个场景内实现简易的用户名密码登录界面,登录后跳转另一个场景来显示玩家的角色列表,这样设计案例的目的在于展示如何在多个切换的场景中使用同一个初始化后的坚果矩阵UnitySDK实例对象来完成登录后的所有接口调用。教程的最下方可以点击下载本教程内涉及到的C#脚本文件。您可以先通过下面的链接查看如何导入坚果矩阵的UnitySDK,对SDK有一个基本的了解。
https://www.nutmatrix.com/doc/unity_sdk.html
我们首先在场景中新建一个空的GameObject取名为“GameManager”,之后新建GameManager脚本文件并绑定到此空游戏物体上。脚本文件内需要引入坚果矩阵的命名空间,并在Start方法内进行初始化SDK对象。最关键一点是要设置此游戏物体不会随场景切换而销毁掉,这样才能让此SDK对象一直保留着玩家登录后的Token以便在后面的不同场景中进行各种游戏角色接口的调用。
接下来我们开始绘制UI,放上2个输入框和1个登录按钮,新建Login脚本并挂载在Canvas上,脚本中配置两个输入框的变量并将输入框拖入其中以便获取输入框内容。在Login脚本的Start方法内还要找到GameManager脚本并使用其上面的SDK对象实例。
在Login脚本中编写登录方法函数,在此函数中通过从GameManager脚本获取来的SDK对象实例来调用玩家用户名密码登录接口,在登录成功拿到Token后使用SDK的SetToken方法将玩家登录令牌保存在SDK对象实例中以便后续其他场景的使用。在本案例中登录成功后就直接切换到玩家角色列表场景中。
在玩家角色列表场景中我们依然是在Start方法中找到GameManager脚本并获取其上面的SDK对象实例,这个时候里面已经保存了玩家的登录Token。如果不在最开始的步骤中将GameManager游戏对象做永不销毁的处理,则此处就无法获取到此脚本和SDK对象实例了。接下来我们在Start方法里直接通过SDK实例调用玩家角色列表,并将玩家的所拥有的角色名称展示在屏幕上。
可以看到和我们在坚果矩阵管理后台查询到此玩家的角色列表是一致的。
本教程运行过程中调用的2次坚果矩阵接口返回数据
开发者可以将玩家令牌Token做本地保存以便游戏冷启动后可以直接SetToken给SDK对象来完成自动登录。以上就是使用坚果矩阵Unity SDK的基本方法。您可以通过下面的链接下载教程中提到的脚本文件作为参考。
https://nutmatrix.com/download/NutMatrix_UnitySDK_Base_Tutorial_Scripts.zip