SteamWar/BungeeCore
Archiviert
13
2

Fabric Mod Sender Integration. Mod itself is not final #307

Zusammengeführt
Lixfel hat 12 Commits von fabric_mod_sender nach master 2022-03-26 10:01:51 +01:00 zusammengeführt
Nur Änderungen aus Commit a7525dd8a1 werden angezeigt - Alle Commits anzeigen

Datei anzeigen

@ -28,7 +28,6 @@ import de.steamwar.bungeecore.sql.Mod;
import de.steamwar.bungeecore.sql.Punishment;
import de.steamwar.bungeecore.sql.SteamwarUser;
zOnlyKroks markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Das Stringhandling schaut mir ziemlich Spanisch aus, ist das hier ein sehr primitiver JSON-Parser?

Das Stringhandling schaut mir ziemlich Spanisch aus, ist das hier ein sehr primitiver JSON-Parser?
import net.md_5.bungee.api.connection.ProxiedPlayer;
import net.md_5.bungee.api.event.PlayerDisconnectEvent;
import net.md_5.bungee.api.event.PluginMessageEvent;
import net.md_5.bungee.event.EventHandler;
@ -69,24 +68,27 @@ public class Fabric extends BasicListener {
if(data.length != varInt.length + varInt.value) {
banPlayer(user,player);
Lixfel markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Du könntest das Packet prinzipiell vereinfachen, indem du den String ohne Länge vorher schickst. Der String wäre dann das gesamte Packet. Ansonsten würde ich mir wünschen, dass du überprüfst, dass der VarInt tatsächlich die Länge des restlichen Packets enthält (und falls Fehler Bann), derzeit nutzt du ja den VarInt gar nicht.

Du könntest das Packet prinzipiell vereinfachen, indem du den String ohne Länge vorher schickst. Der String wäre dann das gesamte Packet. Ansonsten würde ich mir wünschen, dass du überprüfst, dass der VarInt tatsächlich die Länge des restlichen Packets enthält (und falls Fehler Bann), derzeit nutzt du ja den VarInt gar nicht.
Veraltet
Review

1 teres kann ich nicht tun, da dieser varint von minecraft direkt angepappt wird. zweites kann ich machen.

1 teres kann ich nicht tun, da dieser varint von minecraft direkt angepappt wird. zweites kann ich machen.
return;
}
zOnlyKroks markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Hier kann eine CharsetException oder ähnliches auftreten, in dem Fall wurde (offensichtlich) auch am fabricmodsender herumgepfuscht.

Hier kann eine CharsetException oder ähnliches auftreten, in dem Fall wurde (offensichtlich) auch am fabricmodsender herumgepfuscht.
data = Arrays.copyOfRange(data,varInt.length, data.length);
String dataString = "";
String dataString;
try{
zOnlyKroks markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Kannst du hier nicht for(X modIdentifier : array) machen?

Kannst du hier nicht for(X modIdentifier : array) machen?
dataString = new String(data, StandardCharsets.UTF_8);
}catch (UnsupportedCharsetException exception) {
banPlayer(user, player);
return;
}
JsonArray array = new JsonArray();
JsonArray array;
zOnlyKroks markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Das würde ich mir einmal Multilingual mit Message.parse(Prefixless?)() wünschen.

Das würde ich mir einmal Multilingual mit Message.parse(Prefixless?)() wünschen.
try {
array = new JsonParser().parse(dataString).getAsJsonArray();
}catch (JsonSyntaxException exception) {
banPlayer(user, player);
return;
}
zOnlyKroks markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Diese drei Codezeilen hast du doppelt drin, daher würde ich mir wünschen, dass du die in eine Funktion auslagerst.

Diese drei Codezeilen hast du doppelt drin, daher würde ich mir wünschen, dass du die in eine Funktion auslagerst.
for(JsonElement mod : array) {