我需要开发排行榜的存储细节(意味着分数)的球员在游戏中。只是显示球员在排行榜上的分数UNITY3D.so请帮助我我没有任何想法。在下面的代码社会平台命名空间是有,但我不知道如何开始和如何实现在unity3d排行榜。
using UnityEngine;
using System.Collections.Generic;
using UnityEngine.SocialPlatforms;
public class LBoard : MonoBehaviour
{
ILeaderboard leaderBoard;
// Use this for initialization
void Start ()
{
leaderBoard = Social.CreateLeaderboard();
}
// Update is called once per frame
void Update ()
{
}
}
2条答案
按热度按时间ljsrvy3e1#
您需要创建一个IComparable类,并添加名称和分数等详细信息,按分数进行比较。
你还需要一份名单
您需要某种方式从用户那里获取输入以添加名称。
添加分数时,创建iComparer类的对象,并设置名称、分数等。
然后向List中添加新对象并对列表进行排序List.Sort();.如果你想反转,然后添加reverse().
将列表保存为播放器首选项,例如
要显示姓名和分数,请为姓名/分数创建3dText对象,并放置如下脚本
}
为每个对象设置位置。用分数脚本为分数做同样的事情。
在游戏开始时添加球员首选项到列表中,否则你会得到一个错误,当试图检索名称/分数。需要与列表大小相同的数量。
不知道我是否解释得很好,但你基本上需要添加playerprefs到列表,添加可比较的分数到列表,排序列表,保存列表,显示保存的列表。)
j7dteeu82#
如果您将排行榜视为本地高分表,则需要两个函数:AddScore和一个获得高分的函数。(注意这个例子是用C#编写的)
接下来是高分:
如果你想创建一个网络/在线排行榜,你需要使用类似GameFly的东西(看看那个例子)。