2022-03-27 05:53:00 +00:00
|
|
|
package moe.oko.Kiafumi.command;
|
|
|
|
|
|
|
|
import moe.oko.Kiafumi.Kiafumi;
|
2022-03-28 15:23:10 +00:00
|
|
|
import moe.oko.Kiafumi.util.CommandInfo;
|
2022-03-27 05:53:00 +00:00
|
|
|
import net.dv8tion.jda.api.EmbedBuilder;
|
|
|
|
import net.dv8tion.jda.api.events.interaction.command.SlashCommandInteractionEvent;
|
|
|
|
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
|
|
|
|
2022-03-28 20:24:34 +00:00
|
|
|
import java.awt.Color;
|
2022-03-27 05:53:00 +00:00
|
|
|
import java.util.*;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
public class PingCommand extends CommandClass{
|
|
|
|
//Always true, ping cmd is EXISTENTIAL
|
|
|
|
@Override
|
|
|
|
public boolean isEnabled() {
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public String getName() {
|
|
|
|
return "Ping";
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void legacyCommand(String[] args, MessageReceivedEvent e, boolean prefix) {
|
|
|
|
if(!prefix) { return; }
|
|
|
|
switch(args[0].toLowerCase()) {
|
|
|
|
case "ping":
|
|
|
|
long sentMs = e.getMessage().getTimeCreated().toInstant().toEpochMilli();
|
|
|
|
long recMs = System.currentTimeMillis();
|
|
|
|
long ping = sentMs - recMs;
|
|
|
|
EmbedBuilder eb = new EmbedBuilder().setColor(new Color(0x6271c1))
|
|
|
|
.setFooter("ping pong :)").setTitle(getComedy()).setDescription("Pinged " + ping + "ms");
|
|
|
|
e.getChannel().sendMessageEmbeds(eb.build()).queue();
|
|
|
|
return;
|
|
|
|
default:
|
|
|
|
//how
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void newCommand(String name, SlashCommandInteractionEvent e) {
|
|
|
|
switch(name.toLowerCase(Locale.ROOT)) {
|
|
|
|
case "ping":
|
2022-03-28 17:25:03 +00:00
|
|
|
e.deferReply().queue();
|
2022-03-27 05:53:00 +00:00
|
|
|
long sentMs = e.getTimeCreated().toInstant().toEpochMilli();
|
|
|
|
long recMs = System.currentTimeMillis();
|
|
|
|
long ping = sentMs - recMs;
|
2022-03-28 17:25:03 +00:00
|
|
|
EmbedBuilder eb = new EmbedBuilder().setColor(Color.PINK)
|
2022-03-27 05:53:00 +00:00
|
|
|
.setFooter("ping pong :)").setTitle(getComedy()).setDescription("Pinged " + ping + "ms");
|
|
|
|
e.getHook().sendMessageEmbeds(eb.build()).queue();
|
|
|
|
return;
|
|
|
|
default:
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private String getComedy() {
|
|
|
|
Random r = new Random();
|
|
|
|
return Kiafumi.instance.config.getPingResponses().get(r.nextInt(Kiafumi.instance.config.getPingResponses().size()));
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public List<String> getCommandsAsList() {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2022-03-28 15:23:10 +00:00
|
|
|
public List<CommandInfo> getSlashCommandInfo() {
|
|
|
|
List<CommandInfo> si = new ArrayList<>();
|
|
|
|
CommandInfo ci = new CommandInfo("ping", "pings the server with a comedic message :)");
|
|
|
|
si.add(ci);
|
2022-03-27 05:53:00 +00:00
|
|
|
return si;
|
|
|
|
}
|
|
|
|
}
|