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
ContextTypes
获取或设置此命令可在哪些上下文类型中执行。
public HashSet<InteractionContextType> ContextTypes { get; set; }
Property Value
Description
获取或设置此模块的描述。
public string? Description { get; set; }
Property Value
InteractionService
获取底层交互服务。
public InteractionService InteractionService { get; }
Property Value
Name
获取此模块的名称。
public string? Name { get; }
Property Value
Preconditions
获取此模块的先决条件集合。
public IReadOnlyCollection<PreconditionAttribute> Preconditions { get; }
Property Value
SlashCommands
获取此模块的斜线命令集合。
public IReadOnlyList<SlashCommandBuilder> SlashCommands { get; }
Property Value
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[])
设置此 ModuleBuilder 的 ContextTypes。
public ModuleBuilder WithContextTypes(params InteractionContextType[] contextTypes)
Parameters
contextTypes
InteractionContextType[]命令可执行的上下文类型。
Returns
- ModuleBuilder
生成器实例。
WithDescription(string)
设置 Description。
public ModuleBuilder WithDescription(string description)
Parameters
description
stringDescription 的新值。
Returns
- ModuleBuilder
生成器实例。