13
0
geforkt von Mirrors/Velocity

Checkstyle-auto

Dieser Commit ist enthalten in:
Five (Xer) 2020-06-04 19:13:10 +02:00
Ursprung 18e5953976
Commit 6734ef3a08
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: A3F306B10E6330E7
4 geänderte Dateien mit 135 neuen und 125 gelöschten Zeilen

Datei anzeigen

@ -352,17 +352,18 @@ public class ClientPlaySessionHandler implements MinecraftSessionHandler {
boolean doubleSwitch; boolean doubleSwitch;
// This is not ONE if because this will all be null in < 1.16 // This is not ONE if because this will all be null in < 1.16
if (player.getProtocolVersion().compareTo(ProtocolVersion.MINECRAFT_1_16) < 0) { if (player.getProtocolVersion().compareTo(ProtocolVersion.MINECRAFT_1_16) < 0) {
if(dimensionRegistry.getWorldNames().size() > 1 && dimensionRegistry.getDimensionRegistry().size() > 1){ if (dimensionRegistry.getWorldNames().size() > 1
&& dimensionRegistry.getDimensionRegistry().size() > 1) {
String tmpDimLevelName = null; String tmpDimLevelName = null;
for(String s : dimensionRegistry.getWorldNames()){ for (String s : dimensionRegistry.getWorldNames()) {
if(!s.equals(dimensionInfo.getDimensionLevelName())){ if (!s.equals(dimensionInfo.getDimensionLevelName())) {
tmpDimLevelName = s; tmpDimLevelName = s;
break; break;
} }
} }
String tmpDimIdentifier = null; String tmpDimIdentifier = null;
for(String s : dimensionRegistry.getDimensionRegistry().keySet()){ for (String s : dimensionRegistry.getDimensionRegistry().keySet()) {
if(!s.equals(dimensionInfo.getDimensionIdentifier())){ if (!s.equals(dimensionInfo.getDimensionIdentifier())) {
tmpDimIdentifier = s; tmpDimIdentifier = s;
break; break;
} }
@ -376,7 +377,7 @@ public class ClientPlaySessionHandler implements MinecraftSessionHandler {
} else { } else {
doubleSwitch = true; doubleSwitch = true;
} }
if(doubleSwitch) { if (doubleSwitch) {
player.getMinecraftConnection().delayedWrite( player.getMinecraftConnection().delayedWrite(
new Respawn(tempDim, joinGame.getPartialHashedSeed(), joinGame.getDifficulty(), new Respawn(tempDim, joinGame.getPartialHashedSeed(), joinGame.getDifficulty(),
joinGame.getGamemode(), joinGame.getLevelType(), joinGame.getGamemode(), joinGame.getLevelType(),

Datei anzeigen

@ -4,37 +4,40 @@ import javax.annotation.Nonnull;
public class DimensionInfo { public class DimensionInfo {
private final @Nonnull String dimensionIdentifier; private final @Nonnull String dimensionIdentifier;
private final @Nonnull String dimensionLevelName; private final @Nonnull String dimensionLevelName;
private final boolean isFlat; private final boolean isFlat;
private final boolean isDebugType; private final boolean isDebugType;
public DimensionInfo(@Nonnull String dimensionIdentifier, @Nonnull String dimensionLevelName, boolean isFlat, boolean isDebugType) { public DimensionInfo(@Nonnull String dimensionIdentifier, @Nonnull String dimensionLevelName,
if(dimensionIdentifier == null || dimensionIdentifier.isEmpty() || dimensionIdentifier.isBlank()) { boolean isFlat, boolean isDebugType) {
throw new IllegalArgumentException("DimensionRegistryName may not be empty or null"); if (dimensionIdentifier == null || dimensionIdentifier.isEmpty()
} || dimensionIdentifier.isBlank()) {
this.dimensionIdentifier = dimensionIdentifier; throw new IllegalArgumentException("DimensionRegistryName may not be empty or null");
if(dimensionLevelName == null || dimensionLevelName.isEmpty() || dimensionLevelName.isBlank()) {
throw new IllegalArgumentException("DimensionLevelName may not be empty or null");
}
this.dimensionLevelName = dimensionLevelName;
this.isFlat = isFlat;
this.isDebugType = isDebugType;
} }
this.dimensionIdentifier = dimensionIdentifier;
if (dimensionLevelName == null || dimensionLevelName.isEmpty()
|| dimensionLevelName.isBlank()) {
throw new IllegalArgumentException("DimensionLevelName may not be empty or null");
}
this.dimensionLevelName = dimensionLevelName;
this.isFlat = isFlat;
this.isDebugType = isDebugType;
}
public boolean isDebugType() { public boolean isDebugType() {
return isDebugType; return isDebugType;
} }
public boolean isFlat() { public boolean isFlat() {
return isFlat; return isFlat;
} }
public @Nonnull String getDimensionLevelName() { public @Nonnull String getDimensionLevelName() {
return dimensionLevelName; return dimensionLevelName;
} }
public @Nonnull String getDimensionIdentifier() { public @Nonnull String getDimensionIdentifier() {
return dimensionIdentifier; return dimensionIdentifier;
} }
} }

Datei anzeigen

@ -1,113 +1,119 @@
package com.velocitypowered.proxy.protocol; package com.velocitypowered.proxy.protocol;
import java.util.HashMap;
import java.util.Map;
import java.util.NoSuchElementException;
import java.util.Set;
import javax.annotation.Nonnull;
import net.kyori.nbt.CompoundTag; import net.kyori.nbt.CompoundTag;
import net.kyori.nbt.ListTag; import net.kyori.nbt.ListTag;
import net.kyori.nbt.Tag; import net.kyori.nbt.Tag;
import net.kyori.nbt.TagType; import net.kyori.nbt.TagType;
import javax.annotation.Nonnull;
import java.util.*;
public class DimensionRegistry { public class DimensionRegistry {
private final @Nonnull Map<String, String> dimensionRegistry; private final @Nonnull Map<String, String> dimensionRegistry;
private final @Nonnull Set<String> worldNames; private final @Nonnull Set<String> worldNames;
public DimensionRegistry(Map<String, String> dimensionRegistry, Set<String> worldNames) { public DimensionRegistry(Map<String, String> dimensionRegistry,
if(dimensionRegistry == null || dimensionRegistry.isEmpty() || worldNames == null || worldNames.isEmpty()) { Set<String> worldNames) {
throw new IllegalArgumentException("DimensionRegistry requires valid arguments, not null and not empty"); if (dimensionRegistry == null || dimensionRegistry.isEmpty()
} || worldNames == null || worldNames.isEmpty()) {
this.dimensionRegistry = dimensionRegistry; throw new IllegalArgumentException(
this.worldNames = worldNames; "DimensionRegistry requires valid arguments, not null and not empty");
} }
this.dimensionRegistry = dimensionRegistry;
this.worldNames = worldNames;
}
public @Nonnull Map<String, String> getDimensionRegistry() { public @Nonnull Map<String, String> getDimensionRegistry() {
return dimensionRegistry; return dimensionRegistry;
}
public @Nonnull Set<String> getWorldNames() {
return worldNames;
}
public @Nonnull String getDimensionIdentifier(@Nonnull String dimensionName) {
if (dimensionName == null) {
throw new IllegalArgumentException("DimensionName cannot be null!");
} }
if (dimensionName == null || !dimensionRegistry.containsKey(dimensionName)) {
public @Nonnull Set<String> getWorldNames() { throw new NoSuchElementException("DimensionName " + dimensionName
return worldNames; + " doesn't exist in this Registry!");
} }
return dimensionRegistry.get(dimensionName);
}
public @Nonnull String getDimensionIdentifier(@Nonnull String dimensionName) { public @Nonnull String getDimensionName(@Nonnull String dimensionIdentifier) {
if (dimensionName == null) { if (dimensionIdentifier == null) {
throw new IllegalArgumentException("DimensionName cannot be null!"); throw new IllegalArgumentException("DimensionIdentifier cannot be null!");
}
if (dimensionName == null || !dimensionRegistry.containsKey(dimensionName)) {
throw new NoSuchElementException("DimensionName " + dimensionName + " doesn't exist in this Registry!");
}
return dimensionRegistry.get(dimensionName);
} }
for (Map.Entry<String, String> entry : dimensionRegistry.entrySet()) {
public @Nonnull String getDimensionName(@Nonnull String dimensionIdentifier) { if (entry.getValue().equals(dimensionIdentifier)) {
if (dimensionIdentifier == null) { return entry.getKey();
throw new IllegalArgumentException("DimensionIdentifier cannot be null!"); }
}
for (Map.Entry<String, String> entry : dimensionRegistry.entrySet()){
if(entry.getValue().equals(dimensionIdentifier)){
return entry.getKey();
}
}
throw new NoSuchElementException("DimensionIdentifier " + dimensionIdentifier + " doesn't exist in this Registry!");
} }
throw new NoSuchElementException("DimensionIdentifier " + dimensionIdentifier
+ " doesn't exist in this Registry!");
}
public boolean isValidFor(@Nonnull DimensionInfo toValidate) { public boolean isValidFor(@Nonnull DimensionInfo toValidate) {
if(toValidate == null) { if (toValidate == null) {
throw new IllegalArgumentException("DimensionInfo cannot be null"); throw new IllegalArgumentException("DimensionInfo cannot be null");
}
try{
if (!worldNames.contains(toValidate.getDimensionLevelName())){
return false;
}
getDimensionName(toValidate.getDimensionIdentifier());
return true;
} catch(NoSuchElementException thrown){
return false;
}
} }
try {
public CompoundTag encodeToCompoundTag(){ if (!worldNames.contains(toValidate.getDimensionLevelName())) {
CompoundTag ret = new CompoundTag(); return false;
ListTag list = new ListTag(TagType.COMPOUND); }
for(Map.Entry<String, String> entry : dimensionRegistry.entrySet()){ getDimensionName(toValidate.getDimensionIdentifier());
CompoundTag item = new CompoundTag(); return true;
item.putString("key", entry.getKey()); } catch (NoSuchElementException thrown) {
item.putString("element", entry.getValue()); return false;
list.add(item);
}
ret.put("dimension", list);
return ret;
} }
}
public static Map<String, String> parseToMapping(@Nonnull CompoundTag toParse){ public CompoundTag encodeToCompoundTag() {
if(toParse == null) { CompoundTag ret = new CompoundTag();
throw new IllegalArgumentException("CompoundTag cannot be null"); ListTag list = new ListTag(TagType.COMPOUND);
} for (Map.Entry<String, String> entry : dimensionRegistry.entrySet()) {
if(!toParse.contains("dimension", TagType.LIST)){ CompoundTag item = new CompoundTag();
throw new IllegalStateException("CompoundTag does not contain a dimension List"); item.putString("key", entry.getKey());
} item.putString("element", entry.getValue());
ListTag dimensions = toParse.getList("dimension"); list.add(item);
Map<String, String> mappings = new HashMap<String, String>();
for(Tag iter : dimensions){
if(iter instanceof CompoundTag){
throw new IllegalStateException("DimensionList in CompoundTag contains an invalid entry");
}
CompoundTag mapping = (CompoundTag) iter;
String key = mapping.getString("key", null);
String element = mapping.getString("element", null);
if(element == null || key == null){
throw new IllegalStateException("DimensionList in CompoundTag contains an mapping");
}
if(mappings.containsKey(key) || mappings.containsValue(element)) {
throw new IllegalStateException("Dimension mappings may not have identifier/name duplicates");
}
mappings.put(key, element);
}
if(mappings.isEmpty()){
throw new IllegalStateException("Dimension mapping cannot be empty");
}
return mappings;
} }
ret.put("dimension", list);
return ret;
}
public static Map<String, String> parseToMapping(@Nonnull CompoundTag toParse) {
if (toParse == null) {
throw new IllegalArgumentException("CompoundTag cannot be null");
}
if (!toParse.contains("dimension", TagType.LIST)) {
throw new IllegalStateException("CompoundTag does not contain a dimension List");
}
ListTag dimensions = toParse.getList("dimension");
Map<String, String> mappings = new HashMap<String, String>();
for (Tag iter : dimensions) {
if (iter instanceof CompoundTag) {
throw new IllegalStateException("DimensionList in CompoundTag contains an invalid entry");
}
CompoundTag mapping = (CompoundTag) iter;
String key = mapping.getString("key", null);
String element = mapping.getString("element", null);
if (element == null || key == null) {
throw new IllegalStateException("DimensionList in CompoundTag contains an mapping");
}
if (mappings.containsKey(key) || mappings.containsValue(element)) {
throw new IllegalStateException(
"Dimension mappings may not have identifier/name duplicates");
}
mappings.put(key, element);
}
if (mappings.isEmpty()) {
throw new IllegalStateException("Dimension mapping cannot be empty");
}
return mappings;
}
} }

Datei anzeigen

@ -245,7 +245,7 @@ public enum ProtocolUtils {
public static String[] readStringArray(ByteBuf buf) { public static String[] readStringArray(ByteBuf buf) {
int length = readVarInt(buf); int length = readVarInt(buf);
String[] ret = new String[length]; String[] ret = new String[length];
for(int i = 0; i < length; i++) { for (int i = 0; i < length; i++) {
ret[i] = readString(buf); ret[i] = readString(buf);
} }
return ret; return ret;
@ -262,7 +262,7 @@ public enum ProtocolUtils {
return; return;
} }
writeVarInt(buf, stringArray.length); writeVarInt(buf, stringArray.length);
for(int i = 0; i < stringArray.length; i++) { for (int i = 0; i < stringArray.length; i++) {
writeString(buf, stringArray[i]); writeString(buf, stringArray[i]);
} }
} }