SteamWar/BungeeCore
Archiviert
13
2

Whois Fabric Mod Info #444

Zusammengeführt
Lixfel hat 20 Commits von whois_fabric_mods nach master 2023-01-15 16:42:18 +01:00 zusammengeführt
3 geänderte Dateien mit 11 neuen und 7 gelöschten Zeilen
Nur Änderungen aus Commit abe45da57d werden angezeigt - Alle Commits anzeigen

Datei anzeigen

@ -107,7 +107,7 @@ public class WhoisCommand extends SWCommand {
if(!user.getActiveMods().isEmpty()) {
Message.send("WHOIS_ACTIVE_MODS",player);
for(Mod mod : user.getActiveMods()) {
Message.sendPrefixless("WHOIS_ACTIVE_MOD", player,mod.getModName());
Message.send("WHOIS_ACTIVE_MOD", player,mod.getModName());
}
}else {
Message.send("WHOIS_NO_ACTIVE_MODS",player);

Datei anzeigen

@ -89,7 +89,7 @@ public class Fabric extends BasicListener {
}
Storage.fabricExpectPluginMessage.remove(player);
List<Mod> mods = new LinkedList<>();
ArrayList<Mod> mods = new ArrayList<>();
Utils.VarInt varInt = Utils.readVarInt(data,0);
@ -127,6 +127,8 @@ public class Fabric extends BasicListener {
return;
}
user.setActiveMods(mods);
if(Utils.handleMods(player,mods)) {
if (Storage.fabricCheckedPlayers.containsKey(player)) {
long current = Storage.fabricCheckedPlayers.get(player);
@ -139,7 +141,6 @@ public class Fabric extends BasicListener {
Storage.fabricCheckedPlayers.put(player, dataString.hashCode());
}
Storage.fabricPlayers.remove(player);
user.setActiveMods(mods);
}
}
@ -164,7 +165,6 @@ public class Fabric extends BasicListener {
public static void remove(ProxiedPlayer player) {
Storage.fabricCheckedPlayers.remove(player);
SteamwarUser.get(player.getUniqueId()).setActiveMods(new LinkedList<>());
synchronized (Storage.fabricExpectPluginMessage) {
Storage.fabricExpectPluginMessage.remove(player);
}

Datei anzeigen

@ -39,6 +39,7 @@ import java.sql.ResultSet;
import java.sql.SQLException;
zOnlyKroks markierte diese Unterhaltung als gelöst
Review

Falsche Datei, du kannst das nicht im SWUser speichern (kommt irgendwann in den CommonCore und wird stündlich gelöscht). Mache das eher im Modsystem mit einer static final Map<ProxiedPlayer, List>. (Wobei du bei einem disconnect dann natürlich den entsprechenden Eintrag entfernen musst) Theoretisch müsste das dann auch in den PersistentBungeeCore, aber da es sich nur um eine Debug-Sache handelt, müsste es in Ordnung sein, wenn das Wissen bei einem Softreload verloren geht.

Falsche Datei, du kannst das nicht im SWUser speichern (kommt irgendwann in den CommonCore und wird stündlich gelöscht). Mache das eher im Modsystem mit einer static final Map<ProxiedPlayer, List>. (Wobei du bei einem disconnect dann natürlich den entsprechenden Eintrag entfernen musst) Theoretisch müsste das dann auch in den PersistentBungeeCore, aber da es sich nur um eine Debug-Sache handelt, müsste es in Ordnung sein, wenn das Wissen bei einem Softreload verloren geht.
import java.sql.Timestamp;
import java.util.*;
import java.util.concurrent.CopyOnWriteArrayList;
zOnlyKroks markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Unused import

Unused import
import java.util.logging.Level;
import java.util.stream.Collectors;
@ -80,7 +81,7 @@ public class SteamwarUser {
private Locale locale;
private boolean manualLocale;
private List<Mod> activeMods = new LinkedList<>();
private List<Mod> activeMods = new CopyOnWriteArrayList<>();
zOnlyKroks markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Was zum Henker ist das für ein Listentyp? Ist das wirklich nötig?

Was zum Henker ist das für ein Listentyp? Ist das wirklich nötig?
static {
try {
@ -396,8 +397,11 @@ public class SteamwarUser {
}
public void setActiveMods(List<Mod> activeMods) {
this.activeMods = activeMods;
this.activeMods.clear();
this.activeMods.addAll(activeMods);
}
public List<Mod> getActiveMods() {return this.activeMods;}
public List<Mod> getActiveMods() {
return new ArrayList<>(activeMods);
}
}