Saltar al contenido principal

IMonsterCaptureEngine

El punto de entrada principal del SDK de Monster Capture Engine. Da acceso a todos los subsistemas del motor mediante interfaces limpias.

imonster capture engine

Hay una sola cosa que resolver y todo lo demás cuelga de ella. No hay ningún singleton estático que ir a buscar.

Namespace: OpenMon.MCE.SDK

Definición​

public interface IMonsterCaptureEngine
{
/// <summary>Access to monster database queries.</summary>
IMonsterDatabase Database { get; }

/// <summary>Access to battle system.</summary>
IBattleSystem Battle { get; }

/// <summary>Access to the player's data (roster, inventory, progression).</summary>
IPlayerData Player { get; }

/// <summary>Access to save/load functionality.</summary>
ISaveSystem SaveSystem { get; }

/// <summary>Engine version string.</summary>
string Version { get; }
}

Propiedades​

Database​

TipoIMonsterDatabase
DescripciónAcceso de solo lectura a la base de datos de monstruos. Consulta especies, movimientos, objetos, habilidades y efectividad de tipos.

Battle​

TipoIBattleSystem
DescripciónComprobación del estado de la batalla y suscripción a eventos. Comprueba si hay una batalla activa y recibe notificaciones cuando las batallas comienzan y terminan (los ganchos del motor que las alimentan todavía no están conectados: consulta IBattleSystem).

Player​

TipoIPlayerData
DescripciónAcceso al estado actual del jugador: equipo, dinero, nombre y cantidad de medallas.

SaveSystem​

TipoISaveSystem
DescripciónSolicitudes de guardado y carga por ranura, con notificaciones de eventos (todavía no conectadas a los guardados del motor: consulta ISaveSystem).

Version​

Tipostring
DescripciónLa cadena de versión del motor MCE (por ejemplo, "1.1.0").

Uso​

using OpenMon.MCE.SDK;
using Zenject;

public class MyGameFeature : MonoBehaviour
{
[Inject] private IMonsterCaptureEngine engine;

private void Start()
{
Debug.Log($"Running MCE v{engine.Version}");
Debug.Log($"Monsters: {engine.Database.MonsterCount}");
Debug.Log($"In battle: {engine.Battle.IsInBattle}");
}
}