Deprecation Notice on Legacy, DuckDuckGo Search Command, Settings Fix
This commit is contained in:
parent
56d6f3c959
commit
e8563ffe40
15
pom.xml
15
pom.xml
|
@ -46,9 +46,19 @@
|
|||
<artifactId>mysql-connector-java</artifactId>
|
||||
<version>8.0.28</version>
|
||||
</dependency>
|
||||
<!-- DDG api (https://github.com/nstrydom2/duckduckgo-api) -->
|
||||
<dependency>
|
||||
<groupId>com.github.nstrydom2</groupId>
|
||||
<artifactId>duckduckgo-api</artifactId>
|
||||
<version>v0.1.2</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>jitpack.io</id>
|
||||
<url>https://jitpack.io</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>jcenter</id>
|
||||
<url>https://jcenter.bintray.com/</url>
|
||||
|
@ -58,10 +68,5 @@
|
|||
<name>bintray</name>
|
||||
<url>https://jcenter.bintray.com</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>jitpack.io</id>
|
||||
<url>https://jitpack.io</url>
|
||||
</repository>
|
||||
|
||||
</repositories>
|
||||
</project>
|
|
@ -60,10 +60,12 @@ public abstract class CommandClass extends ListenerAdapter {
|
|||
}
|
||||
|
||||
/**
|
||||
* @deprecated - soon to be removed in favour of getSlashCommandInfo()
|
||||
* For the sake of organization. Format the strings like so:
|
||||
* command - description.
|
||||
* @return
|
||||
*/
|
||||
@Deprecated
|
||||
public abstract List<String> getCommandsAsList();
|
||||
|
||||
/**
|
||||
|
|
64
src/main/java/moe/oko/Kiafumi/command/DuckCommand.java
Normal file
64
src/main/java/moe/oko/Kiafumi/command/DuckCommand.java
Normal file
|
@ -0,0 +1,64 @@
|
|||
package moe.oko.Kiafumi.command;
|
||||
|
||||
import moe.oko.Kiafumi.util.CommandInfo;
|
||||
import net.dv8tion.jda.api.EmbedBuilder;
|
||||
import net.dv8tion.jda.api.events.interaction.command.SlashCommandInteractionEvent;
|
||||
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
||||
import net.dv8tion.jda.api.interactions.commands.OptionType;
|
||||
import org.bitnick.net.duckduckgo.WebSearch;
|
||||
import org.bitnick.net.duckduckgo.entity.SearchResult;
|
||||
|
||||
import java.awt.*;
|
||||
import java.time.ZonedDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class DuckCommand extends CommandClass{
|
||||
private boolean enabled = true;
|
||||
|
||||
@Override
|
||||
public boolean isEnabled() {
|
||||
return enabled;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "Duck";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void legacyCommand(String[] args, MessageReceivedEvent e, boolean prefix) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void newCommand(String name, SlashCommandInteractionEvent e) {
|
||||
switch (name) {
|
||||
case "search":
|
||||
String option = e.getOption("Query").getAsString();
|
||||
WebSearch ws = WebSearch.instanceOf();
|
||||
SearchResult sr = ws.instantAnswerSearch(option);
|
||||
EmbedBuilder eb = new EmbedBuilder()
|
||||
.setColor(Color.PINK)
|
||||
.setTitle(sr.getTitle(), sr.getUrl().toString())
|
||||
.setDescription(sr.getDescription())
|
||||
.setFooter("Kiafumi - Maintained by oko.moe")
|
||||
.setTimestamp(ZonedDateTime.now());
|
||||
e.replyEmbeds(eb.build()).queue();
|
||||
return; //unnecessary, but there.
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getCommandsAsList() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CommandInfo> getSlashCommandInfo() {
|
||||
List<CommandInfo> cil = new ArrayList<>();
|
||||
CommandInfo ci = new CommandInfo("search", "Looks up with DuckDuckGo your query!");
|
||||
ci.addOption("Query", "The query to be searched", OptionType.STRING, true);
|
||||
return cil;
|
||||
}
|
||||
}
|
|
@ -32,8 +32,7 @@ public class SettingCommand extends CommandClass {
|
|||
|
||||
@Override
|
||||
public void newCommand(String name, SlashCommandInteractionEvent e) {
|
||||
if(e.getGuild() == null) {
|
||||
e.getChannel().sendMessage("This is a guild only command.").queue();
|
||||
if(e.getGuild() != null) {
|
||||
Server server = Kiafumi.instance.getServerManager().getOrCreateServer(e.getGuild());
|
||||
switch (name) {
|
||||
case "settings":
|
||||
|
|
Loading…
Reference in a new issue