Skip to content

Commit

Permalink
v7.0.11
Browse files Browse the repository at this point in the history
  • Loading branch information
deso85 committed Jul 31, 2022
1 parent 8d4fc92 commit 2b421cc
Show file tree
Hide file tree
Showing 16 changed files with 106 additions and 81 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>Antony</groupId>
<artifactId>Antony</artifactId>
<version>7.0.10</version>
<version>7.0.11</version>

<properties>
<resteasy.version>3.5.1.Final</resteasy.version>
Expand Down
25 changes: 6 additions & 19 deletions src/main/java/bot/antony/CommandManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@
import bot.antony.commands.Giveaway;
import bot.antony.commands.GuildCmd;
import bot.antony.commands.HelpCmd;
import bot.antony.commands.Map;
import bot.antony.commands.MapCmd;
import bot.antony.commands.Notify;
import bot.antony.commands.PnLinkCmd;
import bot.antony.commands.ReactionCmd;
import bot.antony.commands.Sells;
import bot.antony.commands.Serverstats;
import bot.antony.commands.ShoppingCmd;
import bot.antony.commands.ShowAvatar;
import bot.antony.commands.ShowAvatarCmd;
import bot.antony.commands.ShutdownCmd;
import bot.antony.commands.Softban;
import bot.antony.commands.UserCmd;
Expand Down Expand Up @@ -56,9 +56,11 @@ public CommandManager() {
commands.put("command", new CommandCmd());
commands.put("emergency", new EmergencyCmd());
commands.put("guild", new GuildCmd());
commands.put("map", new MapCmd());
commands.put("pnlink", new PnLinkCmd());
commands.put("reaction", new ReactionCmd());
commands.put("shopping", new ShoppingCmd());
commands.put("showavatar", new ShowAvatarCmd());
commands.put("shutdown", new ShutdownCmd());
commands.put("user", new UserCmd());
commands.put("watchlist", new WatchlistCmd());
Expand All @@ -68,18 +70,17 @@ public CommandManager() {
aliases.put("notfall", commands.get("emergency"));
aliases.put("shoppinglist", commands.get("shopping"));
aliases.put("einkaufsliste", commands.get("shopping"));
aliases.put("karte", commands.get("map"));
aliases.put("avatar", commands.get("showavatar"));

usrCommands = new ConcurrentHashMap<>();
modCommands = new ConcurrentHashMap<>();
adminCommands = new ConcurrentHashMap<>();

// Everyone
usrCommands.put("giveaway", new Giveaway());
usrCommands.put("map", new Map());
usrCommands.put("notify", new Notify());
usrCommands.put("sells", new Sells());
usrCommands.put("serverstats", new Serverstats());
usrCommands.put("showavatar", new ShowAvatar());
usrCommands.put("userinfo", new UserInfo());

// Mod
Expand All @@ -101,13 +102,6 @@ public boolean perform(String command, Member member, TextChannel channel, Messa
return true;
}
}
//Commands for admins
if ((icmd = this.adminCommands.get(command.toLowerCase())) != null) {
if(Antony.getGuildController().memberIsAdmin(member)) {
icmd.performCommand(member, channel, message);
return true;
}
}

//Commands
ServerCommand cmd;
Expand All @@ -123,13 +117,6 @@ public boolean perform(String command, Member member, TextChannel channel, Messa
return false;
}

//public LinkedList<String> listCommands() {
/*ArrayList<String> list = new ArrayList<String>();
commands.forEach((name, command) -> list.add(name));
return list;*/
//return cmdNames;
//}

public LinkedHashMap<String, ServerCommand> getAvailableCommands(Member member){
LinkedHashMap<String, ServerCommand> filteredCmds = new LinkedHashMap <String, ServerCommand>();
for(Entry<String, ServerCommand> entry : getCommands().entrySet()) {
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/bot/antony/commands/AntonyCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ public AntonyCmd() {
this.cmdParams.put("help", "Zeigt einen Hilfetext an.");
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
String[] userMessage = message.getContentDisplay().split(" ");
Expand Down Expand Up @@ -71,14 +74,11 @@ private EmbedBuilder getCommandList(Member member) {
/*private EmbedBuilder getCommandList() {
//Commands for everyone
BotCommand addhb = new BotCommand("addhb", "Hiermit lässt sich die Erstellung eines Haltungsberichtes anfragen.");
BotCommand giveawayEnd = new BotCommand("giveaway end", "Löst ein laufendes Giveaway auf und ermittelt die Gewinner.", "https://discord.com/channels/375031723601297409/605451097699647665/798303589763252224 :tada:");
BotCommand map = new BotCommand("map","Zeigt eine Karte von https://antmaps.org, auf der zu sehen ist, wo auf der Welt die gesuchte Ameisenart vorkommt.", "Lasius niger");
BotCommand notify = new BotCommand("notify", "Kann genutzt werden, um über neue Einträge in Kanälen informiert zu werden. Nutze den Befehl, um detaillierte Informationen zur Handhabung zu bekommen.", "#kanal1");
BotCommand pnlink = new BotCommand("pnlink", "Gibt einen formatierten Text für einen Kanal aus, der z.B. in PNs genutzt werden kann, um Kanäle zu verlinken, was über # nicht möglich ist. (Das letzte Leerzeichen der Ausgabe muss entfernt werden)", "#kanal1");
BotCommand sells = new BotCommand("sells", "Listet zu der gesuchten Ameisenart alle Shops und zugehörigen Preise. Die Shops werden nach Namen sortiert ausgegeben. Die Daten werden von https://antcheck.info zur Verfügung gestellt. Vielen Dank hierfür!", "Lasius niger");
BotCommand serverstats = new BotCommand("serverstats", "Zeigt Serverstatistiken.");
BotCommand showAvatar = new BotCommand("showavatar", "Zeigt eine vergrößerte Version des Avatars/Profilbildes eines Benutzers.", "Antony");
BotCommand userinfo = new BotCommand("userinfo", "Zeigt Details über den Benutzer.", "Antony");
//Commands for mods
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/ArchiveCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@ public ArchiveCmd() {
this.cmdParams.put("#channel (MessageCount)", "Archiviert die Inhalte von #channel. MessageCount ist optional und limitiert die archivierten Nachrichten.");
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
String[] userMessage = message.getContentDisplay().split(" ");
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/CategoryCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ public CategoryCmd() {
this.cmdParams.put("sync CategoryName (-o | --owner)", "Kann genutzt werden, um die Berechtigungen der Kanäle innerhalb einer Kategorie mit den Berechtigungen der Kategorie zu synchronisieren. Der Parameter `-o` bzw `--owner` muss verwendet werden, wenn die Kanäle einen dedizierten Owner haben, der extra Berechtiguengen erhalten soll. Die letzte Person, die in einem Kanal geschrieben hat, erhält dann die nötigen Rechte.");
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
this.channel = channel;
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/bot/antony/commands/ChangelogCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ public ChangelogCmd() {
this.shortDescription = "Zeigt die letzten Changelog-Einträge.";
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
EmbedBuilder eb = new EmbedBuilder().setTitle("***Antony - Changelog***")
Expand All @@ -41,6 +44,7 @@ public void performCommand(Member member, TextChannel channel, Message message)
private List<ChangeLogEntry> getChangeLog(int limit) {
String cmdPrefix = Antony.getCmdPrefix();
List<ChangeLogEntry> changeLog = new ArrayList<ChangeLogEntry>();
changeLog.add(new ChangeLogEntry("29.07.2022 - Version 7.0.11", "Die Funktionen ***" + cmdPrefix + "map*** und ***" + cmdPrefix + "showavatar*** wurden auf das neue Berechtigungssystem portiert. Kleinere Fehler-Korrekturen."));
changeLog.add(new ChangeLogEntry("16.07.2022 - Version 7.0.10", "Die ***" + cmdPrefix + "category*** sync Funktion wurde dahingehend geändert, dass nun auch die Voice-Kanäle synchronisiert werden und mit dem zusätzlichen Parameter `-o` bzw. `--owner` festgelegt werden kann, ob der letzte Verfasser in einem Kanal zum Kanal-Besitzer mit Sonderberechtigungen gemacht werden kann."));
changeLog.add(new ChangeLogEntry("15.07.2022 - Version 7.0.9", "Die ***" + cmdPrefix + "shutdown***, ***" + cmdPrefix + "whitelist***, ***" + cmdPrefix + "watchlist*** und ***" + cmdPrefix + "blacklist*** Funktionen wurde auf das neue Berechtigungssystem portiert. Die ***" + cmdPrefix + "addhb*** Funktion ignoriert bei der Angabe der Kategorie nun die \"#\", falls diese genutzt wird und ist damit fehlerunanfälliger."));
changeLog.add(new ChangeLogEntry("01.07.2022 - Version 7.0.8", "Die ***" + cmdPrefix + "channel*** Funktion wurde auf das neue Berechtigungssystem portiert."));
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/GuildCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,9 @@ public GuildCmd() {
this.cmdParams.put("exitchan (#exitChannel)", "Gibt den aktuellen Exit-Kanal aus oder setzt diesen.");
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
String[] userMessage = message.getContentDisplay().split(" ");
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/HelpCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ public HelpCmd() {
this.cmdParams.put("cmdName", "Zeigt die Hilfe für einen Befehl an.");
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
String[] userMessage = message.getContentDisplay().split(" ");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,20 +19,32 @@
import bot.antony.Antony;
import bot.antony.commands.antcheck.client.AntCheckClient;
import bot.antony.commands.antcheck.client.dto.Specie;
import bot.antony.commands.types.IServerCommand;
import bot.antony.commands.types.ServerCommand;
import bot.antony.utils.Utils;
import net.dv8tion.jda.api.EmbedBuilder;
import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.entities.Message;
import net.dv8tion.jda.api.entities.TextChannel;

public class Map implements IServerCommand {

private TextChannel channel;
public class MapCmd extends ServerCommand {

// --------------------------------------------------
// Constructor
// --------------------------------------------------
public MapCmd() {
super();
this.privileged = false;
this.name = "map";
this.description = "Zeigt eine Karte mit Markierungen, wo die Ameisen-Art auf der Welt vorkommt.";
this.shortDescription = "Zeigt wo die Ameisen-Art auf der Welt vorkommt.";
this.example = "Lasius niger";
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member m, TextChannel channel, Message message) {
this.channel = channel;
public void performCommand(Member member, TextChannel channel, Message message) {
ResteasyClient client = new ResteasyClientBuilder().build();
ResteasyProviderFactory instance = ResteasyProviderFactory.getInstance();
client.register(instance);
Expand Down Expand Up @@ -84,17 +96,11 @@ public void performCommand(Member m, TextChannel channel, Message message) {
}

} else {
printHelp();
printHelp(channel);
}

}

private void printHelp() {
//TODO: Help ausformulieren
channel.sendMessage("Benutzung: " + Antony.getCmdPrefix() + "map (Ant Species)\n"
+ "Beispiel: " + Antony.getCmdPrefix() + "map Lasius niger").queue();
}

private List<Specie> getSpecies(AntCheckClient client, String antName) {
Response response = client.getSpecies(antName);
String responsePayload = response.readEntity(String.class);
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/PnLinkCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ public PnLinkCmd() {
this.cmdParams.put("#channel", "Gibt einen Kanal-Link zu #channel aus.");
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
if (message.getMentions().getChannels().size() > 0) {
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/ShoppingCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ public ShoppingCmd() {
this.shortDescription = "Zeigt eine Liste mit Kaufempfehlungen für die Ameisenhaltung.";
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,53 +3,57 @@
import java.util.ArrayList;
import java.util.List;

import bot.antony.commands.types.IServerCommand;
import bot.antony.commands.types.ServerCommand;
import bot.antony.utils.Utils;
import net.dv8tion.jda.api.entities.Guild;
import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.entities.Message;
import net.dv8tion.jda.api.entities.TextChannel;

public class ShowAvatar implements IServerCommand {

private Member member;
private String fullMemberName;
private Guild guild;
public class ShowAvatarCmd extends ServerCommand {

// --------------------------------------------------
// Constructor
// --------------------------------------------------
public ShowAvatarCmd() {
super();
this.privileged = false;
this.name = "showavatar";
this.description = "Zeigt eine vergrößerte Version des Avatars/Profilbildes eines Benutzers.";
this.shortDescription = "Zeigt das Profilbild eines Benutzers.";
this.example = "Antony";
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member m, TextChannel channel, Message message) {
guild = channel.getGuild();
public void performCommand(Member member, TextChannel channel, Message message) {
String[] userMessage = message.getContentDisplay().split(" ");

// initially set the member who called the function
setMember(m);
String fullMemberName = "";

// overwrite member
if (userMessage.length > 1) {
if(message.getMentions().getMembers().size() > 0) {
setMember(message.getMentions().getMembers().get(0));
member = message.getMentions().getMembers().get(0);
} else {
setFullMemberName(message.getContentDisplay().substring(userMessage[0].length()+1));
fullMemberName = message.getContentDisplay().substring(userMessage[0].length()+1);

if(Utils.isId(fullMemberName)) {
setMember(guild.getMemberById(Long.parseLong(fullMemberName)));
member = channel.getGuild().getMemberById(Long.parseLong(fullMemberName));
//In case the users name is a number
if (getMember() == null) {
setMember(findUserIn(channel, getFullMemberName()));
if (member == null) {
member = findUserIn(channel, fullMemberName);
}
} else {
setMember(findUserIn(channel, getFullMemberName()));
member = findUserIn(channel, fullMemberName);
}
}
}

if (getMember() != null) {

channel.sendMessage(getMember().getUser().getEffectiveAvatarUrl() + "?size=2048").queue();

if (member != null) {
channel.sendMessage(member.getUser().getEffectiveAvatarUrl() + "?size=2048").queue();
} else {
channel.sendMessage("Ich konnte niemanden mit dem Namen " + getFullMemberName() + " finden.").queue();
channel.sendMessage("Ich konnte niemanden mit dem Namen " + fullMemberName + " finden.").queue();
}

}
Expand Down Expand Up @@ -86,24 +90,4 @@ public Member findUserIn(TextChannel channel, String searchText) {
return null;
}

// --------------------------------------------------
// Getters and Setters
// --------------------------------------------------

public Member getMember() {
return member;
}

public void setMember(Member member) {
this.member = member;
}

public String getFullMemberName() {
return fullMemberName;
}

public void setFullMemberName(String fullMemberName) {
this.fullMemberName = fullMemberName;
}

}
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/ShutdownCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ public ShutdownCmd() {
this.shortDescription = "Stoppt Antony.";
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
channel.sendMessage("Shutting down ...").queue();
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/UserCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ public UserCmd() {
this.cmdParams.put("updateall (force)", "Kann genutzt werden, um alle gespeicherten Benutzerdaten zu aktualisieren.");
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
this.channel = channel;
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/bot/antony/commands/aam/AddHBCmd.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ public AddHBCmd() {
this.shortDescription = "Beantragung von Kanälen für Haltungsberichte.";
}

// --------------------------------------------------
// Functions
// --------------------------------------------------
@Override
public void performCommand(Member member, TextChannel channel, Message message) {
Antony.getLogger().info("HB dialogue started");
Expand Down
Loading

0 comments on commit 2b421cc

Please sign in to comment.