mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2026-09-29 00:32:06 +08:00
更多的依赖注入
This commit is contained in:
+105
-1
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user