mirror of
https://github.com/mamoe/mirai.git
synced 2025-04-25 04:50:26 +08:00
feat: MemberLuckyWordEvent
This commit is contained in:
parent
fd16f729fb
commit
2b40cb5a35
mirai-core-api
compatibility-validation
src/commonMain/kotlin/event/events
mirai-core/src/commonMain/kotlin/network/notice/group
@ -2726,6 +2726,14 @@ public final class net/mamoe/mirai/event/events/MemberLeaveEvent$Quit : net/mamo
|
||||
public fun toString ()Ljava/lang/String;
|
||||
}
|
||||
|
||||
public final class net/mamoe/mirai/event/events/MemberLuckyWordEvent : net/mamoe/mirai/event/AbstractEvent, net/mamoe/mirai/event/events/BotPassiveEvent, net/mamoe/mirai/event/events/GroupMemberEvent, net/mamoe/mirai/internal/network/Packet {
|
||||
public fun <init> (Lnet/mamoe/mirai/contact/NormalMember;Ljava/util/List;)V
|
||||
public final fun getImages ()Ljava/util/List;
|
||||
public synthetic fun getMember ()Lnet/mamoe/mirai/contact/Member;
|
||||
public fun getMember ()Lnet/mamoe/mirai/contact/NormalMember;
|
||||
public fun toString ()Ljava/lang/String;
|
||||
}
|
||||
|
||||
public final class net/mamoe/mirai/event/events/MemberMuteEvent : net/mamoe/mirai/event/AbstractEvent, net/mamoe/mirai/event/events/GroupMemberEvent, net/mamoe/mirai/event/events/GroupMemberInfoChangeEvent, net/mamoe/mirai/event/events/GroupOperableEvent, net/mamoe/mirai/internal/network/Packet {
|
||||
public final fun component1 ()Lnet/mamoe/mirai/contact/Member;
|
||||
public final fun component2 ()I
|
||||
|
@ -2726,6 +2726,14 @@ public final class net/mamoe/mirai/event/events/MemberLeaveEvent$Quit : net/mamo
|
||||
public fun toString ()Ljava/lang/String;
|
||||
}
|
||||
|
||||
public final class net/mamoe/mirai/event/events/MemberLuckyWordEvent : net/mamoe/mirai/event/AbstractEvent, net/mamoe/mirai/event/events/BotPassiveEvent, net/mamoe/mirai/event/events/GroupMemberEvent, net/mamoe/mirai/internal/network/Packet {
|
||||
public fun <init> (Lnet/mamoe/mirai/contact/NormalMember;Ljava/util/List;)V
|
||||
public final fun getImages ()Ljava/util/List;
|
||||
public synthetic fun getMember ()Lnet/mamoe/mirai/contact/Member;
|
||||
public fun getMember ()Lnet/mamoe/mirai/contact/NormalMember;
|
||||
public fun toString ()Ljava/lang/String;
|
||||
}
|
||||
|
||||
public final class net/mamoe/mirai/event/events/MemberMuteEvent : net/mamoe/mirai/event/AbstractEvent, net/mamoe/mirai/event/events/GroupMemberEvent, net/mamoe/mirai/event/events/GroupMemberInfoChangeEvent, net/mamoe/mirai/event/events/GroupOperableEvent, net/mamoe/mirai/internal/network/Packet {
|
||||
public final fun component1 ()Lnet/mamoe/mirai/contact/Member;
|
||||
public final fun component2 ()I
|
||||
|
@ -652,6 +652,28 @@ public data class GroupTalkativeChangeEvent(
|
||||
|
||||
// endregion
|
||||
|
||||
// region 群幸运词
|
||||
|
||||
/**
|
||||
* [Member] 触发群幸运词事件
|
||||
*/
|
||||
public class MemberLuckyWordEvent(
|
||||
/**
|
||||
* 触发群幸运词的群成员
|
||||
*/
|
||||
public override val member: NormalMember,
|
||||
/**
|
||||
* 群幸运词的图片链接
|
||||
*/
|
||||
public val images: List<String>
|
||||
) : Packet, GroupMemberEvent, BotPassiveEvent, AbstractEvent() {
|
||||
override fun toString(): String {
|
||||
return "MemberLuckyWordEvent(group=${group.id}, member=${member.id})"
|
||||
}
|
||||
}
|
||||
|
||||
// endregion
|
||||
|
||||
// region 群待办
|
||||
|
||||
/**
|
||||
|
@ -327,6 +327,20 @@ internal class GroupNotificationProcessor(
|
||||
val grayTip = buf.loadAs(TroopTips0x857.NotifyMsgBody.serializer(), 1).optGeneralGrayTip
|
||||
markAsConsumed()
|
||||
when (grayTip?.templId) {
|
||||
// 群幸运词
|
||||
10047L, 10048L -> {
|
||||
val user = grayTip.msgTemplParam["uin"]?.findMember() ?: group.botAsMember
|
||||
val images = listOfNotNull(
|
||||
grayTip.msgTemplParam["img_url"],
|
||||
grayTip.msgTemplParam["img_url_1"],
|
||||
grayTip.msgTemplParam["img_url_2"]
|
||||
)
|
||||
|
||||
collected += MemberLuckyWordEvent(
|
||||
member = user,
|
||||
images = images
|
||||
)
|
||||
}
|
||||
// 群戳一戳
|
||||
10043L, 1133L, 1132L, 1134L, 1135L, 1136L -> {
|
||||
// group nudge
|
||||
|
Loading…
Reference in New Issue
Block a user