Interface ICustomItemService

Namespace
FTK2.ModAPI.Content.Items
Assembly
FTK2.ModAPI.dll

Creates, registers, activates, inspects, and removes namespaced custom items for one mod owner.

public interface ICustomItemService

Remarks

Calls are main-thread-only. The service does not provide public character inventory or equipment operations in 0.5.9.

Properties

Capabilities

Gets explicit support flags for the current implementation.

CustomItemCapabilities Capabilities { get; }

Property Value

CustomItemCapabilities

Entries

Gets a snapshot of registered custom-item definitions.

IReadOnlyList<ItemDefinition> Entries { get; }

Property Value

IReadOnlyList<ItemDefinition>

RuntimeInsertionSupported

Reports whether controlled runtime item creation is available.

bool RuntimeInsertionSupported { get; }

Property Value

bool

Methods

Activate(ContentId, out ICustomItemActivation?)

Requests native activation and returns an owner-bound handle.

CustomItemActivationResult Activate(ContentId id, out ICustomItemActivation? activation)

Parameters

id ContentId
activation ICustomItemActivation

Returns

CustomItemActivationResult

Contains(ContentId)

Reports whether a registered definition is visible by canonical ID.

bool Contains(ContentId id)

Parameters

id ContentId

Returns

bool

CreateRuntimeItem(ContentId, int, out ICustomRuntimeItem?, out string?)

Creates a tracked native item from an active definition.

RuntimeItemCreationResult CreateRuntimeItem(ContentId id, int quantity, out ICustomRuntimeItem? item, out string? detail)

Parameters

id ContentId
quantity int
item ICustomRuntimeItem
detail string

Returns

RuntimeItemCreationResult

TryCreateFromTemplate(ContentId, string, out ItemDefinition?, out string?)

Creates an immutable draft from a compatible native FTK2 item template.

bool TryCreateFromTemplate(ContentId id, string templateItemId, out ItemDefinition? definition, out string? error)

Parameters

id ContentId
templateItemId string
definition ItemDefinition
error string

Returns

bool

TryGet(ContentId, out ItemDefinition?)

Gets a registered custom-item definition by canonical ID.

bool TryGet(ContentId id, out ItemDefinition? definition)

Parameters

id ContentId
definition ItemDefinition

Returns

bool

TryRegister(ItemDefinition, out string?)

Registers an owned definition without activating native content.

bool TryRegister(ItemDefinition definition, out string? error)

Parameters

definition ItemDefinition
error string

Returns

bool

TryRemove(ContentId, out string?)

Removes an owned inactive definition.

bool TryRemove(ContentId id, out string? error)

Parameters

id ContentId
error string

Returns

bool