using shading on the Jar

switched to Discord4j instead of JDA
getEventDispatcher() not working
NEW be04 version
This commit is contained in:
nzBryce101
2024-04-23 00:32:35 +12:00
parent dd21b58774
commit 7d30515539
13 changed files with 159 additions and 94 deletions

View File

@@ -1,29 +1,39 @@
import net.dv8tion.jda.api.JDABuilder;
import net.dv8tion.jda.api.entities.TextChannel;
import javax.security.auth.login.LoginException;
import discord4j.core.DiscordClient;
import discord4j.core.DiscordClientBuilder;
import discord4j.core.event.domain.lifecycle.ReadyEvent;
import discord4j.core.event.domain.message.MessageCreateEvent;
import discord4j.core.object.presence.Activity;
import discord4j.core.object.presence.Presence;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import listeners.MinecraftEventListener;
public class disMCbot {
private static TextChannel updateChannel;
private static final Logger logger = LogManager.getLogger(disMCbot.class);
public static void main(String[] args) throws LoginException {
public static void main(String[] args) {
logger.info("Starting Discord Bot...");
String token = "MTIyNjY1NTgxODU0NDMxNjQxNw.GXAYvx.m2_ZmH-J5-iGhqdkW3M2VViG1wBQguKq-OjN80";
JDABuilder builder = JDABuilder.createDefault(token);
builder.addEventListeners(new MinecraftEventListener(updateChannel));
builder.build();
}
public void setUpdateChannel(TextChannel channel) {
disMCbot.updateChannel = channel;
}
DiscordClient client = DiscordClientBuilder.create(token).build();
client.login().block();
client.getEventDispatcher().on(ReadyEvent.class)
.subscribe(ready -> {
System.out.println("Logged in as: " + ready.getSelf().getUsername());
client.updatePresence(Presence.online(Activity.playing("Minecraft")));
});
client.getEventDispatcher().on(MessageCreateEvent.class)
.subscribe(event -> {
String messageContent = event.getMessage().getContent();
if (messageContent.equalsIgnoreCase("!ping")) {
event.getMessage().getChannel().block().createMessage("Pong!").block();
}
// Add more commands as needed
});
client.onDisconnect().block();
}
// Other methods and event listeners can be added as needed
}
}

View File

@@ -4,12 +4,13 @@ import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import net.dv8tion.jda.api.entities.TextChannel;
import discord4j.core.object.entity.channel.TextChannel;
public class MinecraftEventListener implements Listener {
private final TextChannel updateChannel; // Discord channel to send updates
private final discord4j.core.object.entity.channel.TextChannel updateChannel; // Discord channel to send updates
public MinecraftEventListener(TextChannel updateChannel) {
this.updateChannel = updateChannel;
@@ -18,12 +19,12 @@ public class MinecraftEventListener implements Listener {
@EventHandler
public void onPlayerJoin(PlayerJoinEvent event) {
String playerName = event.getPlayer().getName();
updateChannel.sendMessage("Player " + playerName + " has joined the server.").queue();
updateChannel.createMessage("Player " + playerName + " has joined the server.");
}
@EventHandler
public void onPlayerQuit(PlayerQuitEvent event) {
String playerName = event.getPlayer().getName();
updateChannel.sendMessage("Player " + playerName + " has left the server.").queue();
updateChannel.createMessage("Player " + playerName + " has left the server.");
}
}

View File

@@ -1,5 +1,5 @@
name: MCdiscord_bot-1
version: 1.1be02
version: 1.1be04
main: MCdiscord_bot-1.src.main.java.disMCbot
description: A Discord bot plugin for Minecraft.
author: Bryce