diff options
Diffstat (limited to 'ATRI/plugins/util/__init__.py')
-rw-r--r-- | ATRI/plugins/util/__init__.py | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/ATRI/plugins/util/__init__.py b/ATRI/plugins/util/__init__.py index 1e31bff..541ca1b 100644 --- a/ATRI/plugins/util/__init__.py +++ b/ATRI/plugins/util/__init__.py @@ -10,6 +10,7 @@ from .data_source import Encrypt, Utils, Yinglish roll = Utils().on_command("/roll", "骰子~用法:1d10 或 2d10+2d10+more") + @roll.args_parser # type: ignore async def _get_roll(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() @@ -21,26 +22,29 @@ async def _get_roll(bot: Bot, event: MessageEvent, state: T_State): else: state["roll"] = msg + @roll.handle() async def _ready_roll(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() if msg: state["roll"] = msg + @roll.got("roll", "参数呢?!格式:1d10 或 2d10+2d10+more") async def _deal_roll(bot: Bot, event: MessageEvent, state: T_State): text = state["roll"] match = re.match(r"^([\dd+\s]+?)$", text) - + if not match: await roll.finish("阿——!参数不对!格式:1d10 或 2d10+2d10+more") - + msg = Utils().roll_dice(text) await roll.finish(msg) encrypt_en = Utils().on_command("加密", "我们之前的秘密❤") + @encrypt_en.args_parser # type: ignore async def _get_encr_en_text(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() @@ -52,12 +56,14 @@ async def _get_encr_en_text(bot: Bot, event: MessageEvent, state: T_State): else: state["encr_en_text"] = msg + @encrypt_en.handle() async def _ready_en(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() if msg: state["encr_en_text"] = msg + @encrypt_en.got("encr_en_text", "内容呢?!") async def _deal_en(bot: Bot, event: MessageEvent, state: T_State): text = state["encr_en_text"] @@ -71,6 +77,7 @@ async def _deal_en(bot: Bot, event: MessageEvent, state: T_State): encrypt_de = Utils().on_command("解密", "解开我们的秘密❤") + @encrypt_de.args_parser # type: ignore async def _get_encr_de_text(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() @@ -82,12 +89,14 @@ async def _get_encr_de_text(bot: Bot, event: MessageEvent, state: T_State): else: state["encr_de_text"] = msg + @encrypt_de.handle() async def _ready_de(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() if msg: state["encr_de_text"] = msg + @encrypt_de.got("encr_de_text", "内容呢?!") async def _deal_de(bot: Bot, event: MessageEvent, state: T_State): text = state["encr_de_text"] @@ -101,6 +110,7 @@ sepi = Utils().on_command("涩批一下", "将正常的句子涩一涩~") _sepi_flmt = FreqLimiter(3) _sepi_flmt_notice = ["涩批爬", "✌🥵✌"] + @sepi.args_parser # type: ignore async def _get_sepi(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() @@ -112,23 +122,25 @@ async def _get_sepi(bot: Bot, event: MessageEvent, state: T_State): else: state["sepi_text"] = msg + @sepi.handle() async def _ready_sepi(bot: Bot, event: MessageEvent, state: T_State): user_id = event.get_user_id() if not _sepi_flmt.check(user_id): await sepi.finish(choice(_sepi_flmt_notice)) - + msg = str(event.message).strip() if msg: state["sepi_text"] = msg + @sepi.got("sepi_text", "内容呢?!") async def _deal_sepi(bot: Bot, event: MessageEvent, state: T_State): user_id = event.get_user_id() msg = state["sepi_text"] if len(msg) < 4: await sepi.finish("这么短?涩不起来!") - + result = Yinglish.deal(msg, random()) _sepi_flmt.start_cd(user_id) await sepi.finish(result) |