Added command description for help

This commit is contained in:
anthorob committed 2021-09-10 19:08:06 -04:00
1 parent b0dcc1d334
commit c92fab3a3c
22 files changed
+184 -58

No files matched your search

@@ -35,6 +35,8 @@ public abstract class AbstractCommand {
public abstract String getUsage(); public abstract String getUsage();
public abstract String getDescription();
public abstract Visibility getVisibility(); public abstract Visibility getVisibility();
/** /**
@@ -59,4 +61,6 @@ public abstract class AbstractCommand {
List<String> args = Arrays.asList(command.split(" ")); List<String> args = Arrays.asList(command.split(" "));
return args.get(arg); return args.get(arg);
} }
} }
@@ -7,70 +7,92 @@ import net.dv8tion.jda.api.entities.TextChannel;
import net.dv8tion.jda.api.entities.User; import net.dv8tion.jda.api.entities.User;
import net.dv8tion.jda.api.events.message.MessageReceivedEvent; import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
import netneutrality.command.AbstractCommand; import netneutrality.command.AbstractCommand;
import netneutrality.command.CommandManager;
import netneutrality.command.Visibility; import netneutrality.command.Visibility;
import netneutrality.utils.Settings; import netneutrality.utils.Settings;
import java.awt.*; import java.awt.*;
import java.util.HashMap; import java.util.HashMap;
import java.util.SortedSet;
import java.util.TreeSet;
public class HelpCommand extends AbstractCommand { public class HelpCommand extends AbstractCommand {
public HelpCommand() { public HelpCommand() {
} }
@Override @Override
public String execute(MessageReceivedEvent event, String args) { public String execute(MessageReceivedEvent event, String args) {
return null; sendHelp(CommandManager.commands, CommandManager.commandsAlias, event.getAuthor(), event.getChannel());
}
public void sendHelp(HashMap<String, AbstractCommand> commands, HashMap<String, AbstractCommand> alias, User user, MessageChannel channel) { return null;
StringBuilder help = new StringBuilder(); }
for (AbstractCommand command : commands.values()) { @Override
if (command.getUsage() != null) public boolean needAdmin() {
help.append(Settings.PREFIX).append(command.getCommand()).append(" (: ").append(command.getUsage()).append("\n"); return false;
} }
EmbedBuilder embed = new EmbedBuilder(); @Override
embed.setColor(Color.green); public boolean isEnabled() {
embed.addField("Commands for Net Neutrality", help.toString(), false); return true;
}
if (channel instanceof TextChannel) @Override
channel.sendMessage(new MessageBuilder().append(user).append(" help has been sent your way!").build()).queue(); public String getCommand() {
return "help";
}
user.openPrivateChannel().queue(t -> t.sendMessage(embed.build()).queue()); @Override
} public String[] getAlias() {
return new String[0];
}
@Override @Override
public boolean needAdmin() { public String getUsage() {
return false; return null;
} }
@Override @Override
public boolean isEnabled() { public String getDescription() {
return true; return "Get every command with its usage";
} }
@Override @Override
public String getCommand() { public Visibility getVisibility() {
return "help"; return Visibility.BOTH;
} }
@Override
public String[] getAlias() {
return new String[0];
}
@Override
public String getUsage() {
return "Get every command with its usage";
}
@Override
public Visibility getVisibility() {
return Visibility.BOTH;
}
public void sendHelp(HashMap<String, AbstractCommand> commands, HashMap<String, AbstractCommand> alias, User user, MessageChannel channel) {
StringBuilder help = new StringBuilder();
SortedSet<String> keys = new TreeSet<>(commands.keySet());
for (String key : keys) {
AbstractCommand command = commands.get(key);
if (command.isEnabled()) {
help.append(Settings.PREFIX).append(command.getCommand());
if (command.getUsage() != null)
help.append(" ").append(command.getUsage());
if (command.getDescription() != null)
help.append(": ").append(command.getDescription());
help.append("\n");
}
}
EmbedBuilder embed = new EmbedBuilder();
embed.setColor(Color.green);
embed.addField("Commands for Net Neutrality", help.toString(), false);
if (channel instanceof TextChannel)
channel.sendMessage(new MessageBuilder().append(user).append(" help has been sent your way!").build()).queue();
user.openPrivateChannel().queue(t -> t.sendMessage(embed.build()).queue());
}
} }
@@ -41,6 +41,11 @@ public class PingCommand extends AbstractCommand {
@Override @Override
public String getUsage() { public String getUsage() {
return null;
}
@Override
public String getDescription() {
return "Pong!"; return "Pong!";
} }
@@ -88,6 +88,11 @@ public class BitcoinPriceCommand extends AbstractCommand {
@Override @Override
public String getUsage() { public String getUsage() {
return null;
}
@Override
public String getDescription() {
return "Get the bitcoin price"; return "Get the bitcoin price";
} }
@@ -80,6 +80,11 @@ public class EthereumPriceCommand extends AbstractCommand {
@Override @Override
public String getUsage() { public String getUsage() {
return null;
}
@Override
public String getDescription() {
return "Get the ethereum price"; return "Get the ethereum price";
} }
@@ -80,6 +80,11 @@ public class LitecoinPriceCommand extends AbstractCommand {
@Override @Override
public String getUsage() { public String getUsage() {
return null;
}
@Override
public String getDescription() {
return "Get the litecoin price"; return "Get the litecoin price";
} }
@@ -1,12 +1,15 @@
package netneutrality.command.message; package netneutrality.command.message;
import net.dv8tion.jda.api.events.message.MessageReceivedEvent; import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
import netneutrality.MusicBot;
import netneutrality.command.AbstractCommand; import netneutrality.command.AbstractCommand;
import netneutrality.command.Visibility; import netneutrality.command.Visibility;
import netneutrality.db.DBController; import netneutrality.db.DBController;
import netneutrality.db.controllers.DBBlacklist; import netneutrality.db.controllers.DBBlacklist;
import netneutrality.db.models.MBlacklist; import netneutrality.db.models.MBlacklist;
import java.util.ArrayList;
public class BlacklistCommand extends AbstractCommand { public class BlacklistCommand extends AbstractCommand {
@Override @Override
@@ -34,6 +37,11 @@ public class BlacklistCommand extends AbstractCommand {
return "Manages the blacklist of your server."; return "Manages the blacklist of your server.";
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -50,8 +58,6 @@ public class BlacklistCommand extends AbstractCommand {
case "get": case "get":
event.getTextChannel().sendMessage("Retrieving list, please wait...").queue(t -> { event.getTextChannel().sendMessage("Retrieving list, please wait...").queue(t -> {
try {
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
((DBBlacklist) DBController.get("blacklist")).getBlacklistFromServer(event.getGuild().getId(), mBlacklists -> { ((DBBlacklist) DBController.get("blacklist")).getBlacklistFromServer(event.getGuild().getId(), mBlacklists -> {
for (MBlacklist bl : mBlacklists) { for (MBlacklist bl : mBlacklists) {
@@ -61,10 +67,12 @@ public class BlacklistCommand extends AbstractCommand {
t.editMessage("List of blacklisted words for this server [" + event.getGuild().getName() + "] :\n" + (mBlacklists.isEmpty() ? "No word found" : sb.toString())).queue(); t.editMessage("List of blacklisted words for this server [" + event.getGuild().getName() + "] :\n" + (mBlacklists.isEmpty() ? "No word found" : sb.toString())).queue();
}); });
} catch (RuntimeException e) { // ArrayList<MBlacklist> mBlacklists = ((DBBlacklist) DBController.get("blacklist")).getBlacklistFromServer(event.getGuild().getId());
e.printStackTrace(); // for (MBlacklist bl : mBlacklists) {
} // sb.append(bl.getWord()).append(" -> ").append(bl.isEnabled() ? "enabled" : "disabled").append("\n");
// }
//
// t.editMessage("List of blacklisted words for this server [" + event.getGuild().getName() + "] :\n" + (mBlacklists.isEmpty() ? "No word found" : sb.toString())).queue();
}); });
@@ -32,6 +32,11 @@ public class PruneCommand extends AbstractCommand {
return "Prune n messages from the channel you are currently on"; return "Prune n messages from the channel you are currently on";
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -39,6 +39,11 @@ public class BitconnectCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -39,6 +39,11 @@ public class DeleteQueueCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -39,6 +39,11 @@ public class JoinCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -39,6 +39,11 @@ public class LeaveCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -39,6 +39,11 @@ public class PlayCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -56,18 +61,14 @@ public class PlayCommand extends AbstractCommand {
if (player.isConnectedTo(vChannel)) { if (player.isConnectedTo(vChannel)) {
event.getMessage().delete().queue(); event.getMessage().delete().queue();
if (args.startsWith("ytsearch:")) { player.play(args, event.getTextChannel(), event.getMember(), false);
player.play(args, event.getTextChannel(), event.getMember(), false);
} else {
player.play(args.split(" ")[0], event.getTextChannel(), event.getMember(), false);
}
} else } else
event.getTextChannel().sendMessage("Not in your voice channel").queue(); event.getTextChannel().sendMessage("Not in your voice channel").queue();
} else { } else {
player.connect(vChannel); player.connect(vChannel);
event.getMessage().delete().queue(); event.getMessage().delete().queue();
player.play(args.split(" ")[0], event.getTextChannel(), event.getMember(), false); player.play(args, event.getTextChannel(), event.getMember(), false);
} }
} else } else
event.getTextChannel().sendMessage("You are not in a voice channel").queue(); event.getTextChannel().sendMessage("You are not in a voice channel").queue();
@@ -39,6 +39,11 @@ public class SkipCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -39,6 +39,11 @@ public class StopCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -55,6 +60,7 @@ public class StopCommand extends AbstractCommand {
if (player.isConnected()) { if (player.isConnected()) {
if (player.isConnectedTo(vChannel)) { if (player.isConnectedTo(vChannel)) {
player.stopMusic(); player.stopMusic();
player.leave();
} else } else
event.getTextChannel().sendMessage("Not in your voice channel").queue(); event.getTextChannel().sendMessage("Not in your voice channel").queue();
} else } else
@@ -39,6 +39,11 @@ public class VolumeCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -44,6 +44,11 @@ public class DatabaseCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -43,6 +43,11 @@ public class EvalMethod extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.BOTH; return Visibility.BOTH;
@@ -35,6 +35,11 @@ public class LoggingCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.CHANNEL; return Visibility.CHANNEL;
@@ -43,6 +43,11 @@ public class SellyCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.PRIVATE; return Visibility.PRIVATE;
@@ -31,6 +31,11 @@ public class ShutdownCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.BOTH; return Visibility.BOTH;
@@ -43,6 +43,11 @@ public class TestCommand extends AbstractCommand {
return null; return null;
} }
@Override
public String getDescription() {
return null;
}
@Override @Override
public Visibility getVisibility() { public Visibility getVisibility() {
return Visibility.BOTH; return Visibility.BOTH;