Table of Contents

Class ConversationRegistry

Namespace
SuzerainModdingKit.StoryFragments.Conversation
Assembly
SuzerainModdingKit.dll

Static interface for registering ConversationInjections and new conversations.

public static class ConversationRegistry
Inheritance
ConversationRegistry
Inherited Members

Properties

Injections

Read-only list of registered ConversationInjections.

public static ReadOnlyCollection<ConversationInjection> Injections { get; }

Property Value

ReadOnlyCollection<ConversationInjection>

IsRegistrationClosed

If true, no new registrations will be accepted.

public static bool IsRegistrationClosed { get; }

Property Value

bool

Methods

RegisterConversation(string)

[EXPERIMENTAL] Register a new conversation.

public static bool RegisterConversation(string name)

Parameters

name string

The name of the conversation.

Returns

bool

Returns a boolean indicating whether the conversation was registered successfully or not.

Remarks

Experimental: This feature is incomplete and included for public testing. Its behavior and API may change significantly—or it may be removed—in any future release. Do not rely on it in production.

This method creates a new conversation with only a START node. Use ConversationInjections to add dialogue. Hook new dialogue to the START node using ConversationStartNodeSelector.

Exceptions

InvalidOperationException

Thrown if registration is closed.

ArgumentException

Thrown if any arguments are invalid.

RegisterInjection(ConversationInjection)

Register a new ConversationInjection.

public static void RegisterInjection(ConversationInjection injection)

Parameters

injection ConversationInjection

The ConversationInjection to register.

Exceptions

ArgumentNullException

Thrown if any required arguments are null.

InvalidOperationException

Thrown if registration is closed.

See Also