logo
Guías

Sincronizar los datos del jugador

Gestiona y sincroniza los datos asociados al jugador local.

Sincronizar los datos del jugador

Eco separa los datos del jugador de los datos de un Objeto. Esto permite almacenar información asociada directamente al participante de la sesión sin convertirla en estado de una entidad del mundo.

Jugador ≠ Objeto

Utiliza playerData para información del participante y Objeto para entidades de red del mundo. No mezcles ambos modelos sólo porque ambos utilizan Nodo.

Modelo

ClienteJuego

    └── Jugador local

            └── playerData : Nodo

El jugador local expone sus datos mediante playerData, mientras que SetPlayerData permite modificar una ruta concreta y solicitar su sincronización con el servidor. SyncPlayerData permite forzar la sincronización completa del Nodo.

Asignar un dato

cliente.SetPlayerData("Perfil/Nivel", 12);
cliente.SetPlayerData("Perfil/Clase", "Caballero");

Leer los datos

Nodo datos = cliente.playerData;

Cuando necesites leer un dato concreto, trabaja con las operaciones de Nodo sobre la ruta correspondiente.

Sincronización completa

cliente.playerData.SetChild("Perfil/Nivel", 12);
cliente.SyncPlayerData();
OperaciónUso
SetPlayerData(path, value)Cambiar y enviar un dato concreto
SyncPlayerData()Enviar el árbol completo del jugador
playerDataLeer o manipular localmente el Nodo

Persistencia

Los datos del jugador y la persistencia del mundo no son exactamente el mismo sistema. playerData representa información del participante; el estado persistente de canales y objetos pertenece al mundo de red.

ClienteJuego

Implementación de playerData, SetPlayerData y SyncPlayerData.

Persistencia

Estado persistente de la sesión y del mundo.

On this page