同步哈希集

SyncHashSet是类似于 C# HashSet(哈希集合)的集合,它们会将其内容从服务器同步到客户端。

一个 SyncHashSet 可以包含任何支持的 Mirror 类型(数据类型)

用法

SyncHashSet 必须声明为 readonly 并在构造函数中初始化。

在你的 NetworkBehaviour 类中添加一个 SyncHashSet 字段。例如:

public class Player : NetworkBehaviour
{
    [SerializeField]
    public readonly SyncHashSet<string> skills = new SyncHashSet<string>();

    int skillPoints = 10;

    [Command]
    public void CmdLearnSkill(string skillName)
    {
        if (skillPoints > 1)
        {
            skillPoints--;
            skills.Add(skillName);
        }
    }
}

你也可以检测 SyncHashSet 何时发生变化。这对于在客户端刷新角色或确定何时需要更新数据库非常有用。

通常在 StartOnClientStartOnServerStart 中订阅 Callback 事件。

最后更新于

这有帮助吗?