/**
* @param ServerCommandEvent $event
* @priority HIGHEST
* @ignoreCancelled true
*/
public function onConsoleCmd(ServerCommandEvent $event)
{
if ($event instanceof ServerCommandEvent_sub) {
return;
}
/** @var string|array $cmd */
$cmd = $event->getCommand();
if (DEBUGGING) {
echo "Processing console command {$cmd}... ";
}
if ($this->proceedCommand($event->getSender(), $cmd)) {
if (DEBUGGING) {
echo "Parsed command recursively: ";
var_dump($cmd);
echo PHP_EOL;
}
$event->setCancelled();
if (count($cmd) > 0) {
foreach ($cmd as $c) {
$this->getServer()->getPluginManager()->callEvent($ev = new ServerCommandEvent_sub($event->getSender(), $c));
if (!$ev->isCancelled()) {
$this->getServer()->dispatchCommand($ev->getSender(), $ev->getCommand());
}
}
}
} else {
$event->setCommand($cmd);
if (DEBUGGING) {
echo "Command processed and changed to:\n{$cmd}\n";
}
}
}