diff options
-rw-r--r-- | ATRI/plugins/chat/__init__.py | 37 | ||||
-rw-r--r-- | ATRI/plugins/repo.py | 17 |
2 files changed, 29 insertions, 25 deletions
diff --git a/ATRI/plugins/chat/__init__.py b/ATRI/plugins/chat/__init__.py index 077cde1..391e0f7 100644 --- a/ATRI/plugins/chat/__init__.py +++ b/ATRI/plugins/chat/__init__.py @@ -15,19 +15,22 @@ _chat_flmt_notice = choice(["慢...慢一..点❤", "冷静1下", "歇会歇会~ chat = Chat().on_message("闲聊(文爱") + @chat.handle() async def _chat(bot: Bot, event: MessageEvent): user_id = event.get_user_id() if not _chat_flmt.check(user_id): await chat.finish(_chat_flmt_notice) - + msg = str(event.message) repo = await Chat().deal(msg, user_id) _chat_flmt.start_cd(user_id) await chat.finish(repo) + my_name_is = Chat().on_command("叫我", "更改闲聊(划掉 文爱)时的称呼", aliases={"我是"}, priority=1) + @my_name_is.args_parser # type: ignore async def _get_name(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() @@ -39,26 +42,30 @@ async def _get_name(bot: Bot, event: MessageEvent, state: T_State): else: state["name"] = msg + @my_name_is.handle() async def _name(bot: Bot, event: MessageEvent, state: T_State): user_id = event.get_user_id() if not _chat_flmt.check(user_id): await my_name_is.finish(_chat_flmt_notice) - + msg = str(event.message).strip() if msg: state["name"] = msg + @my_name_is.got("name", "欧尼酱想让咱如何称呼呢!0w0") async def _deal_name(bot: Bot, event: MessageEvent, state: T_State): user_id = event.get_user_id() new_name = state["name"] - repo = choice([ - f"好~w 那咱以后就称呼你为{new_name}!", - f"噢噢噢!原来你叫{new_name}阿~", - f"好欸!{new_name}ちゃん~~~", - "很不错的称呼呢w" - ]) + repo = choice( + [ + f"好~w 那咱以后就称呼你为{new_name}!", + f"噢噢噢!原来你叫{new_name}阿~", + f"好欸!{new_name}ちゃん~~~", + "很不错的称呼呢w", + ] + ) Chat().name_is(user_id, new_name) _chat_flmt.start_cd(user_id) await my_name_is.finish(repo) @@ -66,6 +73,7 @@ async def _deal_name(bot: Bot, event: MessageEvent, state: T_State): say = Chat().on_command("说", "别人让我说啥就说啥(", priority=1) + @say.args_parser # type: ignore async def _get_say(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() @@ -77,29 +85,26 @@ async def _get_say(bot: Bot, event: MessageEvent, state: T_State): else: state["say"] = msg + @say.handle() async def _ready_say(bot: Bot, event: MessageEvent, state: T_State): user_id = event.get_user_id() if not _chat_flmt.check(user_id): await say.finish(_chat_flmt_notice) - + msg = str(event.message) if msg: state["say"] = msg + @say.got("say") async def _deal_say(bot: Bot, event: MessageEvent, state: T_State): msg = state["say"] check = CoolqCodeChecker(msg).check if not check: - repo = choice([ - "不要...", - "这个咱不想复读!", - "不可以", - "不好!" - ]) + repo = choice(["不要...", "这个咱不想复读!", "不可以", "不好!"]) await say.finish(repo) - + user_id = event.get_user_id() _chat_flmt.start_cd(user_id) await say.finish(msg) diff --git a/ATRI/plugins/repo.py b/ATRI/plugins/repo.py index 7939fc6..9c52610 100644 --- a/ATRI/plugins/repo.py +++ b/ATRI/plugins/repo.py @@ -21,13 +21,13 @@ REPO_FORMAT = """ class Repo(Service): - def __init__(self): Service.__init__(self, "反馈", "向维护者发送消息") - + repo = Repo().on_command("来杯红茶", "向维护者发送消息", aliases={"反馈", "报告"}) + @repo.args_parser # type: ignore async def _get_repo(bot: Bot, event: MessageEvent, state: T_State): msg = str(event.message).strip() @@ -39,6 +39,7 @@ async def _get_repo(bot: Bot, event: MessageEvent, state: T_State): else: state["repo"] = msg + @repo.handle() async def _ready_repo(bot: Bot, event: MessageEvent, state: T_State): user_id = event.get_user_id() @@ -46,26 +47,24 @@ async def _ready_repo(bot: Bot, event: MessageEvent, state: T_State): await repo.finish(_repo_flmt_notice) if not _repo_dlmt.check(user_id): await repo.finish(_repo_dlmt_notice) - + msg = str(event.message).strip() if msg: state["repo"] = msg + @repo.got("repo", "需要反馈的内容呢?~") async def _deal_repo(bot: Bot, event: MessageEvent, state: T_State): msg = state["repo"] user_id = event.get_user_id() - repo_0 = REPO_FORMAT.format( - user=user_id, - msg=msg - ) - + repo_0 = REPO_FORMAT.format(user=user_id, msg=msg) + for superuser in BotSelfConfig.superusers: try: await bot.send_private_msg(user_id=superuser, message=repo_0) except BaseException: await repo.finish("发送失败了呢...") - + _repo_flmt.start_cd(user_id) _repo_dlmt.increase(user_id) await repo.finish("吾辈的心愿已由咱转告维护者!") |