diff --git a/src/main/java/de/bixilon/minosoft/data/ChangeableIdentifier.java b/src/main/java/de/bixilon/minosoft/data/ChangeableIdentifier.java index 16007af36..8b7448c11 100644 --- a/src/main/java/de/bixilon/minosoft/data/ChangeableIdentifier.java +++ b/src/main/java/de/bixilon/minosoft/data/ChangeableIdentifier.java @@ -37,11 +37,11 @@ public class ChangeableIdentifier extends VersionValueMap { } public ChangeableIdentifier(IdentifierSet... sets) { - super(sets, true); + super(sets); } public ChangeableIdentifier(String name) { - super(name); + super(new MapSet<>(Versions.LOWEST_VERSION_SUPPORTED.getVersionId(), name)); } public boolean isValidName(String name, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/data/VersionValueMap.java b/src/main/java/de/bixilon/minosoft/data/VersionValueMap.java index 233b9d41f..bc61ee05f 100644 --- a/src/main/java/de/bixilon/minosoft/data/VersionValueMap.java +++ b/src/main/java/de/bixilon/minosoft/data/VersionValueMap.java @@ -13,8 +13,6 @@ package de.bixilon.minosoft.data; -import de.bixilon.minosoft.data.mappings.versions.Versions; - import java.util.Map; import java.util.TreeMap; @@ -24,14 +22,14 @@ public class VersionValueMap { public VersionValueMap() { } - public VersionValueMap(MapSet[] sets, boolean unused) { + public VersionValueMap(MapSet[] sets) { for (MapSet set : sets) { this.values.put(set.getKey(), set.getValue()); } } - public VersionValueMap(V value) { - this.values.put(Versions.LOWEST_VERSION_SUPPORTED.getVersionId(), value); + public VersionValueMap(MapSet set) { + this.values.put(set.getKey(), set.getValue()); } public V get(int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/data/entities/EntityMetaData.java b/src/main/java/de/bixilon/minosoft/data/entities/EntityMetaData.java index 4bb4fdbb8..fdb1deb93 100644 --- a/src/main/java/de/bixilon/minosoft/data/entities/EntityMetaData.java +++ b/src/main/java/de/bixilon/minosoft/data/entities/EntityMetaData.java @@ -19,6 +19,7 @@ import de.bixilon.minosoft.data.VersionValueMap; import de.bixilon.minosoft.data.inventory.Slot; import de.bixilon.minosoft.data.mappings.blocks.Block; import de.bixilon.minosoft.data.mappings.particle.data.ParticleData; +import de.bixilon.minosoft.data.mappings.versions.Versions; import de.bixilon.minosoft.data.text.ChatComponent; import de.bixilon.minosoft.data.world.BlockPosition; import de.bixilon.minosoft.logging.Log; @@ -118,14 +119,14 @@ public class EntityMetaData { OPT_VAR_INT(new MapSet[]{new MapSet<>(459, 17)}), POSE(new MapSet[]{new MapSet<>(461, 18)}); - final VersionValueMap valueMap; + private final VersionValueMap valueMap; EntityMetaDataValueTypes(MapSet[] values) { - this.valueMap = new VersionValueMap<>(values, true); + this.valueMap = new VersionValueMap<>(values); } EntityMetaDataValueTypes(int id) { - this.valueMap = new VersionValueMap<>(id); + this.valueMap = new VersionValueMap<>(new MapSet<>(Versions.LOWEST_VERSION_SUPPORTED.getVersionId(), id)); } public static EntityMetaDataValueTypes byId(int id, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/data/entities/VillagerData.kt b/src/main/java/de/bixilon/minosoft/data/entities/VillagerData.kt index 0033e4c05..ee0249af4 100644 --- a/src/main/java/de/bixilon/minosoft/data/entities/VillagerData.kt +++ b/src/main/java/de/bixilon/minosoft/data/entities/VillagerData.kt @@ -40,7 +40,7 @@ data class VillagerData(val type: VillagerTypes, val profession: VillagerProfess ZOMBIE(arrayOf(MapSet(204, -1), MapSet(315, -100))); // used earlier (ZombieVillagerMeta) - private val valueMap = VersionValueMap(values as Array>, true) + private val valueMap = VersionValueMap(values as Array>) fun getId(versionId: Int): Int { diff --git a/src/main/java/de/bixilon/minosoft/data/inventory/InventorySlots.java b/src/main/java/de/bixilon/minosoft/data/inventory/InventorySlots.java index ddd030ce2..84390b811 100644 --- a/src/main/java/de/bixilon/minosoft/data/inventory/InventorySlots.java +++ b/src/main/java/de/bixilon/minosoft/data/inventory/InventorySlots.java @@ -15,6 +15,7 @@ package de.bixilon.minosoft.data.inventory; import de.bixilon.minosoft.data.MapSet; import de.bixilon.minosoft.data.VersionValueMap; +import de.bixilon.minosoft.data.mappings.versions.Versions; public class InventorySlots { public enum PlayerInventorySlots implements InventoryInterface { @@ -94,11 +95,11 @@ public class InventorySlots { final VersionValueMap valueMap; EntityInventorySlots(MapSet[] values) { - this.valueMap = new VersionValueMap<>(values, true); + this.valueMap = new VersionValueMap<>(values); } EntityInventorySlots(int id) { - this.valueMap = new VersionValueMap<>(id); + this.valueMap = new VersionValueMap<>(new MapSet<>(Versions.LOWEST_VERSION_SUPPORTED.getVersionId(), id)); } public static EntityInventorySlots byId(int id, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketBlockEntityMetadata.java b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketBlockEntityMetadata.java index fceb36ec6..f5201eb5a 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketBlockEntityMetadata.java +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketBlockEntityMetadata.java @@ -84,7 +84,7 @@ public class PacketBlockEntityMetadata implements ClientboundPacket { final VersionValueMap valueMap; BlockEntityActions(MapSet[] values) { - this.valueMap = new VersionValueMap<>(values, true); + this.valueMap = new VersionValueMap<>(values); } public static BlockEntityActions byId(int id, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketChangeGameState.java b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketChangeGameState.java index b8662f22c..f7a7f443e 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketChangeGameState.java +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketChangeGameState.java @@ -70,7 +70,7 @@ public class PacketChangeGameState implements ClientboundPacket { final VersionValueMap valueMap; Reason(MapSet[] values) { - this.valueMap = new VersionValueMap<>(values, true); + this.valueMap = new VersionValueMap<>(values); } public static Reason byId(int id, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketEffect.java b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketEffect.java index 90e24480f..5c490ca9e 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketEffect.java +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketEffect.java @@ -150,7 +150,7 @@ public class PacketEffect implements ClientboundPacket { final VersionValueMap valueMap; EffectEffects(MapSet[] values) { - this.valueMap = new VersionValueMap<>(values, true); + this.valueMap = new VersionValueMap<>(values); } public static EffectEffects byId(int id, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketEntityAnimation.java b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketEntityAnimation.java index 5bb734400..f19bd430f 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketEntityAnimation.java +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketEntityAnimation.java @@ -57,7 +57,7 @@ public class PacketEntityAnimation implements ClientboundPacket { final VersionValueMap valueMap; EntityAnimations(MapSet[] values) { - this.valueMap = new VersionValueMap<>(values, true); + this.valueMap = new VersionValueMap<>(values); } public static EntityAnimations byId(int id, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketTitle.java b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketTitle.java index 41d44f9df..5cae83bdc 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketTitle.java +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketTitle.java @@ -15,6 +15,7 @@ package de.bixilon.minosoft.protocol.packets.clientbound.play; import de.bixilon.minosoft.data.MapSet; import de.bixilon.minosoft.data.VersionValueMap; +import de.bixilon.minosoft.data.mappings.versions.Versions; import de.bixilon.minosoft.data.text.ChatComponent; import de.bixilon.minosoft.logging.Log; import de.bixilon.minosoft.protocol.packets.ClientboundPacket; @@ -93,14 +94,14 @@ public class PacketTitle implements ClientboundPacket { HIDE(new MapSet[]{new MapSet<>(18, 3), new MapSet<>(302, 4)}), RESET(new MapSet[]{new MapSet<>(18, 4), new MapSet<>(302, 5)}); - final VersionValueMap valueMap; + private final VersionValueMap valueMap; TitleActions(MapSet[] values) { - this.valueMap = new VersionValueMap<>(values, true); + this.valueMap = new VersionValueMap<>(values); } TitleActions(int id) { - this.valueMap = new VersionValueMap<>(id); + this.valueMap = new VersionValueMap<>(new MapSet<>(Versions.LOWEST_VERSION_SUPPORTED.getVersionId(), id)); } public static TitleActions byId(int id, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/serverbound/play/PacketEntityAction.java b/src/main/java/de/bixilon/minosoft/protocol/packets/serverbound/play/PacketEntityAction.java index 0e35ce7ed..c32ac1d2b 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/serverbound/play/PacketEntityAction.java +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/serverbound/play/PacketEntityAction.java @@ -71,7 +71,7 @@ public class PacketEntityAction implements ServerboundPacket { final VersionValueMap valueMap; EntityActions(MapSet[] values) { - this.valueMap = new VersionValueMap<>(values, true); + this.valueMap = new VersionValueMap<>(values); } public static EntityActions byId(int id, int versionId) { diff --git a/src/main/java/de/bixilon/minosoft/protocol/protocol/InByteBuffer.java b/src/main/java/de/bixilon/minosoft/protocol/protocol/InByteBuffer.java index 52298644b..8636ffd19 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/protocol/InByteBuffer.java +++ b/src/main/java/de/bixilon/minosoft/protocol/protocol/InByteBuffer.java @@ -248,7 +248,7 @@ public class InByteBuffer { throw new IllegalArgumentException("Bad nbt"); } } - TagTypes type = TagTypes.byId(readByte()); + TagTypes type = TagTypes.byId(readUnsignedByte()); if (type == TagTypes.COMPOUND) { // shouldn't be a subtag return new CompoundTag(false, this); diff --git a/src/main/java/de/bixilon/minosoft/util/BitByte.java b/src/main/java/de/bixilon/minosoft/util/BitByte.java index 58a634dc2..9e56d12e8 100644 --- a/src/main/java/de/bixilon/minosoft/util/BitByte.java +++ b/src/main/java/de/bixilon/minosoft/util/BitByte.java @@ -25,7 +25,7 @@ public final class BitByte { public static byte getBitCount(int input) { byte ret = 0; - for (byte i = 0; i < Short.BYTES * 8; i++) { // bytes to bits + for (byte i = 0; i < Short.SIZE; i++) { if (isBitSet(input, i)) { ret++; } diff --git a/src/main/java/de/bixilon/minosoft/util/nbt/tag/ListTag.java b/src/main/java/de/bixilon/minosoft/util/nbt/tag/ListTag.java index d9b513e72..30ce34879 100644 --- a/src/main/java/de/bixilon/minosoft/util/nbt/tag/ListTag.java +++ b/src/main/java/de/bixilon/minosoft/util/nbt/tag/ListTag.java @@ -20,8 +20,8 @@ import java.util.ArrayList; import java.util.Arrays; public class ListTag extends NBTTag { - final TagTypes type; - final ArrayList list; + private final TagTypes type; + private final ArrayList list; public ListTag(TagTypes type, ArrayList list) { this.type = type; @@ -30,7 +30,7 @@ public class ListTag extends NBTTag { public ListTag(TagTypes type, NBTTag[] list) { this.type = type; - this.list = (ArrayList) Arrays.asList(list); + this.list = new ArrayList<>(Arrays.asList(list)); } public ListTag(InByteBuffer buffer) {