Table of Contents

Class ModuleBuilder

Namespace
HeyBox.Interactions.Builders
Assembly
HeyBox.Net.Interactions.dll

表示用于创建 ModuleInfo 的生成器。

public class ModuleBuilder
Inheritance
ModuleBuilder
Inherited Members

Constructors

ModuleBuilder(InteractionService, string)

初始化一个新的 ModuleBuilder

public ModuleBuilder(InteractionService interactionService, string name)

Parameters

interactionService InteractionService

底层交互服务。

name string

此模块的名称。

Properties

Attributes

获取此模块的特性集合。

public IReadOnlyList<Attribute> Attributes { get; }

Property Value

IReadOnlyList<Attribute>

ContextTypes

获取或设置此命令可在哪些上下文类型中执行。

public HashSet<InteractionContextType> ContextTypes { get; set; }

Property Value

HashSet<InteractionContextType>

Description

获取或设置此模块的描述。

public string? Description { get; set; }

Property Value

string

InteractionService

获取底层交互服务。

public InteractionService InteractionService { get; }

Property Value

InteractionService

Name

获取此模块的名称。

public string? Name { get; }

Property Value

string

Preconditions

获取此模块的先决条件集合。

public IReadOnlyCollection<PreconditionAttribute> Preconditions { get; }

Property Value

IReadOnlyCollection<PreconditionAttribute>

SlashCommands

获取此模块的斜线命令集合。

public IReadOnlyList<SlashCommandBuilder> SlashCommands { get; }

Property Value

IReadOnlyList<SlashCommandBuilder>

Methods

AddAttributes(params Attribute[])

Attributes 添加特性。

public ModuleBuilder AddAttributes(params Attribute[] attributes)

Parameters

attributes Attribute[]

要添加到 Attributes 的新特性。

Returns

ModuleBuilder

生成器实例。

AddPreconditions(params PreconditionAttribute[])

Preconditions 添加先决条件。

public ModuleBuilder AddPreconditions(params PreconditionAttribute[] preconditions)

Parameters

preconditions PreconditionAttribute[]

要添加到 Preconditions 的新先决条件。

Returns

ModuleBuilder

生成器实例。

AddSlashCommand(Action<SlashCommandBuilder>)

SlashCommands 添加斜线命令生成器。

public ModuleBuilder AddSlashCommand(Action<SlashCommandBuilder> configure)

Parameters

configure Action<SlashCommandBuilder>

SlashCommandBuilder 工厂方法。

Returns

ModuleBuilder

生成器实例。

AddSlashCommand(string, ExecuteCallback, Action<SlashCommandBuilder>)

SlashCommands 添加斜线命令生成器。

public ModuleBuilder AddSlashCommand(string name, ExecuteCallback callback, Action<SlashCommandBuilder> configure)

Parameters

name string

命令名称。

callback ExecuteCallback

要执行的命令回调。

configure Action<SlashCommandBuilder>

SlashCommandBuilder 工厂方法。

Returns

ModuleBuilder

生成器实例。

WithContextTypes(params InteractionContextType[])

设置此 ModuleBuilderContextTypes

public ModuleBuilder WithContextTypes(params InteractionContextType[] contextTypes)

Parameters

contextTypes InteractionContextType[]

命令可执行的上下文类型。

Returns

ModuleBuilder

生成器实例。

WithDescription(string)

设置 Description

public ModuleBuilder WithDescription(string description)

Parameters

description string

Description 的新值。

Returns

ModuleBuilder

生成器实例。