Skip to content

Commit 51f001a

Browse files
Don't use -1 as indicator in EntityTracker1_9#getVehicle
1 parent e27caba commit 51f001a

File tree

3 files changed

+14
-8
lines changed

3 files changed

+14
-8
lines changed

common/src/main/java/com/viaversion/viarewind/protocol/v1_9to1_8/rewriter/EntityPacketRewriter1_9.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -324,11 +324,12 @@ public void register() {
324324
public void register() {
325325
handler(wrapper -> {
326326
final EntityTracker1_9 tracker = wrapper.user().getEntityTracker(Protocol1_9To1_8.class);
327-
final int vehicle = tracker.getVehicle(tracker.clientEntityId());
328-
if (vehicle == -1) {
327+
final Integer vehicle = tracker.getVehicle(tracker.clientEntityId());
328+
if (vehicle == null) {
329329
wrapper.cancel();
330-
}
331-
wrapper.write(Types.VAR_INT, vehicle);
330+
} else {
331+
wrapper.write(Types.VAR_INT, vehicle);
332+
}
332333
});
333334
map(Types.DOUBLE, Protocol1_9To1_8.DOUBLE_TO_INT_TIMES_32); // X
334335
map(Types.DOUBLE, Protocol1_9To1_8.DOUBLE_TO_INT_TIMES_32); // Y
@@ -339,6 +340,7 @@ public void register() {
339340
if (wrapper.isCancelled()) {
340341
return;
341342
}
343+
342344
final PlayerPositionTracker storage = wrapper.user().get(PlayerPositionTracker.class);
343345
double x = wrapper.get(Types.INT, 0) / 32d;
344346
double y = wrapper.get(Types.INT, 1) / 32d;
@@ -347,6 +349,10 @@ public void register() {
347349
});
348350
create(Types.BOOLEAN, true);
349351
handler(wrapper -> {
352+
if (wrapper.isCancelled()) {
353+
return;
354+
}
355+
350356
final int entityId = wrapper.get(Types.VAR_INT, 0);
351357
final EntityType type = wrapper.user().getEntityTracker(Protocol1_9To1_8.class).entityType(entityId);
352358
if (type == EntityTypes1_9.EntityType.BOAT) {

common/src/main/java/com/viaversion/viarewind/protocol/v1_9to1_8/rewriter/PlayerPacketRewriter1_9.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -421,9 +421,9 @@ public void register() {
421421
final float forward = wrapper.passthrough(Types.FLOAT);
422422

423423
final EntityTracker1_9 tracker = wrapper.user().getEntityTracker(Protocol1_9To1_8.class);
424-
final int vehicle = tracker.getVehicle(tracker.clientEntityId());
424+
final Integer vehicle = tracker.getVehicle(tracker.clientEntityId());
425425

426-
if (vehicle != -1 && tracker.entityType(vehicle) == EntityTypes1_9.EntityType.BOAT) {
426+
if (vehicle != null && tracker.entityType(vehicle) == EntityTypes1_9.EntityType.BOAT) {
427427
final PacketWrapper paddleBoat = PacketWrapper.create(ServerboundPackets1_9.PADDLE_BOAT, wrapper.user());
428428
paddleBoat.write(Types.BOOLEAN, forward != 0.0f || sideways < 0.0f);
429429
paddleBoat.write(Types.BOOLEAN, forward != 0.0f || sideways > 0.0f);

common/src/main/java/com/viaversion/viarewind/protocol/v1_9to1_8/storage/EntityTracker1_9.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,11 +74,11 @@ public boolean isInsideVehicle(final int id) {
7474
return false;
7575
}
7676

77-
public int getVehicle(final int passenger) {
77+
public Integer getVehicle(final int passenger) {
7878
for (Map.Entry<Integer, IntList> vehicle : vehicles.int2ObjectEntrySet()) {
7979
if (vehicle.getValue().contains(passenger)) return vehicle.getKey();
8080
}
81-
return -1;
81+
return null;
8282
}
8383

8484
public Int2IntMap getStatus() {

0 commit comments

Comments
 (0)