add @CommandArgument annotation

* add @CommandArgument and relevant event changes

* fix unknown bug

* remove relative constant for CommandArgument
This commit is contained in:
Jerry Ma
2022-05-03 10:06:57 +08:00
committed by GitHub
parent a393b3aff5
commit d19d7acedd
10 changed files with 359 additions and 14 deletions

View File

@@ -161,10 +161,13 @@ class QQBot
}
$s = MessageUtil::matchCommand($msg, ctx()->getData());
if ($s->status !== false) {
if (!empty($s->match)) {
ctx()->setCache('match', $s->match);
$match = $s->match;
$input_arguments = MessageUtil::checkArguments($s->object->class, $s->object->method, $match);
if (!empty($match)) {
ctx()->setCache('match', $match);
}
$dispatcher->dispatchEvent($s->object, null);
$dispatcher->dispatchEvent($s->object, null, ...$input_arguments);
if (is_string($dispatcher->store)) {
ctx()->reply($dispatcher->store);
}