mirror of
https://github.com/ViaVersion/ViaVersion.git
synced 2024-12-25 01:47:39 +01:00
parent
204a81b0ea
commit
206368b777
@ -53,39 +53,38 @@ public class EntityPackets {
|
|||||||
int entityId = wrapper.get(Type.VAR_INT, 0);
|
int entityId = wrapper.get(Type.VAR_INT, 0);
|
||||||
byte type = wrapper.get(Type.BYTE, 0);
|
byte type = wrapper.get(Type.BYTE, 0);
|
||||||
Entity1_13Types.EntityType entType = Entity1_13Types.getTypeFromId(type, true);
|
Entity1_13Types.EntityType entType = Entity1_13Types.getTypeFromId(type, true);
|
||||||
|
if (entType == null) return;
|
||||||
|
|
||||||
if (entType != null) {
|
// Register Type ID
|
||||||
if (entType.is(Entity1_13Types.EntityType.FALLING_BLOCK)) {
|
wrapper.user().getEntityTracker(Protocol1_13To1_12_2.class).addEntity(entityId, entType);
|
||||||
int oldId = wrapper.get(Type.INT, 0);
|
|
||||||
int combined = (((oldId & 4095) << 4) | (oldId >> 12 & 15));
|
if (entType.is(Entity1_13Types.EntityType.FALLING_BLOCK)) {
|
||||||
wrapper.set(Type.INT, 0, WorldPackets.toNewId(combined));
|
int oldId = wrapper.get(Type.INT, 0);
|
||||||
|
int combined = (((oldId & 4095) << 4) | (oldId >> 12 & 15));
|
||||||
|
wrapper.set(Type.INT, 0, WorldPackets.toNewId(combined));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fix ItemFrame hitbox
|
||||||
|
if (entType.is(Entity1_13Types.EntityType.ITEM_FRAME)) {
|
||||||
|
int data = wrapper.get(Type.INT, 0);
|
||||||
|
|
||||||
|
switch (data) {
|
||||||
|
// South
|
||||||
|
case 0:
|
||||||
|
data = 3;
|
||||||
|
break;
|
||||||
|
// West
|
||||||
|
case 1:
|
||||||
|
data = 4;
|
||||||
|
break;
|
||||||
|
// North is the same
|
||||||
|
// East
|
||||||
|
case 3:
|
||||||
|
data = 5;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fix ItemFrame hitbox
|
wrapper.set(Type.INT, 0, data);
|
||||||
if (entType.is(Entity1_13Types.EntityType.ITEM_FRAME)) {
|
|
||||||
int data = wrapper.get(Type.INT, 0);
|
|
||||||
|
|
||||||
switch (data) {
|
|
||||||
// South
|
|
||||||
case 0:
|
|
||||||
data = 3;
|
|
||||||
break;
|
|
||||||
// West
|
|
||||||
case 1:
|
|
||||||
data = 4;
|
|
||||||
break;
|
|
||||||
// North is the same
|
|
||||||
// East
|
|
||||||
case 3:
|
|
||||||
data = 5;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
wrapper.set(Type.INT, 0, data);
|
|
||||||
|
|
||||||
// Register Type ID
|
|
||||||
wrapper.user().getEntityTracker(Protocol1_13To1_12_2.class).addEntity(entityId, entType);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user