@@ -59,12 +59,18 @@ public void onReady(@NotNull ReadyEvent event) {
5959
6060 @ Override
6161 public void onSlashCommandInteraction (@ NotNull SlashCommandInteractionEvent event ) {
62+ Guild guild = event .getGuild ();
63+
64+ if (guild == null ) {
65+ return ;
66+ }
67+
6268 switch (event .getFullCommandName ()) {
6369 case "join" :
6470 joinHelper (event );
6571 break ;
6672 case "stop" :
67- this .client .getLink (event . getGuild () .getIdLong ())
73+ this .client .getLink (guild .getIdLong ())
6874 .updatePlayer (
6975 (update ) -> update .setTrack (null ).setPaused (false )
7076 )
@@ -73,11 +79,11 @@ public void onSlashCommandInteraction(@NotNull SlashCommandInteractionEvent even
7379 });
7480 break ;
7581 case "leave" :
76- event .getJDA ().getDirectAudioController ().disconnect (event . getGuild () );
82+ event .getJDA ().getDirectAudioController ().disconnect (guild );
7783 event .reply ("Leaving your channel!" ).queue ();
7884 break ;
7985 case "now-playing" : {
80- final var link = this .client .getLink (event . getGuild () .getIdLong ());
86+ final var link = this .client .getLink (guild .getIdLong ());
8187 final var player = link .getCachedPlayer ();
8288
8389 if (player == null ) {
@@ -95,24 +101,24 @@ public void onSlashCommandInteraction(@NotNull SlashCommandInteractionEvent even
95101 final var trackInfo = track .getInfo ();
96102
97103 event .reply (
98- "Currently playing: %s\n Duration: %s/%s" .formatted (
104+ "Currently playing: %s\n Duration: %s/%s\n Requester: <@%s> " .formatted (
99105 trackInfo .getTitle (),
100106 player .getPosition (),
101- trackInfo .getLength ()
107+ trackInfo .getLength (),
108+ track .getUserData (MyUserData .class ).requester ()
102109 )
103110 ).queue ();
104111 break ;
105112 }
106113 case "pause" :
107- this .client .getLink (event . getGuild () .getIdLong ())
114+ this .client .getLink (guild .getIdLong ())
108115 .getPlayer ()
109116 .flatMap ((player ) -> player .setPaused (!player .getPaused ()))
110117 .subscribe ((player ) -> {
111118 event .reply ("Player has been " + (player .getPaused () ? "paused" : "resumed" ) + "!" ).queue ();
112119 });
113120 break ;
114121 case "karaoke on" : {
115- final Guild guild = event .getGuild ();
116122 final long guildId = guild .getIdLong ();
117123 final Link link = this .client .getLink (guildId );
118124
@@ -129,7 +135,6 @@ public void onSlashCommandInteraction(@NotNull SlashCommandInteractionEvent even
129135 break ;
130136 }
131137 case "karaoke off" : {
132- final Guild guild = event .getGuild ();
133138 final long guildId = guild .getIdLong ();
134139 final Link link = this .client .getLink (guildId );
135140
@@ -144,8 +149,6 @@ public void onSlashCommandInteraction(@NotNull SlashCommandInteractionEvent even
144149 break ;
145150 }
146151 case "play" : {
147- final Guild guild = event .getGuild ();
148-
149152 // We are already connected, go ahead and play
150153 if (guild .getSelfMember ().getVoiceState ().inAudioChannel ()) {
151154 event .deferReply (false ).queue ();
@@ -163,7 +166,7 @@ public void onSlashCommandInteraction(@NotNull SlashCommandInteractionEvent even
163166 break ;
164167 }
165168 case "custom-request" : {
166- final Link link = this .client .getLink (event . getGuild () .getIdLong ());
169+ final Link link = this .client .getLink (guild .getIdLong ());
167170
168171 link .getNode ().customRequest (
169172 (builder ) -> builder .get ().path ("/version" ).header ("Accept" , "text/plain" )
0 commit comments