mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 06:12:53 +08:00
更多的依赖注入
This commit is contained in:
parent
cb0938721c
commit
b057a05520
@ -294,6 +294,7 @@ PS: **ARM平台** 请使用全量版 同时 **如果你的机器 RAM < 1G 可能
|
||||
* 商品添加使用前方法和使用后方法(类似hook),使用方法具体查看文档或签到商品文件中注册的例子
|
||||
* 新增用户使用道具,花费金币(包括插件)及用途记录
|
||||
* 更细致的金币使用依赖注入
|
||||
* 更多的依赖注入(包含图片获取等等..
|
||||
* 色图插件p站反向代理失效 [@pull/1139](https://github.com/HibiKier/zhenxun_bot/pull/1139)
|
||||
|
||||
### 2022/10/9
|
||||
|
||||
@ -1,9 +1,12 @@
|
||||
from nonebot.adapters.onebot.v11 import GroupMessageEvent
|
||||
from typing import List, Callable
|
||||
|
||||
from nonebot.adapters.onebot.v11 import GroupMessageEvent, MessageEvent
|
||||
from nonebot.internal.matcher import Matcher
|
||||
from nonebot.internal.params import Depends
|
||||
from models.user_shop_gold_log import UserShopGoldLog
|
||||
from models.bag_user import BagUser
|
||||
from utils.message_builder import at
|
||||
from utils.utils import get_message_at, get_message_face, get_message_img, get_message_text
|
||||
|
||||
|
||||
def cost_gold(gold: int):
|
||||
@ -22,3 +25,104 @@ def cost_gold(gold: int):
|
||||
return Depends(dependency)
|
||||
|
||||
|
||||
def ImageList() -> List[str]:
|
||||
"""
|
||||
说明:
|
||||
获取图片列表
|
||||
"""
|
||||
async def dependency(event: MessageEvent):
|
||||
return get_message_img(event.message)
|
||||
|
||||
return Depends(dependency)
|
||||
|
||||
|
||||
def AtList() -> List[str]:
|
||||
"""
|
||||
说明:
|
||||
获取at列表
|
||||
"""
|
||||
async def dependency(event: MessageEvent):
|
||||
return get_message_at(event.message)
|
||||
|
||||
return Depends(dependency)
|
||||
|
||||
|
||||
def FaceList() -> List[str]:
|
||||
"""
|
||||
说明:
|
||||
获取face列表
|
||||
"""
|
||||
async def dependency(event: MessageEvent):
|
||||
return get_message_face(event.message)
|
||||
|
||||
return Depends(dependency)
|
||||
|
||||
|
||||
def PlaintText() -> str:
|
||||
"""
|
||||
说明:
|
||||
获取纯文本
|
||||
"""
|
||||
async def dependency(event: MessageEvent):
|
||||
return get_message_text(event.message)
|
||||
|
||||
return Depends(dependency)
|
||||
|
||||
|
||||
async def _match(matcher: Matcher, event: MessageEvent, msg: str, func: Callable):
|
||||
_list = func(event.message)
|
||||
if not _list and msg:
|
||||
await matcher.finish(msg)
|
||||
return _list
|
||||
|
||||
|
||||
def MatchImageList(msg: str) -> List[str]:
|
||||
"""
|
||||
说明:
|
||||
获取图片列表且不能为空,为空时提示并结束事件
|
||||
参数:
|
||||
:param msg: 提示文本
|
||||
"""
|
||||
async def dependency(matcher: Matcher, event: MessageEvent):
|
||||
return await _match(matcher, event, msg, get_message_img)
|
||||
|
||||
return Depends(dependency)
|
||||
|
||||
|
||||
def MatchAtList(msg: str) -> List[str]:
|
||||
"""
|
||||
说明:
|
||||
获取at列表且不能为空,为空时提示并结束事件
|
||||
参数:
|
||||
:param msg: 提示文本
|
||||
"""
|
||||
async def dependency(matcher: Matcher, event: MessageEvent):
|
||||
return await _match(matcher, event, msg, get_message_at)
|
||||
|
||||
return Depends(dependency)
|
||||
|
||||
|
||||
def MatchFaceList(msg: str) -> List[str]:
|
||||
"""
|
||||
说明:
|
||||
获取face列表且不能为空,为空时提示并结束事件
|
||||
参数:
|
||||
:param msg: 提示文本
|
||||
"""
|
||||
async def dependency(matcher: Matcher, event: MessageEvent):
|
||||
return await _match(matcher, event, msg, get_message_face)
|
||||
|
||||
return Depends(dependency)
|
||||
|
||||
|
||||
def MatchPlaintText(msg: str) -> str:
|
||||
"""
|
||||
说明:
|
||||
获取纯文本且不能为空,为空时提示并结束事件
|
||||
参数:
|
||||
:param msg: 提示文本
|
||||
"""
|
||||
async def dependency(matcher: Matcher, event: MessageEvent):
|
||||
return await _match(matcher, event, msg, get_message_text)
|
||||
|
||||
return Depends(dependency)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user