o
    	cj	                     @   s@   d dl mZ d dlmZmZ d dlmZ eG dd deZdS )    )Plugin)at_alltext)register_pluginc                   @   s8   e Zd ZdZdZdZdd Zdd Zdd	 Zd
d Z	dS )AtAllReplyPluginat_all_replyu6   回复指定消息并艾特全体成员转发内容。)u   /全体成员u   /全體成員c                 C   s   |dkrdS | j jr| j jsdS d}d}| j jD ]#}|ddkr#d}|ddkr;|di dd | jv r;d}q|o?|S )	NmessageFtypereplyTr   data )	bot_eventgroup_idr   getstripCOMMANDS)selfmessage_type	has_replyhas_commandseg r   1/home/dore/onebot/Bot_Ero/plugins/at_all_reply.pymatch   s   zAtAllReplyPlugin.matchc                 C   sF   | j jD ]}|ddkr |di d}|d ur t|  S qd S )Nr	   r
   r   id)r   r   r   int)r   r   msg_idr   r   r   _extract_reply_id   s   z"AtAllReplyPlugin._extract_reply_idc                 C   s   t |tr	| S t |tsdS g }|D ]:}|d}|dkr-||di dd q|dkr7|d q|dkrN|di dd}|d	| d
 qd| S )Nr   r	   r   r   imageu   [图片]atqqz[@])
isinstancestrr   listr   appendjoin)r   r   textsr   seg_typer    r   r   r   _flatten_message_text%   s    


z&AtAllReplyPlugin._flatten_message_textc                 C   s   |   }|d u r| jtd d S | j|}|s$| jtd d S | |d}|s6|dd }|s:d}| jt tdt| d S )Nu2   请先回复一条消息，再发送 /全体成员u"   获取被回复消息失败了喵~r   raw_messager   u0   （这条消息没有可展示的文本内容） )	r   apisend_msgr   get_msgr)   r   r   r   )r   reply_id
reply_data
reply_textr   r   r   handle7   s   zAtAllReplyPlugin.handleN)
__name__
__module____qualname__namedescriptionr   r   r   r)   r2   r   r   r   r   r      s    r   N)	core.baser   core.cqr   r   
core.utilsr   r   r   r   r   r   <module>   s
    