Skip to main content

IMonsterCaptureEngine

The main entry point for the Monster Capture Engine SDK. Provides access to all engine subsystems via clean interfaces.

Namespace: OpenMon.MCE.SDK

Definition

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; }
}

Properties

Database

TypeIMonsterDatabase
DescriptionRead-only access to the monster database. Query species, moves, items, abilities, and type effectiveness.

Battle

TypeIBattleSystem
DescriptionBattle state checking and event subscription. Check if a battle is active and receive notifications when battles start and end.

Player

TypeIPlayerData
DescriptionAccess the player's current state: roster, money, name, and badge count.

SaveSystem

TypeISaveSystem
DescriptionSave and load game state. Supports multiple save slots with event notifications.

Version

Typestring
DescriptionThe MCE engine version string (e.g., "1.0.0").

Usage

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}");
}
}