Add sdate & Rename dreidel
This commit is contained in:
parent
f8396f89f8
commit
c07b3c19e1
|
@ -80,7 +80,8 @@ public class Kiafumi {
|
|||
activeCommands.add(new SettingCommand());
|
||||
activeCommands.add(new DuckCommand());
|
||||
activeCommands.add(new InviteCommand());
|
||||
activeCommands.add(new DreidelCommand());
|
||||
activeCommands.add(new FightCommand());
|
||||
activeCommands.add(new SeptemberDateCommand());
|
||||
|
||||
instance = this;
|
||||
|
||||
|
|
|
@ -15,8 +15,7 @@ import java.util.List;
|
|||
import java.util.Random;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
// TODO: Make this actually a Dreidel, and use this code for a fight command.
|
||||
public class DreidelCommand extends CommandClass {
|
||||
public class FightCommand extends CommandClass {
|
||||
private boolean enabled = false;
|
||||
@Override
|
||||
public boolean isEnabled() {
|
||||
|
@ -25,12 +24,12 @@ public class DreidelCommand extends CommandClass {
|
|||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "Dreidel";
|
||||
return "Fight";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void newCommand(String name, SlashCommandInteractionEvent e) {
|
||||
if ("dreidel".equals(name)) {
|
||||
if ("fight".equals(name)) {
|
||||
e.deferReply().queue();
|
||||
List<User> usersForRng = new ArrayList<>();
|
||||
List<String> userNames = new ArrayList<>();
|
||||
|
@ -50,8 +49,8 @@ public class DreidelCommand extends CommandClass {
|
|||
User pickedUser = usersForRng.get(rng.nextInt(usersForRng.size()));
|
||||
EmbedBuilder eb1 = new EmbedBuilder()
|
||||
.setColor(EmbedUI.INFO)
|
||||
.setTitle("The dreidel has spoken...")
|
||||
.setDescription(pickedUser.getName() + " is the lucky winner!")
|
||||
.setTitle("VICTORY!")
|
||||
.setDescription(pickedUser.getName() + " is the survivor!")
|
||||
.setThumbnail(pickedUser.getAvatarUrl())
|
||||
.setFooter(EmbedUI.BRAND) // TODO: Make this show the list of participants
|
||||
.setTimestamp(ZonedDateTime.now());
|
||||
|
@ -62,11 +61,11 @@ public class DreidelCommand extends CommandClass {
|
|||
@Override
|
||||
public List<CommandInfo> getSlashCommandInfo() {
|
||||
List<CommandInfo> cil = new ArrayList<>();
|
||||
CommandInfo ci = new CommandInfo("dreidel", "picks a random person out of 4 values.", CommandType.COMMAND);
|
||||
ci.addOption("value1", "first value for spin", OptionType.USER, true);
|
||||
ci.addOption("value2", "second value for spin", OptionType.USER, true);
|
||||
ci.addOption("value3", "third value for spin", OptionType.USER, false);
|
||||
ci.addOption("value4", "fourth value for spin", OptionType.USER, false);
|
||||
CommandInfo ci = new CommandInfo("fight", "MORTALLL KOMBATTTT", CommandType.COMMAND);
|
||||
ci.addOption("value1", "first fighter", OptionType.USER, true);
|
||||
ci.addOption("value2", "second fighter", OptionType.USER, true);
|
||||
ci.addOption("value3", "third fighter", OptionType.USER, false);
|
||||
ci.addOption("value4", "fourth fighter", OptionType.USER, false);
|
||||
cil.add(ci);
|
||||
return cil;
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
package moe.oko.Kiafumi.command;
|
||||
|
||||
import moe.oko.Kiafumi.util.CommandInfo;
|
||||
import moe.oko.Kiafumi.util.CommandType;
|
||||
import moe.oko.Kiafumi.util.EmbedUI;
|
||||
import net.dv8tion.jda.api.EmbedBuilder;
|
||||
import net.dv8tion.jda.api.events.interaction.command.SlashCommandInteractionEvent;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.Month;
|
||||
import java.time.ZonedDateTime;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class SeptemberDateCommand extends CommandClass {
|
||||
|
||||
@Override
|
||||
public boolean isEnabled() { return true; }
|
||||
|
||||
@Override
|
||||
public String getName() { return "SeptemberDate"; }
|
||||
|
||||
@Override
|
||||
public void newCommand(String name, SlashCommandInteractionEvent e) {
|
||||
if ("sdate".equals(name)) {
|
||||
e.deferReply().queue();
|
||||
// Setup vars
|
||||
final var september = LocalDate.of(1993, Month.SEPTEMBER, 30);
|
||||
var now = LocalDate.now();
|
||||
|
||||
// Create the Eternal September date
|
||||
var sdate = ChronoUnit.DAYS.between(september, now);
|
||||
|
||||
EmbedBuilder eb = new EmbedBuilder()
|
||||
.setColor(EmbedUI.INFO)
|
||||
.setTitle("sdate")
|
||||
.setDescription("Today is September, " + sdate + " 1993, the september that never ends")
|
||||
.setFooter(EmbedUI.BRAND)
|
||||
.setTimestamp(ZonedDateTime.now());
|
||||
e.getHook().sendMessageEmbeds(eb.build()).queue();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CommandInfo> getSlashCommandInfo() {
|
||||
List<CommandInfo> cil = new ArrayList<>();
|
||||
CommandInfo ci = new CommandInfo("sdate", "Returns the Eternal September date.", CommandType.COMMAND);
|
||||
cil.add(ci);
|
||||
return cil;
|
||||
}
|
||||
}
|
|
@ -61,7 +61,7 @@ public class MainListener extends ListenerAdapter {
|
|||
.setColor(EmbedUI.INFO)
|
||||
.setTitle("Hi, i'm Kiafumi!")
|
||||
.setDescription("I was summoned on October 6th 2017! My goal is to explore the metaverse and help people in it!")
|
||||
.setImage(Kiafumi.JDA.getSelfUser().getAvatarUrl())
|
||||
.setThumbnail(Kiafumi.JDA.getSelfUser().getAvatarUrl())
|
||||
.setTimestamp(ZonedDateTime.now())
|
||||
.setFooter(EmbedUI.BRAND);
|
||||
event.getChannel().sendMessageEmbeds(eb.build()).queue();
|
||||
|
|
Loading…
Reference in a new issue