1515
1616import java .time .Duration ;
1717import java .time .LocalDateTime ;
18+ import java .time .OffsetDateTime ;
1819
1920public class DiscordBot {
2021
@@ -42,7 +43,7 @@ public DiscordBot(String botToken, String serverChannelID, String playerChannelI
4243 .awaitReady ();
4344
4445 jda .getPresence ().setStatus (OnlineStatus .ONLINE );
45- jda .getPresence ().setActivity (Activity .playing ( " auf " + ServerSettingsAPI .getApi ().getServerName ()));
46+ jda .getPresence ().setActivity (Activity .customStatus ( "🎮 Spielt auf " + ServerSettingsAPI .getApi ().getServerName ()));
4647 Bukkit .getConsoleSender ().sendMessage (Statements .getPrefix ().append (Component .text ("Discord bot started!" , NamedTextColor .GREEN )));
4748 } catch (InterruptedException e ) {
4849 e .printStackTrace ();
@@ -67,19 +68,16 @@ public void sendStatusMessage(String message) {
6768 TextChannel channel = jda .getTextChannelById (serverStatusChannelID );
6869 if (channel != null ) {
6970 channel .getIterableHistory ().takeAsync (100 ).thenAccept (messages -> {
70- if (!messages .isEmpty ()) {
71- channel .deleteMessages (messages ).queue (
72- success -> channel .sendMessage (message ).queue (),
73- error -> {
74- for (Message msg : messages ) {
75- msg .delete ().queue ();
76- }
77- channel .sendMessage (message ).queue ();
78- }
79- );
80- } else {
81- channel .sendMessage (message ).queue ();
71+ for (Message msg : messages ) {
72+ if (msg .getTimeCreated ().isAfter (OffsetDateTime .now ().minusWeeks (2 ))) {
73+ msg .delete ().queue ();
74+ }
8275 }
76+ channel .sendMessage (message ).queue ();
77+ }).exceptionally (error -> {
78+ error .printStackTrace ();
79+ channel .sendMessage (message ).queue ();
80+ return null ;
8381 });
8482 }
8583 }
@@ -89,28 +87,14 @@ public void sendPlayerMessage(String message) {
8987 TextChannel channel = jda .getTextChannelById (playerStatusChannelID );
9088
9189 if (channel != null ) {
92- System .out .println ("1" );
9390 channel .getIterableHistory ().takeAsync (100 ).thenAccept (messages -> {
94- System .out .println ("Fetched " + messages .size () + " messages" );
95- if (!messages .isEmpty ()) {
96- channel .deleteMessages (messages ).queue (
97- success -> channel .sendMessage (message ).queue (),
98- error -> {
99- System .out .println ("3" );
100- for (Message msg : messages ) {
101- msg .delete ().queue ();
102- }
103- System .out .println ("4" );
104- channel .sendMessage (message ).queue ();
105- }
106- );
107- } else {
108- System .out .println ("5" );
109- channel .sendMessage (message ).queue ();
91+ for (Message msg : messages ) {
92+ if (msg .getTimeCreated ().isAfter (OffsetDateTime .now ().minusWeeks (2 ))) {
93+ msg .delete ().queue ();
94+ }
11095 }
111- System . out . println ( "2" );
96+ channel . sendMessage ( message ). queue ( );
11297 }).exceptionally (error -> {
113- System .out .println ("⚠️ Failed to fetch message history: " + error .getMessage ());
11498 error .printStackTrace ();
11599 channel .sendMessage (message ).queue ();
116100 return null ;
0 commit comments