public interface IInventoryExtensionManagerProvides owner-scoped inventory virtualization. CMAPI supplies no slot rules by default; normal game behavior remains unchanged until a mod registers a provider.
Members
IsAvailableGets whether inventory extensions are supported by the current game build.propertyRegisterSlotProviderRegisters the session's virtual-slot provider. Only one provider may be active because competing inventory layouts cannot be reconciled safely. Disposing the returned handle unregisters it.methodGetLayoutGets the current layout for a loaded inventory, or null when it is unavailable.methodGetLoadedLayoutsGets virtual layouts for every inventory currently loaded.methodGetSafetyReportFinds loaded inventories containing more physical items than their native capacity. No items are moved, changed, or deleted.methodIsAvailable
propertybool IsAvailableGets whether inventory extensions are supported by the current game build.
RegisterSlotProvider
methodIDisposable RegisterSlotProvider(IInventorySlotProvider provider)Registers the session's virtual-slot provider. Only one provider may be active because competing inventory layouts cannot be reconciled safely. Disposing the returned handle unregisters it.
GetLayout
methodInventoryLayoutSnapshot? GetLayout(int inventoryId)Gets the current layout for a loaded inventory, or null when it is unavailable.
GetLoadedLayouts
methodIReadOnlyList<InventoryLayoutSnapshot> GetLoadedLayouts()Gets virtual layouts for every inventory currently loaded.
GetSafetyReport
methodInventorySafetyReport GetSafetyReport()Finds loaded inventories containing more physical items than their native capacity. No items are moved, changed, or deleted.