diff --git a/pom.xml b/pom.xml index 650f7c5..2adb657 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ UTF-8 Unknown - 26.1-R0.1-SNAPSHOT + 26.1.1-R0.1-SNAPSHOT 1.3.2-SNAPSHOT @@ -59,7 +59,7 @@ net.dv8tion JDA - 5.0.0-beta.12 + 6.4.1 @@ -105,7 +105,7 @@ org.apache.maven.plugins maven-shade-plugin - 3.4.1 + 3.6.2 package diff --git a/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordConnectCommand.java b/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordConnectCommand.java index 7899c75..7a79ee3 100644 --- a/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordConnectCommand.java +++ b/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordConnectCommand.java @@ -19,7 +19,6 @@ import com.denizenscript.denizencore.scripts.commands.generator.ArgPrefixed; import com.denizenscript.denizencore.utilities.CoreConfiguration; import com.denizenscript.denizencore.utilities.CoreUtilities; -import com.denizenscript.denizencore.utilities.ReflectionHelper; import com.denizenscript.denizencore.utilities.debugging.Debug; import net.dv8tion.jda.api.JDA; import net.dv8tion.jda.api.JDABuilder; @@ -29,10 +28,8 @@ import net.dv8tion.jda.api.utils.cache.CacheFlag; import net.dv8tion.jda.internal.utils.JDALogger; import org.bukkit.Bukkit; -import org.slf4j.Logger; import java.io.*; -import java.lang.invoke.MethodHandle; import java.util.*; import java.util.stream.Collectors; @@ -107,30 +104,19 @@ public static void fixJDALogger() { // Dirty hack step 1: break System.err so Paper won't complain when JDALogger's static init whines into System.err PrintStream currentErr = System.err; System.setErr(altLogger); - Logger defaultLogger = null; try { - // Force JDALogger to init now, which will do that spam, and get a SimpleLogger instance while we're at it. - defaultLogger = JDALogger.getLog(DiscordConnectCommand.class); + JDALogger.getLog(DiscordConnectCommand.class); } finally { - // Fix the logger back, with a try/finally to avoid breaking it. System.setErr(currentErr); } - try { - // Dirty hack step 2: use that SimpleLogger instance to modify the class and redirect its log path to one that won't get complained about by Paper. - MethodHandle streamSetter = ReflectionHelper.getFinalSetter(defaultLogger.getClass(), "TARGET_STREAM"); - streamSetter.invoke(altLogger); - } - catch (Throwable ex) { - Debug.echoError(ex); - } } static { fixJDALogger(); } - public static HashSet defaultIntents = new HashSet<>(Arrays.asList(GatewayIntent.GUILD_MEMBERS, GatewayIntent.GUILD_EMOJIS_AND_STICKERS, GatewayIntent.GUILD_MESSAGE_REACTIONS, + public static HashSet defaultIntents = new HashSet<>(Arrays.asList(GatewayIntent.GUILD_MEMBERS, GatewayIntent.GUILD_EXPRESSIONS, GatewayIntent.GUILD_MESSAGE_REACTIONS, GatewayIntent.GUILD_MESSAGES, GatewayIntent.DIRECT_MESSAGE_REACTIONS, GatewayIntent.DIRECT_MESSAGES, GatewayIntent.MESSAGE_CONTENT)); public static void runConnect(String code, DiscordConnection conn, ScriptEntry scriptEntry, HashSet intents) { diff --git a/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordMessageCommand.java b/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordMessageCommand.java index 1495066..60cb405 100644 --- a/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordMessageCommand.java +++ b/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordMessageCommand.java @@ -16,13 +16,13 @@ import com.denizenscript.denizencore.utilities.debugging.Debug; import com.denizenscript.denizencore.utilities.text.StringHolder; import net.dv8tion.jda.api.JDA; +import net.dv8tion.jda.api.components.actionrow.ActionRow; +import net.dv8tion.jda.api.components.actionrow.ActionRowChildComponent; import net.dv8tion.jda.api.entities.*; import net.dv8tion.jda.api.entities.channel.Channel; import net.dv8tion.jda.api.entities.channel.concrete.ForumChannel; import net.dv8tion.jda.api.entities.channel.forums.ForumPost; import net.dv8tion.jda.api.entities.channel.middleman.MessageChannel; -import net.dv8tion.jda.api.interactions.components.ActionRow; -import net.dv8tion.jda.api.interactions.components.ItemComponent; import net.dv8tion.jda.api.utils.FileUpload; import net.dv8tion.jda.api.utils.messages.*; @@ -136,7 +136,7 @@ public static List createRows(ScriptEntry scriptEntry, ObjectTag rows Collection rows = CoreUtilities.objectToList(rowsObj, scriptEntry.getContext()); List actionRows = new ArrayList<>(); for (ObjectTag row : rows) { - List components = new ArrayList<>(); + List components = new ArrayList<>(); for (ObjectTag component : CoreUtilities.objectToList(row, scriptEntry.getContext())) { if (component.canBeType(DiscordButtonTag.class)) { components.add(component.asType(DiscordButtonTag.class, scriptEntry.getContext()).build()); diff --git a/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordModalCommand.java b/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordModalCommand.java index d83bd29..42f25bb 100644 --- a/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordModalCommand.java +++ b/src/main/java/com/denizenscript/ddiscordbot/commands/DiscordModalCommand.java @@ -12,14 +12,12 @@ import com.denizenscript.denizencore.scripts.commands.generator.ArgPrefixed; import com.denizenscript.denizencore.utilities.CoreUtilities; import com.denizenscript.denizencore.utilities.debugging.Debug; +import net.dv8tion.jda.api.components.label.Label; import net.dv8tion.jda.api.interactions.callbacks.IModalCallback; -import net.dv8tion.jda.api.interactions.components.ActionRow; -import net.dv8tion.jda.api.interactions.components.ItemComponent; -import net.dv8tion.jda.api.interactions.modals.Modal; +import net.dv8tion.jda.api.modals.Modal; import java.util.ArrayList; import java.util.Collection; -import java.util.List; public class DiscordModalCommand extends AbstractCommand implements Holdable { @@ -77,36 +75,36 @@ public static void autoExecute(ScriptEntry scriptEntry, if (interaction.interaction == null) { throw new InvalidArgumentsRuntimeException("Invalid interaction! Has it expired?"); } - List actionRows = createRows(scriptEntry, rows); - if (actionRows == null || actionRows.isEmpty()) { + Collection