https://github.com/IteratorW/MRVN_Mk2
Модульный Discord бот.
from decorators import mrvn_module, mrvn_command
from modular import Module, LanguageUtils, Command, CommandResult, CommandContext
@mrvn_module("TestModule", "Тестовый модуль")
class TestModule(Module):
async def on_enable(self):
self.logger.info("Модуль запущен!")
@mrvn_command(self, "test", "Тестовая команда")
class TestCommand(Command):
async def execute(self, ctx: CommandContext) -> CommandResult:
return CommandResult.info("Беу!")
@mrvn_module(name: str, desc: str)
- декоратор, обозначающий модуль. Необходимо использовать с классом, наследующим modular.Module
Описание параметров:
name
- имя модуляdesc
- описание модуля
@mrvn_command(module: modular.Module, name: str, desc: str, args_desc: str = "", keys_desc=None, perm_handler: modular.PermissionHandler = None, should_await: bool = True)
Описание параметров:
module
- модуль командыname
- имя команды (без пробелов, в нижнем регистре)desc
- описание командыargs_desc
- описание аргументов командыkeys_desc
- список ключей команды для описанияperm_handler
- PermissionHandler команды. Используется для проверки прав пользователя.should_await
- сообщает CommandHandler'у, стоит ли ожидать завершения команды. Если указано False, то ждать никто не будет, а в качестве результата будет использованоCommandResult.ok()
To Be Continued (ну как обычно)