Table of Contents

Interface ICommandParameterDescriptor

Namespace
Uncreated.Warfare.Interaction.Commands.Syntax
Assembly
Uncreated.Warfare.dll

Describes a command or parameter for a command (including sub-commands).

public interface ICommandParameterDescriptor

Properties

Aliases

Values that can be entered instead of Name.

IReadOnlyList<string> Aliases { get; }

Property Value

IReadOnlyList<string>

Chain

Number of sub-parameters to chain into one 'parameter' including this one. Requires that all child parameters up to that amount have only one parameter.

int Chain { get; }

Property Value

int

Remarks

Example: /tp [x y z|location|player] where x.ChainDisplayAmount = 3.

Description

Translatable description of the command or sub-command.

TranslationList? Description { get; }

Property Value

TranslationList

Flags

List of valid flags for this command or parameter.

IReadOnlyList<ICommandFlagDescriptor> Flags { get; }

Property Value

IReadOnlyList<ICommandFlagDescriptor>

Name

Name of the parameter in proper-case format.

string Name { get; }

Property Value

string

Optional

If the parameter is optional. All other parameters on this level must also be marked optional.

bool Optional { get; }

Property Value

bool

Parameters

List of sub-parameters.

IReadOnlyList<ICommandParameterDescriptor> Parameters { get; }

Property Value

IReadOnlyList<ICommandParameterDescriptor>

Parent

The parent of this parameter descriptor, if any.

ICommandParameterDescriptor? Parent { get; }

Property Value

ICommandParameterDescriptor

Permission

The permission needed to use this parameter.

PermissionLeaf Permission { get; }

Property Value

PermissionLeaf

Remainder

If the parameter spans the rest of the command arguments, including spaces.

bool Remainder { get; }

Property Value

bool

Types

List of valid types that can be used for this parameter.

IReadOnlyList<Type> Types { get; }

Property Value

IReadOnlyList<Type>

Remarks

Verbatim parameter types will have the type of VerbatimParameterType.