Documentation

BaseCommand extends Command
in package
implements IArgumentable, IRunnable, PluginOwned Uses ArgumentableTrait

Interfaces, Classes, Traits and Enums

IArgumentable
IRunnable
Interface IRunnable
PluginOwned
This interface may be implemented by objects which are owned by plugins, to allow them to be identified as such.

Table of Contents

ERR_INSUFFICIENT_ARGUMENTS  = 0x3
ERR_INVALID_ARG_VALUE  = 0x1
ERR_NO_ARGUMENTS  = 0x4
ERR_TOO_MANY_ARGUMENTS  = 0x2
$timings  : TimingsHandler|null
$currentSender  : CommandSender
$description  : Translatable|string
$errorMessages  : array<string|int, mixed>
$usageMessage  : Translatable|string
$activeAliases  : array<string|int, string>
$aliases  : array<string|int, string>
$argumentList  : array<string|int, mixed>
$commandMap  : CommandMap|null
$constraints  : array<string|int, mixed>
$label  : string
$name  : string
$nextLabel  : string
$permission  : string|null
$permissionMessage  : string|null
$plugin  : Plugin
$requiredArgumentCount  : array<string|int, mixed>
$subCommands  : array<string|int, mixed>
__construct()  : mixed
__toString()  : string
addConstraint()  : void
broadcastCommandMessage()  : void
execute()  : mixed
generateUsageMessage()  : string
getAliases()  : array<string|int, string>
getArgumentList()  : array<string|int, array<string|int, BaseArgument>>
getConstraints()  : array<string|int, BaseConstraint>
getDescription()  : Translatable|string
getLabel()  : string
getName()  : string
getOwningPlugin()  : Plugin
getPermission()  : string|null
getPermissionMessage()  : string|null
getSubCommands()  : array<string|int, BaseSubCommand>
getUsage()  : Translatable|string
getUsageMessage()  : string
hasArguments()  : bool
hasRequiredArguments()  : bool
isRegistered()  : bool
onRun()  : void
parseArguments()  : array<string|int, mixed>
register()  : bool
Registers the command into a Command map
registerArgument()  : void
registerSubCommand()  : void
sendError()  : void
setAliases()  : void
setDescription()  : void
setErrorFormat()  : void
setErrorFormats()  : void
setLabel()  : bool
setPermission()  : void
setPermissionMessage()  : void
setUsage()  : void
testPermission()  : bool
testPermissionSilent()  : bool
unregister()  : bool
prepare()  : void
This is where all the arguments, permissions, sub-commands, etc would be registered
sendUsage()  : void
allowChangesFrom()  : bool
attemptArgumentParsing()  : array<string|int, mixed>|null

Constants

ERR_INSUFFICIENT_ARGUMENTS

public mixed ERR_INSUFFICIENT_ARGUMENTS = 0x3

ERR_INVALID_ARG_VALUE

public mixed ERR_INVALID_ARG_VALUE = 0x1

ERR_NO_ARGUMENTS

public mixed ERR_NO_ARGUMENTS = 0x4

ERR_TOO_MANY_ARGUMENTS

public mixed ERR_TOO_MANY_ARGUMENTS = 0x2

Properties

$errorMessages

protected array<string|int, mixed> $errorMessages = [self::ERR_INVALID_ARG_VALUE => \pocketmine\utils\TextFormat::RED . "Invalid value '{value}' for argument #{position}", self::ERR_TOO_MANY_ARGUMENTS => \pocketmine\utils\TextFormat::RED . "Too many arguments given", self::ERR_INSUFFICIENT_ARGUMENTS => \pocketmine\utils\TextFormat::RED . "Insufficient number of arguments given", self::ERR_NO_ARGUMENTS => \pocketmine\utils\TextFormat::RED . "No arguments are required for this command"]

$activeAliases

private array<string|int, string> $activeAliases = []

$aliases

private array<string|int, string> $aliases = []

$constraints

private array<string|int, mixed> $constraints = []

$nextLabel

