我正在制作一个机器人,它读取用户提供的文本文件并根据它设置服务器设置。我的机器人可以设置服务器名称,但大约 0.5 秒后,它会变回旧名称。
我还检查了是否有任何其他代码将名称改回,但我找不到与之相关的任何内容。
List<String> lines = Files.readAllLines(settings.toPath());
String[] serverName =
{lines.get(0).substring(lines.get(0).indexOf("\"")+1, lines.get(0).lastIndexOf("\"")), lines.get(0).substring(lines.get(0).lastIndexOf("\"")+1)};
// This is getting the server name from text server-name = "server_name"
if (!lines.get(0).isEmpty()) {
int lineNumber = 0;
if (!lines.get(lineNumber).equalsIgnoreCase("null")) {
if (!lines.get(lineNumber).startsWith("//")) {
Objects.requireNonNull(event.getGuild()).getManager().setName(serverName[0]).queue();
event.getChannel().sendMessage("`` COMPLETED [] " + lines.get(lineNumber) + "``").queue();
}
else {
event.getChannel().sendMessage("`` IGNORED [] " + lines.get(lineNumber) + "``").queue();
}
}
}
嘿,这是一种通过休息行动获得邀请者的方法
private RestAction<User> getInviter(Guild guild, User user) {
return guild.retrieveAuditLogs().type(ActionType.INVITE_CREATE).map(auditLogs -> {
for (AuditLogEntry entry : auditLogs) {
if (entry.getTargetId().equals(user.getId())) {
return entry.getUser(); // Returns the inviter
}
}
// AuditLogEntry not found
return null;
});
}