start Discord bot and resolve some build path errs

This commit is contained in:
nzBryce101
2024-04-08 11:03:34 +12:00
parent a22aa1a24c
commit 19cd0ccd74
5 changed files with 43 additions and 10 deletions

7
.vscode/launch.json vendored
View File

@@ -11,13 +11,6 @@
"request": "launch",
"mainClass": "${file}"
},
{
"type": "java",
"name": "MCbot",
"request": "launch",
"mainClass": "MCbot",
"projectName": "minecraft-chatbot"
},
{
"type": "java",
"name": "MCchatbotyt",

View File

@@ -29,6 +29,15 @@
<artifactId>google-api-client</artifactId>
<version>2.4.0</version>
</dependency>
<!-- Discord API dependency -->
<!-- https://mvnrepository.com/artifact/net.dv8tion/JDA -->
<dependency>
<groupId>net.dv8tion</groupId>
<artifactId>JDA</artifactId>
<version>5.0.0-beta.22</version> <!-- or the latest version available -->
</dependency>
<!-- Add other dependencies as needed -->
</dependencies>

View File

@@ -1,7 +1,6 @@
import java.io.*;
import java.net.*;
import java.util.List;
import java.util.stream.Collectors;
import java.util.*;
import org.bukkit.Bukkit;
import org.bukkit.Statistic;
@@ -51,7 +50,7 @@ public class MCbot extends JavaPlugin {
// Example: If command is "!players", return player list from Minecraft server
if (command.equals("!players")) {
// Use Spigot API to get player list
List<Player> onlinePlayers = Bukkit.getServer().getOnlinePlayers().stream().collect(Collectors.toList()));
List<Player> onlinePlayers = Bukkit.getServer().getOnlinePlayers().stream().collect(Collectors.toList());
if (onlinePlayers.isEmpty()) {
return "No players are currently online.";

View File

@@ -0,0 +1,31 @@
import net.dv8tion.jda.api.*;
public class DisMCBot {
public static void main(String[] args) {
String token = "YOUR_BOT_TOKEN_HERE"; // Replace with your actual bot token
new DiscordBot(token);
}
public void onMessageReceived(MessageReceivedEvent event) {
String messageContent = event.getMessage().getContentRaw();
// Parse message content to detect player updates
if (messageContent.contains("died")) {
event.getChannel().sendMessage("A player has died!").queue();
} else if (messageContent.contains("Exp")) {
// Parse and extract player name, Exp, and other details
// You can use regular expressions or other parsing methods
event.getChannel().sendMessage("Player gained experience!").queue();
}
}
public DiscordBot(String token) {
try {
JDABuilder.createDefault(token)
.addEventListeners(new BotEventListener()) // Create this class next
.setActivity(Activity.playing("Minecraft"))
.build();
} catch (Exception e) {
e.printStackTrace();
}
}
}

View File

@@ -1,2 +1,3 @@
C:\Users\hbmann\Documents\Projects\__MCchatbot\MCbot_bryce\src\main\java\MCbot.java
C:\Users\hbmann\Documents\Projects\__MCchatbot\MCbot_bryce\src\main\java\disMCbot.java
C:\Users\hbmann\Documents\Projects\__MCchatbot\MCbot_bryce\src\main\java\MCchatbotyt.java