Skip to content

Commit 740a6d9

Browse files
Finish up v5 migration
Also: - Reduces the amount of anonymous classes - Removes usages of PacketWrapper#create with raw ids
1 parent b1d6804 commit 740a6d9

24 files changed

+1083
-1291
lines changed

common/src/main/java/com/viaversion/viarewind/api/type/RewindTypes.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@
3131

3232
import java.util.List;
3333

34+
/**
35+
* Safe to use before protocol loading
36+
*/
3437
public class RewindTypes {
3538

3639
public static final Type<int[]> INT_ARRAY = new IntArrayType(); // Integer array with byte as length indicator

common/src/main/java/com/viaversion/viarewind/api/type/entitydata/EntityDataListType.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,25 +36,25 @@ public EntityDataListType(Type<EntityData> type) {
3636

3737
@Override
3838
public List<EntityData> read(ByteBuf buffer) {
39-
ArrayList<EntityData> list = new ArrayList<>();
39+
ArrayList<EntityData> entityData = new ArrayList<>();
4040

4141
EntityData data;
4242
do {
4343
data = type.read(buffer);
4444
if (data != null) {
45-
list.add(data);
45+
entityData.add(data);
4646
}
4747
} while (data != null);
4848

49-
return list;
49+
return entityData;
5050
}
5151

5252
@Override
53-
public void write(ByteBuf buffer, List<EntityData> metadata) {
54-
for (EntityData meta : metadata) {
53+
public void write(ByteBuf buffer, List<EntityData> entityData) {
54+
for (EntityData meta : entityData) {
5555
type.write(buffer, meta);
5656
}
57-
if (metadata.isEmpty()) {
57+
if (entityData.isEmpty()) {
5858
type.write(buffer, new EntityData(0, EntityDataTypes1_7_6_10.BYTE, (byte) 0));
5959
}
6060
buffer.writeByte(127);

common/src/main/java/com/viaversion/viarewind/protocol/v1_7_6_10to1_7_2_5/Protocol1_7_6_10To1_7_2_5.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public void register() {
7575
map(Types.BYTE); // Yaw
7676
map(Types.BYTE); // Pitch
7777
map(Types.SHORT); // Item in hand
78-
map(Types1_7_6_10.ENTITY_DATA_LIST); // Metadata
78+
map(Types1_7_6_10.ENTITY_DATA_LIST); // Entity data
7979
}
8080
});
8181

common/src/main/java/com/viaversion/viarewind/protocol/v1_8to1_7_6_10/data/EntityDataIndex1_7_6_10.java

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -36,16 +36,16 @@ public enum EntityDataIndex1_7_6_10 {
3636
ENTITY_NAME_TAG_VISIBILITY(ENTITY, -1, null, 3, EntityDataTypes1_8.BYTE),
3737
ENTITY_SILENT(ENTITY, -1, null, 4, EntityDataTypes1_8.BYTE),
3838

39-
ENTITY_LIVING_HEALTH(LIVING_ENTITY_BASE, 6, EntityDataTypes1_7_6_10.FLOAT, EntityDataTypes1_8.FLOAT),
40-
ENTITY_LIVING_POTION_EFFECT_COLOR(LIVING_ENTITY_BASE, 7, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
41-
ENTITY_LIVING_IS_POTION_EFFECT_AMBIENT(LIVING_ENTITY_BASE, 8, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
42-
ENTITY_LIVING_ARROWS(LIVING_ENTITY_BASE, 9, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
43-
ENTITY_LIVING_NAME_TAG(LIVING_ENTITY_BASE, 10, EntityDataTypes1_7_6_10.STRING, 2, EntityDataTypes1_8.STRING),
44-
ENTITY_LIVING_NAME_TAG_VISIBILITY(LIVING_ENTITY_BASE, 11, EntityDataTypes1_7_6_10.BYTE, 3, EntityDataTypes1_8.BYTE),
39+
LIVING_ENTITY_BASE_HEALTH(LIVING_ENTITY_BASE, 6, EntityDataTypes1_7_6_10.FLOAT, EntityDataTypes1_8.FLOAT),
40+
LIVING_ENTITY_BASE_POTION_EFFECT_COLOR(LIVING_ENTITY_BASE, 7, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
41+
LIVING_ENTITY_BASE_IS_POTION_EFFECT_AMBIENT(LIVING_ENTITY_BASE, 8, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
42+
LIVING_ENTITY_BASE_ARROWS(LIVING_ENTITY_BASE, 9, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
43+
LIVING_ENTITY_BASE_NAME_TAG(LIVING_ENTITY_BASE, 10, EntityDataTypes1_7_6_10.STRING, 2, EntityDataTypes1_8.STRING),
44+
LIVING_ENTITY_BASE_NAME_TAG_VISIBILITY(LIVING_ENTITY_BASE, 11, EntityDataTypes1_7_6_10.BYTE, 3, EntityDataTypes1_8.BYTE),
4545

46-
ENTITY_LIVING_AI(LIVING_ENTITY, -1, null, 15, EntityDataTypes1_8.BYTE),
46+
LIVING_ENTITY_AI(LIVING_ENTITY, -1, null, 15, EntityDataTypes1_8.BYTE),
4747

48-
ENTITY_AGEABLE_AGE(ABSTRACT_AGEABLE, 12, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.BYTE),
48+
ABSTRACT_AGEABLE_AGE(ABSTRACT_AGEABLE, 12, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.BYTE),
4949

5050
ARMOR_STAND_FLAGS(ARMOR_STAND, -1, null, 10, EntityDataTypes1_8.BYTE),
5151
ARMOR_STAND_HEAD_POSITION(ARMOR_STAND, -1, null, 11, EntityDataTypes1_8.ROTATIONS),
@@ -55,10 +55,10 @@ public enum EntityDataIndex1_7_6_10 {
5555
ARMOR_STAND_LEFT_LEG_POSITION(ARMOR_STAND, -1, null, 15, EntityDataTypes1_8.ROTATIONS),
5656
ARMOR_STAND_RIGHT_LEG_POSITION(ARMOR_STAND, -1, null, 16, EntityDataTypes1_8.ROTATIONS),
5757

58-
HUMAN_SKIN_FLAGS(PLAYER, 16, EntityDataTypes1_7_6_10.BYTE, 10, EntityDataTypes1_8.BYTE),
59-
HUMAN_UNUSED(PLAYER, -1, null, 16, EntityDataTypes1_8.BYTE),
60-
HUMAN_ABSORPTION_HEATS(PLAYER, 17, EntityDataTypes1_7_6_10.FLOAT, EntityDataTypes1_8.FLOAT),
61-
HUMAN_SCORE(PLAYER, 18, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
58+
PLAYER_SKIN_FLAGS(PLAYER, 16, EntityDataTypes1_7_6_10.BYTE, 10, EntityDataTypes1_8.BYTE),
59+
PLAYER_UNUSED(PLAYER, -1, null, 16, EntityDataTypes1_8.BYTE),
60+
PLAYER_ABSORPTION_HEATS(PLAYER, 17, EntityDataTypes1_7_6_10.FLOAT, EntityDataTypes1_8.FLOAT),
61+
PLAYER_SCORE(PLAYER, 18, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
6262

6363
HORSE_FLAGS(HORSE, 16, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
6464
HORSE_TYPE(HORSE, 19, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
@@ -68,8 +68,8 @@ public enum EntityDataIndex1_7_6_10 {
6868

6969
BAT_HANGING(BAT, 16, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
7070

71-
TAMEABLE_FLAGS(TAMABLE_ANIMAL, 16, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
72-
TAMEABLE_OWNER(TAMABLE_ANIMAL, 17, EntityDataTypes1_7_6_10.STRING, EntityDataTypes1_8.STRING),
71+
TAMABLE_ANIMAL_FLAGS(TAMABLE_ANIMAL, 16, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
72+
TAMABLE_ANIMAL_OWNER(TAMABLE_ANIMAL, 17, EntityDataTypes1_7_6_10.STRING, EntityDataTypes1_8.STRING),
7373

7474
OCELOT_TYPE(OCELOT, 18, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
7575

@@ -123,31 +123,31 @@ public enum EntityDataIndex1_7_6_10 {
123123
BOAT_FORWARD_DIRECTION(BOAT, 18, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
124124
BOAT_DAMAGE_TAKEN(BOAT, 19, EntityDataTypes1_7_6_10.FLOAT, EntityDataTypes1_8.FLOAT),
125125

126-
MINECART_SHAKING_POWER(ABSTRACT_MINECART, 17, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
127-
MINECART_SHAKING_DIRECTION(ABSTRACT_MINECART, 18, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
128-
MINECART_DAMAGE_TAKEN(ABSTRACT_MINECART, 19, EntityDataTypes1_7_6_10.FLOAT, EntityDataTypes1_8.FLOAT),
129-
MINECART_BLOCK_INSIDE(ABSTRACT_MINECART, 20, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
130-
MINECART_BLOCK_Y(ABSTRACT_MINECART, 21, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
131-
MINECART_SHOW_BLOCK(ABSTRACT_MINECART, 22, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
126+
ABSTRACT_MINECART_SHAKING_POWER(ABSTRACT_MINECART, 17, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
127+
ABSTRACT_MINECART_SHAKING_DIRECTION(ABSTRACT_MINECART, 18, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
128+
ABSTRACT_MINECART_DAMAGE_TAKEN(ABSTRACT_MINECART, 19, EntityDataTypes1_7_6_10.FLOAT, EntityDataTypes1_8.FLOAT),
129+
ABSTRACT_MINECART_BLOCK_INSIDE(ABSTRACT_MINECART, 20, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
130+
ABSTRACT_MINECART_BLOCK_Y(ABSTRACT_MINECART, 21, EntityDataTypes1_7_6_10.INT, EntityDataTypes1_8.INT),
131+
ABSTRACT_MINECART_SHOW_BLOCK(ABSTRACT_MINECART, 22, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
132132

133133
FURNACE_MINECART_IS_POWERED(FURNACE_MINECART, 16, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
134134

135135
ITEM_ITEM(ITEM, 10, EntityDataTypes1_7_6_10.ITEM, EntityDataTypes1_8.ITEM),
136136

137137
ARROW_IS_CRITICAL(ARROW, 16, EntityDataTypes1_7_6_10.BYTE, EntityDataTypes1_8.BYTE),
138138

139-
FIREWORK_INFO(FIREWORK_ROCKET, 8, EntityDataTypes1_7_6_10.ITEM, EntityDataTypes1_8.ITEM),
139+
FIREWORK_ROCKET_INFO(FIREWORK_ROCKET, 8, EntityDataTypes1_7_6_10.ITEM, EntityDataTypes1_8.ITEM),
140140

141141
ITEM_FRAME_ITEM(ITEM_FRAME, 2, EntityDataTypes1_7_6_10.ITEM, 8, EntityDataTypes1_8.ITEM),
142142
ITEM_FRAME_ROTATION(ITEM_FRAME, 3, EntityDataTypes1_7_6_10.BYTE, 9, EntityDataTypes1_8.BYTE),
143143

144-
ENDER_CRYSTAL_HEALTH(END_CRYSTAL, 8, EntityDataTypes1_7_6_10.INT, 9, EntityDataTypes1_8.INT);
144+
END_CRYSTAL_HEALTH(END_CRYSTAL, 8, EntityDataTypes1_7_6_10.INT, 9, EntityDataTypes1_8.INT);
145145

146-
private static final HashMap<Pair<EntityTypes1_8.EntityType, Integer>, EntityDataIndex1_7_6_10> metadataRewrites = new HashMap<>();
146+
private static final HashMap<Pair<EntityTypes1_8.EntityType, Integer>, EntityDataIndex1_7_6_10> ENTITY_DATA_REWRITES = new HashMap<>();
147147

148148
static {
149149
for (EntityDataIndex1_7_6_10 index : EntityDataIndex1_7_6_10.values()) {
150-
metadataRewrites.put(new Pair<>(index.getClazz(), index.getNewIndex()), index);
150+
ENTITY_DATA_REWRITES.put(new Pair<>(index.getClazz(), index.getNewIndex()), index);
151151
}
152152
}
153153

@@ -175,8 +175,8 @@ public enum EntityDataIndex1_7_6_10 {
175175

176176
private static Optional<EntityDataIndex1_7_6_10> getIndex(EntityType type, int index) {
177177
Pair<EntityType, Integer> pair = new Pair<>(type, index);
178-
if (metadataRewrites.containsKey(pair)) {
179-
return Optional.of(metadataRewrites.get(pair));
178+
if (ENTITY_DATA_REWRITES.containsKey(pair)) {
179+
return Optional.of(ENTITY_DATA_REWRITES.get(pair));
180180
}
181181

182182
return Optional.empty();

common/src/main/java/com/viaversion/viarewind/protocol/v1_8to1_7_6_10/data/VirtualHologramEntity.java

Lines changed: 56 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
import java.util.List;
3939

4040
public class VirtualHologramEntity {
41-
private final List<EntityData> metadataTracker = new ArrayList<>();
41+
private final List<EntityData> entityDataTracker = new ArrayList<>();
4242
private double locX, locY, locZ;
4343

4444
private final UserConnection user;
@@ -91,24 +91,24 @@ public void setHeadYaw(float yaw) {
9191
updateLocation(false);
9292
}
9393

94-
public void syncState(final EntityPacketRewriter1_8 entityRewriter, final List<EntityData> metadataList) {
95-
// Merge metadata updates into current tracker
96-
for (EntityData metadata : metadataList) {
97-
metadataTracker.removeIf(m -> m.id() == metadata.id());
98-
metadataTracker.add(metadata);
94+
public void syncState(final EntityPacketRewriter1_8 entityRewriter, final List<EntityData> entityDataList) {
95+
// Merge entity data updates into current tracker
96+
for (EntityData entityData : entityDataList) {
97+
entityDataTracker.removeIf(m -> m.id() == entityData.id());
98+
entityDataTracker.add(entityData);
9999
}
100100

101101
// Filter armor stand data to calculate emulation
102102
byte flags = 0;
103103
byte armorStandFlags = 0;
104-
for (EntityData metadata : metadataTracker) {
105-
if (metadata.id() == 0 && metadata.dataType() == EntityDataTypes1_8.BYTE) {
106-
flags = ((Number) metadata.getValue()).byteValue();
107-
} else if (metadata.id() == 2 && metadata.dataType() == EntityDataTypes1_8.STRING) {
108-
name = metadata.getValue().toString();
104+
for (EntityData entityData : entityDataTracker) {
105+
if (entityData.id() == 0 && entityData.dataType() == EntityDataTypes1_8.BYTE) {
106+
flags = ((Number) entityData.getValue()).byteValue();
107+
} else if (entityData.id() == 2 && entityData.dataType() == EntityDataTypes1_8.STRING) {
108+
name = entityData.getValue().toString();
109109
if (name != null && name.isEmpty()) name = null;
110-
} else if (metadata.id() == 10 && metadata.dataType() == EntityDataTypes1_8.BYTE) {
111-
armorStandFlags = ((Number) metadata.getValue()).byteValue();
110+
} else if (entityData.id() == 10 && entityData.dataType() == EntityDataTypes1_8.BYTE) {
111+
armorStandFlags = ((Number) entityData.getValue()).byteValue();
112112
}
113113
}
114114
final boolean invisible = (flags & 0x20) != 0;
@@ -126,7 +126,7 @@ public void syncState(final EntityPacketRewriter1_8 entityRewriter, final List<E
126126
deleteEntity();
127127
sendSpawnPacket(entityRewriter);
128128
} else {
129-
sendMetadataUpdate(entityRewriter);
129+
sendEntityDataUpdate(entityRewriter);
130130
updateLocation(false);
131131
}
132132
}
@@ -182,83 +182,83 @@ protected void teleportEntity(final int entityId, final double x, final double y
182182
}
183183

184184
protected void spawnEntity(final int entityId, final int type, final double locX, final double locY, final double locZ) {
185-
final PacketWrapper spawnMob = PacketWrapper.create(ClientboundPackets1_7_2_5.ADD_MOB, null, user);
186-
187-
spawnMob.write(Types.VAR_INT, entityId); // entity id
188-
spawnMob.write(Types.UNSIGNED_BYTE, (short) type); // type
189-
spawnMob.write(Types.INT, (int) (locX * 32.0)); // x
190-
spawnMob.write(Types.INT, (int) (locY * 32.0)); // y
191-
spawnMob.write(Types.INT, (int) (locZ * 32.0)); // z
192-
spawnMob.write(Types.BYTE, (byte) 0); // yaw
193-
spawnMob.write(Types.BYTE, (byte) 0); // pitch
194-
spawnMob.write(Types.BYTE, (byte) 0); // head pitch
195-
spawnMob.write(Types.SHORT, (short) 0); // velocity x
196-
spawnMob.write(Types.SHORT, (short) 0); // velocity y
197-
spawnMob.write(Types.SHORT, (short) 0); // velocity z
198-
spawnMob.write(Types1_7_6_10.ENTITY_DATA_LIST, new ArrayList<>()); // metadata
199-
200-
spawnMob.send(Protocol1_8To1_7_6_10.class);
185+
final PacketWrapper addMob = PacketWrapper.create(ClientboundPackets1_7_2_5.ADD_MOB, user);
186+
187+
addMob.write(Types.VAR_INT, entityId); // Entity id
188+
addMob.write(Types.UNSIGNED_BYTE, (short) type); // Entity type
189+
addMob.write(Types.INT, (int) (locX * 32.0)); // X
190+
addMob.write(Types.INT, (int) (locY * 32.0)); // Y
191+
addMob.write(Types.INT, (int) (locZ * 32.0)); // Z
192+
addMob.write(Types.BYTE, (byte) 0); // Yaw
193+
addMob.write(Types.BYTE, (byte) 0); // Pitch
194+
addMob.write(Types.BYTE, (byte) 0); // Head pitch
195+
addMob.write(Types.SHORT, (short) 0); // Velocity x
196+
addMob.write(Types.SHORT, (short) 0); // Velocity y
197+
addMob.write(Types.SHORT, (short) 0); // Velocity z
198+
addMob.write(Types1_7_6_10.ENTITY_DATA_LIST, new ArrayList<>()); // Entity data
199+
200+
addMob.send(Protocol1_8To1_7_6_10.class);
201201
}
202202

203-
public void sendMetadataUpdate(final EntityPacketRewriter1_8 entityRewriter) {
203+
public void sendEntityDataUpdate(final EntityPacketRewriter1_8 entityRewriter) {
204204
if (entityIds == null) {
205205
return;
206206
}
207-
final PacketWrapper metadataPacket = PacketWrapper.create(ClientboundPackets1_7_2_5.SET_ENTITY_DATA, user);
207+
final PacketWrapper setEntityData = PacketWrapper.create(ClientboundPackets1_7_2_5.SET_ENTITY_DATA, user);
208208

209209
if (currentState == State.ZOMBIE) {
210-
writeZombieMeta(entityRewriter, metadataPacket);
210+
writeZombieMeta(entityRewriter, setEntityData);
211211
} else if (currentState == State.HOLOGRAM) {
212-
writeHologramMeta(metadataPacket);
212+
writeHologramMeta(setEntityData);
213213
} else {
214214
return;
215215
}
216-
metadataPacket.send(Protocol1_8To1_7_6_10.class);
216+
setEntityData.send(Protocol1_8To1_7_6_10.class);
217217
}
218218

219219
private void writeZombieMeta(final EntityPacketRewriter1_8 entityRewriter, PacketWrapper wrapper) {
220220
wrapper.write(Types.INT, entityIds[0]);
221221

222-
// Filter metadata sent by the server and convert them together with our custom metadata
223-
final List<EntityData> metadataList = new ArrayList<>();
224-
for (EntityData metadata : metadataTracker) {
225-
// Remove non existent metadata
226-
if (metadata.id() < 0 || metadata.id() > 9) {
222+
// Filter entity data sent by the server and convert them together with our custom entity data
223+
final List<EntityData> entityDataList = new ArrayList<>();
224+
for (EntityData entityData : entityDataTracker) {
225+
// Remove non existent entityData
226+
if (entityData.id() < 0 || entityData.id() > 9) {
227227
continue;
228228
}
229-
metadataList.add(new EntityData(metadata.id(), metadata.dataType(), metadata.getValue()));
229+
entityDataList.add(new EntityData(entityData.id(), entityData.dataType(), entityData.getValue()));
230230
}
231231
if (small) {
232-
metadataList.add(new EntityData(12, EntityDataTypes1_8.BYTE, (byte) 1));
232+
entityDataList.add(new EntityData(12, EntityDataTypes1_8.BYTE, (byte) 1));
233233
}
234234

235-
// Push metadata from the server through metadata conversion 1.7->1.8
236-
for (EntityData metadata : metadataList.toArray(new EntityData[0])) {
237-
final EntityDataHandlerEvent event = new EntityDataHandlerEventImpl(wrapper.user(), new TrackedEntityImpl(EntityTypes1_8.EntityType.ZOMBIE), -1, metadata, metadataList);
235+
// Push entity data from the server through entity data conversion 1.7->1.8
236+
for (EntityData entityData : entityDataList.toArray(new EntityData[0])) {
237+
final EntityDataHandlerEvent event = new EntityDataHandlerEventImpl(wrapper.user(), new TrackedEntityImpl(EntityTypes1_8.EntityType.ZOMBIE), -1, entityData, entityDataList);
238238
try {
239-
entityRewriter.handleMetadata(event, metadata);
239+
entityRewriter.handleEntityData(event, entityData);
240240
} catch (Exception e) {
241-
metadataList.remove(metadata);
241+
entityDataList.remove(entityData);
242242
break;
243243
}
244244
if (event.cancelled()) {
245-
metadataList.remove(metadata);
245+
entityDataList.remove(entityData);
246246
break;
247247
}
248248
}
249-
wrapper.write(Types1_7_6_10.ENTITY_DATA_LIST, metadataList);
249+
wrapper.write(Types1_7_6_10.ENTITY_DATA_LIST, entityDataList);
250250
}
251251

252252
private void writeHologramMeta(PacketWrapper wrapper) {
253253
wrapper.write(Types.INT, entityIds[1]);
254254

255-
// Directly write 1.7 metadata here since we are making them up
256-
final List<EntityData> metadataList = new ArrayList<>();
257-
metadataList.add(new EntityData(EntityDataIndex1_7_6_10.ENTITY_AGEABLE_AGE.getIndex(), EntityDataTypes1_7_6_10.INT, -1700000));
258-
metadataList.add(new EntityData(EntityDataIndex1_7_6_10.ENTITY_LIVING_NAME_TAG.getIndex(), EntityDataTypes1_7_6_10.STRING, name));
259-
metadataList.add(new EntityData(EntityDataIndex1_7_6_10.ENTITY_LIVING_NAME_TAG_VISIBILITY.getIndex(), EntityDataTypes1_7_6_10.BYTE, (byte) 1));
255+
// Directly write 1.7 entity data here since we are making them up
256+
final List<EntityData> entityDataList = new ArrayList<>();
257+
entityDataList.add(new EntityData(EntityDataIndex1_7_6_10.ABSTRACT_AGEABLE_AGE.getIndex(), EntityDataTypes1_7_6_10.INT, -1700000));
258+
entityDataList.add(new EntityData(EntityDataIndex1_7_6_10.LIVING_ENTITY_BASE_NAME_TAG.getIndex(), EntityDataTypes1_7_6_10.STRING, name));
259+
entityDataList.add(new EntityData(EntityDataIndex1_7_6_10.LIVING_ENTITY_BASE_NAME_TAG_VISIBILITY.getIndex(), EntityDataTypes1_7_6_10.BYTE, (byte) 1));
260260

261-
wrapper.write(Types1_7_6_10.ENTITY_DATA_LIST, metadataList);
261+
wrapper.write(Types1_7_6_10.ENTITY_DATA_LIST, entityDataList);
262262
}
263263

264264
public void sendSpawnPacket(final EntityPacketRewriter1_8 entityRewriter) {
@@ -288,7 +288,7 @@ public void sendSpawnPacket(final EntityPacketRewriter1_8 entityRewriter) {
288288
this.entityIds = entityIds;
289289
}
290290

291-
sendMetadataUpdate(entityRewriter);
291+
sendEntityDataUpdate(entityRewriter);
292292
updateLocation(true);
293293
}
294294

common/src/main/java/com/viaversion/viarewind/protocol/v1_8to1_7_6_10/provider/TitleRenderProvider.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import java.util.UUID;
2525
import java.util.concurrent.atomic.AtomicInteger;
2626

27+
// TODO I believe this should be a storage?
2728
public abstract class TitleRenderProvider implements Provider {
2829
protected Map<UUID, Integer> fadeIn = new HashMap<>();
2930
protected Map<UUID, Integer> stay = new HashMap<>();

common/src/main/java/com/viaversion/viarewind/protocol/v1_8to1_7_6_10/provider/compression/CompressionDecoder.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import java.util.List;
2828
import java.util.zip.Inflater;
2929

30-
// https://github.com/Gerrygames/ClientViaVersion/blob/master/src/main/java/de/gerrygames/the5zig/clientviaversion/netty/CompressionDecoder.java
3130
public class CompressionDecoder extends MessageToMessageDecoder<ByteBuf> {
3231
private final Inflater inflater = new Inflater();
3332

common/src/main/java/com/viaversion/viarewind/protocol/v1_8to1_7_6_10/provider/compression/CompressionEncoder.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525

2626
import java.util.zip.Deflater;
2727

28-
// https://github.com/Gerrygames/ClientViaVersion/blob/master/src/main/java/de/gerrygames/the5zig/clientviaversion/netty/CompressionEncoder.java
2928
public class CompressionEncoder extends MessageToByteEncoder<ByteBuf> {
3029
private final Deflater deflater = new Deflater();
3130

0 commit comments

Comments
 (0)