Saltar al contenido principal

IPlayerData

Contrato para acceder al estado del jugador desde el codigo del juego.

Namespace: OpenMon.MCE.SDK

Definicion

public interface IPlayerData
{
Roster PlayerRoster { get; }
int Money { get; }
string PlayerName { get; }
int BadgeCount { get; }
}

Propiedades

PlayerRoster

El equipo actual de monstruos del jugador.

Tipo: Roster

Un Roster contiene hasta 6 objetos MonsterInstance. Acceda a miembros individuales por indice:

Roster roster = player.PlayerRoster;
MonsterInstance first = roster[0]; // Lead monster
int teamSize = roster.Count; // How many monsters in the party

Money

El saldo de dinero actual del jugador.

Tipo: int

PlayerName

El nombre visible del jugador (establecido durante nueva partida o entrada de nombre).

Tipo: string

BadgeCount

La cantidad de medallas de gimnasio que el jugador ha obtenido.

Tipo: int

Ejemplo de uso

using OpenMon.MCE.SDK;
using Zenject;

public class PlayerHUD : MonoBehaviour
{
[Inject] private IPlayerData player;

[SerializeField] private Text nameLabel;
[SerializeField] private Text moneyLabel;
[SerializeField] private Text badgeLabel;
[SerializeField] private Text teamLabel;

private void Update()
{
nameLabel.text = player.PlayerName;
moneyLabel.text = $"${player.Money:N0}";
badgeLabel.text = $"Badges: {player.BadgeCount}/8";

var roster = player.PlayerRoster;
teamLabel.text = $"Team: {roster.Count}/6";
}
}
Referencias obsoletas

No almacene PlayerRoster en cache a largo plazo. La referencia al roster puede cambiar despues de operaciones de guardado/carga. Consulte player.PlayerRoster cada vez que lo necesite.