private string $nextLabel

$permission

private string|null $permission = null

$permissionMessage

private string|null $permissionMessage = null

$requiredArgumentCount

private array<string|int, mixed> $requiredArgumentCount = []

$subCommands

private array<string|int, mixed> $subCommands = []

Methods

__construct()

public __construct(Plugin $plugin, string $name[, string $description = "" ][, array<string|int, mixed> $aliases = [] ]) : mixed
Parameters
$plugin : Plugin
$name : string
$description : string = ""
$aliases : array<string|int, mixed> = []
Return values
mixed —

__toString()

public __toString() : string
Return values
string —

execute()

public final execute(CommandSender $sender, string $commandLabel, array<string|int, mixed> $args) : mixed
Parameters
$sender : CommandSender
$commandLabel : string
$args : array<string|int, mixed>
Return values
mixed —

generateUsageMessage()

public generateUsageMessage() : string
Return values
string —

getAliases()

public getAliases() : array<string|int, string>
Return values
array<string|int, string> —

getLabel()

public getLabel() : string
Return values
string —

getName()

public getName() : string
Return values
string —

getPermission()

public getPermission() : string|null
Return values
string|null —

getPermissionMessage()

public getPermissionMessage() : string|null
Return values
string|null —

getUsageMessage()

public getUsageMessage() : string
Return values
string —

hasRequiredArguments()

public hasRequiredArguments() : bool
Return values
bool —

isRegistered()

public isRegistered() : bool
Return values
bool —

onRun()

public abstract onRun(CommandSender $sender, string $aliasUsed, array<string|int, mixed>|array<string, mixed|array> $args) : void
Parameters
$sender : CommandSender
$aliasUsed : string
$args : array<string|int, mixed>|array<string, mixed|array>
Return values
void —

parseArguments()

public parseArguments(array<string|int, mixed> $rawArgs, CommandSender $sender) : array<string|int, mixed>
Parameters
$rawArgs : array<string|int, mixed>
$sender : CommandSender
Return values
array<string|int, mixed> —

register()

Registers the command into a Command map

public register(CommandMap $commandMap) : bool
Parameters
$commandMap : CommandMap
Return values
bool —

sendError()

public sendError(int $errorCode[, array<string|int, mixed> $args = [] ]) : void
Parameters
$errorCode : int
$args : array<string|int, mixed> = []
Return values
void —

setAliases()

public setAliases(array<string|int, string> $aliases) : void
Parameters
$aliases : array<string|int, string>
Return values
void —

setErrorFormat()

public setErrorFormat(int $errorCode, string $format) : void
Parameters
$errorCode : int
$format : string
Return values
void —

setErrorFormats()

public setErrorFormats(array<string|int, mixed> $errorFormats) : void
Parameters
$errorFormats : array<string|int, mixed>
Return values
void —

setLabel()

public setLabel(string $name) : bool
Parameters
$name : string
Return values
bool —

setPermission()

public setPermission(string|null $permission) : void
Parameters
$permission : string|null
Return values
void —

setPermissionMessage()

public setPermissionMessage(string $permissionMessage) : void
Parameters
$permissionMessage : string
Return values
void —

testPermission()

public testPermission(CommandSender $target[, string|null $permission = null ]) : bool
Parameters
$target : CommandSender
$permission : string|null = null
Return values
bool —

testPermissionSilent()

public testPermissionSilent(CommandSender $target[, string|null $permission = null ]) : bool
Parameters
$target : CommandSender
$permission : string|null = null
Return values
bool —

prepare()

This is where all the arguments, permissions, sub-commands, etc would be registered

protected abstract prepare() : void
Return values
void —

sendUsage()

protected sendUsage() : void
Return values
void —

attemptArgumentParsing()

private attemptArgumentParsing(ArgumentableTrait $ctx, array<string|int, mixed> $args) : array<string|int, mixed>|null
Parameters
$ctx : ArgumentableTrait
$args : array<string|int, mixed>
Return values
array<string|int, mixed>|null —

Search results