summaryrefslogtreecommitdiff
path: root/ATRI/plugins/curse/__init__.py
diff options
context:
space:
mode:
authorKyomotoi <[email protected]>2021-02-06 00:32:26 +0800
committerKyomotoi <[email protected]>2021-02-06 00:32:26 +0800
commitf5ceb8927f2e7f2a9e29d62c8e4cef876f917249 (patch)
tree40b9dcd6b7d3db486054e3aa9b5a04d25fa2284e /ATRI/plugins/curse/__init__.py
parenteb52fab79ada7efe6191e3a5f90179766feaded0 (diff)
downloadATRI-f5ceb8927f2e7f2a9e29d62c8e4cef876f917249.tar.gz
ATRI-f5ceb8927f2e7f2a9e29d62c8e4cef876f917249.tar.bz2
ATRI-f5ceb8927f2e7f2a9e29d62c8e4cef876f917249.zip
🏗 💩 更改项目结构,修复啥b BUG
Diffstat (limited to 'ATRI/plugins/curse/__init__.py')
-rw-r--r--ATRI/plugins/curse/__init__.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/ATRI/plugins/curse/__init__.py b/ATRI/plugins/curse/__init__.py
new file mode 100644
index 0000000..e2edbb5
--- /dev/null
+++ b/ATRI/plugins/curse/__init__.py
@@ -0,0 +1,48 @@
+from nonebot.plugin import on_command
+from nonebot.adapters.cqhttp import Bot, MessageEvent
+
+from ATRI.rule import (
+ is_in_banlist,
+ is_in_dormant,
+ is_in_service
+)
+from ATRI.utils.list import count_list, del_list_aim
+from ATRI.utils.request import get_text
+from ATRI.exceptions import RequestTimeOut
+
+
+URL = "https://zuanbot.com/api.php?level=min&lang=zh_cn"
+sick_list = []
+
+
+__plugin_name__ = 'curse'
+
+curse = on_command(
+ "口臭一下",
+ aliases={"口臭", "骂我"},
+ rule=is_in_banlist() & is_in_dormant()
+ & is_in_service(__plugin_name__)
+)
+
+async def _curse(bot: Bot, event: MessageEvent) -> None:
+ global sick_list
+ user = event.get_user_id()
+
+ if count_list(sick_list, user) == 3:
+ sick_list.append(user)
+ repo = (
+ "不是??你这么想被咱骂的嘛??"
+ "被咱骂就这么舒服的吗?!"
+ "该......你该不会是.....M吧!"
+ )
+ await curse.finish(repo)
+ elif count_list(sick_list, user) == 6:
+ sick_list = del_list_aim(sick_list, user)
+ await curse.finish("给我适可而止阿!?")
+ else:
+ sick_list.append(user)
+ try:
+ await curse.finish(await get_text(URL))
+ except RequestTimeOut:
+ raise RequestTimeOut("Time out!")