1+ package me.lightless.izumi.plugin.pipeline.impl
2+
3+ import me.lightless.izumi.plugin.pipeline.IPipeline
4+ import net.mamoe.mirai.contact.PermissionDeniedException
5+ import net.mamoe.mirai.event.events.GroupEvent
6+ import net.mamoe.mirai.event.events.GroupMessageEvent
7+ import net.mamoe.mirai.message.data.At
8+ import net.mamoe.mirai.message.data.Face
9+ import net.mamoe.mirai.message.data.PlainText
10+ import net.mamoe.mirai.message.data.buildMessageChain
11+ import org.slf4j.Logger
12+ import org.slf4j.LoggerFactory
13+
14+ @Suppress(" unused" )
15+ class Thumb : IPipeline {
16+ override val logger: Logger
17+ get() = LoggerFactory .getLogger(javaClass)
18+ override val name: String
19+ get() = " thumb"
20+
21+ /*
22+ self.blacklist = [
23+ "[强]",
24+ "[CQ:face,id=76]",
25+ b"\xf0\x9f\x91\x8d".decode("UTF-8"),
26+ "[CQ:emoji,id=128077]",
27+ "4",
28+ ]
29+ */
30+ override suspend fun process (event : GroupMessageEvent ) {
31+ var thumbCnt = 0
32+
33+ // 检查大拇指的数量
34+ event.message.spliterator().forEachRemaining {
35+ logger.debug(" message part: $it -> ${it.javaClass} " )
36+ when (it) {
37+ is Face -> {
38+ if (it.id == 76 ) {
39+ thumbCnt + = 1
40+ }
41+ }
42+ is PlainText -> {
43+ var index = it.contentToString().indexOf(" \uD83D\uDC4D " )
44+ while (index != - 1 ) {
45+ thumbCnt + = 1
46+ index = it.contentToString().indexOf(" \uD83D\uDC4D " , index + 2 )
47+ }
48+ }
49+ }
50+ }
51+
52+ // 开始禁言,一个大拇指2分钟
53+ logger.debug(" thumb count: $thumbCnt " )
54+ if (thumbCnt != 0 ) {
55+ // 禁言
56+ try {
57+ event.sender.mute(thumbCnt * 2 * 60 )
58+ event.group.sendMessage(buildMessageChain {
59+ add(At (event.sender))
60+ add(" \n 嘤嘤嘤,发现大拇指了呢,呐,大拇指什么的是不可以的呢!" )
61+ })
62+ } catch (e: PermissionDeniedException ) {
63+ event.group.sendMessage(buildMessageChain {
64+ add(" 嘤嘤嘤,没有权限夹人呢!" )
65+ })
66+ }
67+ }
68+ }
69+ }
0 commit comments