4
4
import net .dv8tion .jda .api .MessageBuilder ;
5
5
import net .dv8tion .jda .api .entities .Message ;
6
6
import net .dv8tion .jda .api .entities .MessageEmbed ;
7
+ import net .dv8tion .jda .api .entities .MessageType ;
7
8
import net .dv8tion .jda .api .events .message .MessageReceivedEvent ;
8
9
import net .dv8tion .jda .api .requests .RestAction ;
9
- import net .dv8tion .jda .api .requests .restaction .AuditableRestAction ;
10
10
import org .togetherjava .tjbot .commands .MessageReceiverAdapter ;
11
11
import org .togetherjava .tjbot .config .Config ;
12
12
@@ -37,27 +37,23 @@ public void onMessageReceived(MessageReceivedEvent event) {
37
37
return ;
38
38
}
39
39
40
- if (messageHasNoMediaAttached (event )) {
41
- deleteMessage (event ).flatMap (any -> dmUser (event )).queue ();
40
+ Message message = event .getMessage ();
41
+ if (message .getType () == MessageType .THREAD_CREATED ) {
42
+ return ;
43
+ }
44
+
45
+ if (messageHasNoMediaAttached (message )) {
46
+ message .delete ().flatMap (any -> dmUser (message )).queue ();
42
47
}
43
48
}
44
49
45
- private static boolean messageHasNoMediaAttached (MessageReceivedEvent event ) {
46
- Message message = event .getMessage ();
50
+ private boolean messageHasNoMediaAttached (Message message ) {
47
51
return message .getAttachments ().isEmpty () && message .getEmbeds ().isEmpty ()
48
52
&& !message .getContentRaw ().contains ("http" );
49
53
}
50
54
51
- private AuditableRestAction <Void > deleteMessage (MessageReceivedEvent event ) {
52
- return event .getMessage ().delete ();
53
- }
54
-
55
- private RestAction <Message > dmUser (MessageReceivedEvent event ) {
56
- return dmUser (event .getMessage ());
57
- }
58
-
59
- private RestAction <Message > dmUser (Message originalMessage ) {
60
- String originalMessageContent = originalMessage .getContentRaw ();
55
+ private RestAction <Message > dmUser (Message message ) {
56
+ String originalMessageContent = message .getContentRaw ();
61
57
MessageEmbed originalMessageEmbed =
62
58
new EmbedBuilder ().setDescription (originalMessageContent )
63
59
.setColor (Color .ORANGE )
@@ -68,7 +64,7 @@ private RestAction<Message> dmUser(Message originalMessage) {
68
64
.setEmbeds (originalMessageEmbed )
69
65
.build ();
70
66
71
- return originalMessage .getAuthor ()
67
+ return message .getAuthor ()
72
68
.openPrivateChannel ()
73
69
.flatMap (channel -> channel .sendMessage (dmMessage ));
74
70
}
0 commit comments