Leave and GuildLeave
This commit is contained in:
parent
9bc4d897a5
commit
a53c049059
4 changed files with 107 additions and 6 deletions
|
|
@ -11,7 +11,6 @@ import com.bbn.hadder.commands.music.*;
|
||||||
import com.bbn.hadder.core.*;
|
import com.bbn.hadder.core.*;
|
||||||
import com.bbn.hadder.listener.*;
|
import com.bbn.hadder.listener.*;
|
||||||
import net.dv8tion.jda.api.entities.Activity;
|
import net.dv8tion.jda.api.entities.Activity;
|
||||||
import net.dv8tion.jda.api.managers.AudioManager;
|
|
||||||
import net.dv8tion.jda.api.sharding.DefaultShardManagerBuilder;
|
import net.dv8tion.jda.api.sharding.DefaultShardManagerBuilder;
|
||||||
import net.dv8tion.jda.api.sharding.ShardManager;
|
import net.dv8tion.jda.api.sharding.ShardManager;
|
||||||
|
|
||||||
|
|
@ -21,7 +20,6 @@ import java.util.List;
|
||||||
public class Hadder {
|
public class Hadder {
|
||||||
|
|
||||||
public static ShardManager shardManager;
|
public static ShardManager shardManager;
|
||||||
public static AudioManager audioManager;
|
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
startBot();
|
startBot();
|
||||||
|
|
@ -76,6 +74,8 @@ public class Hadder {
|
||||||
new AvatarCommand(),
|
new AvatarCommand(),
|
||||||
new EvalCommand(),
|
new EvalCommand(),
|
||||||
new JoinCommand(),
|
new JoinCommand(),
|
||||||
|
new LeaveCommand(),
|
||||||
|
new GuildLeaveCommand(),
|
||||||
new LinkCommand()), config, helpCommand);
|
new LinkCommand()), config, helpCommand);
|
||||||
|
|
||||||
builder.addEventListeners(
|
builder.addEventListeners(
|
||||||
|
|
@ -87,7 +87,6 @@ public class Hadder {
|
||||||
new LinkListener(rethink),
|
new LinkListener(rethink),
|
||||||
new RulesListener(rethink));
|
new RulesListener(rethink));
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
shardManager = builder.build();
|
shardManager = builder.build();
|
||||||
} catch (LoginException e) {
|
} catch (LoginException e) {
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,9 @@ package com.bbn.hadder.commands.music;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.utils.AudioPlayerSendHandler;
|
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
import net.dv8tion.jda.api.EmbedBuilder;
|
import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
|
import net.dv8tion.jda.api.Permission;
|
||||||
import net.dv8tion.jda.api.entities.VoiceChannel;
|
import net.dv8tion.jda.api.entities.VoiceChannel;
|
||||||
import net.dv8tion.jda.api.managers.AudioManager;
|
import net.dv8tion.jda.api.managers.AudioManager;
|
||||||
|
|
||||||
|
|
@ -21,8 +21,16 @@ public class JoinCommand implements Command {
|
||||||
AudioManager audioManager = event.getGuild().getAudioManager();
|
AudioManager audioManager = event.getGuild().getAudioManager();
|
||||||
if(!audioManager.isAttemptingToConnect()) {
|
if(!audioManager.isAttemptingToConnect()) {
|
||||||
VoiceChannel vc = event.getMember().getVoiceState().getChannel();
|
VoiceChannel vc = event.getMember().getVoiceState().getChannel();
|
||||||
audioManager.setSendingHandler(new AudioPlayerSendHandler());
|
if (vc.getMemberPermissionOverrides().contains(Permission.VOICE_CONNECT)) {
|
||||||
audioManager.openAudioConnection(vc);
|
event.getGuild().getAudioManager().openAudioConnection(vc);
|
||||||
|
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder()
|
||||||
|
.setTitle("Successfully connected"))
|
||||||
|
.setDescription("I successfully connected to " + vc.getName() + ".")
|
||||||
|
.build()).queue();
|
||||||
|
} else {
|
||||||
|
EmbedBuilder builder = new EmbedBuilder();
|
||||||
|
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue();
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
EmbedBuilder builder = new EmbedBuilder();
|
EmbedBuilder builder = new EmbedBuilder();
|
||||||
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder)
|
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder)
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,46 @@
|
||||||
|
package com.bbn.hadder.commands.music;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @author Skidder / GregTCLTK
|
||||||
|
*/
|
||||||
|
|
||||||
|
import com.bbn.hadder.commands.Command;
|
||||||
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
|
import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
|
|
||||||
|
|
||||||
|
public class LeaveCommand implements Command {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void executed(String[] args, CommandEvent event) {
|
||||||
|
if (event.getGuild().getSelfMember().getVoiceState().inVoiceChannel()) {
|
||||||
|
event.getGuild().getAudioManager().closeAudioConnection();
|
||||||
|
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder()
|
||||||
|
.setTitle("Successfully disconnected")
|
||||||
|
.setDescription("I successfully disconnected from the Voice Channel"))
|
||||||
|
.build()).queue();
|
||||||
|
} else {
|
||||||
|
EmbedBuilder builder = new EmbedBuilder();
|
||||||
|
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder)
|
||||||
|
.setTitle("Not connected")
|
||||||
|
.setDescription("I'm currently in no Voice Channel on this Guild")
|
||||||
|
.build()).queue();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String[] labels() {
|
||||||
|
return new String[]{"leave"};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String description() {
|
||||||
|
return "Leaves a voice channel";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String usage() {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
package com.bbn.hadder.commands.owner;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @author Skidder / GregTCLTK
|
||||||
|
*/
|
||||||
|
|
||||||
|
import com.bbn.hadder.commands.Command;
|
||||||
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
|
import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
|
import net.dv8tion.jda.api.entities.Guild;
|
||||||
|
|
||||||
|
public class GuildLeaveCommand implements Command {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void executed(String[] args, CommandEvent event) {
|
||||||
|
if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) {
|
||||||
|
if (args.length > 0) {
|
||||||
|
Guild guild = event.getJDA().getGuildById(args[0]);
|
||||||
|
guild.leave().queue();
|
||||||
|
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder()
|
||||||
|
.setTitle("Successfully left")
|
||||||
|
.setDescription("I successfully left " + guild.getName()))
|
||||||
|
.build()).queue();
|
||||||
|
} else {
|
||||||
|
event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
EmbedBuilder builder = new EmbedBuilder();
|
||||||
|
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String[] labels() {
|
||||||
|
return new String[]{"guildleave"};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String description() {
|
||||||
|
return "Quit from a guild";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String usage() {
|
||||||
|
return "<Guild-ID>";
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Reference in a new issue