Fix Explosion packet ID swap in 1.8 vs 1.9 (#1037)

This commit is contained in:
ORelio 2020-05-30 11:35:39 +02:00
parent 20fb2323a4
commit 85f5117833
2 changed files with 7 additions and 6 deletions

View file

@ -724,10 +724,11 @@ namespace MinecraftClient.Protocol.Handlers
handler.OnSetExperience(experiencebar, level, totalexperience);
break;
case PacketIncomingType.Explosion:
Location explodelocation = new Location(dataTypes.ReadNextFloat(packetData), dataTypes.ReadNextFloat(packetData), dataTypes.ReadNextFloat(packetData));
float Explosionstrength = dataTypes.ReadNextFloat(packetData);
int ExplosionRecordCount = dataTypes.ReadNextInt(packetData);
handler.OnExplosion(explodelocation, Explosionstrength, ExplosionRecordCount);
Location explosionLocation = new Location(dataTypes.ReadNextFloat(packetData), dataTypes.ReadNextFloat(packetData), dataTypes.ReadNextFloat(packetData));
float explosionStrength = dataTypes.ReadNextFloat(packetData);
int explosionBlockCount = dataTypes.ReadNextInt(packetData);
// Ignoring additional fields (records, pushback)
handler.OnExplosion(explosionLocation, explosionStrength, explosionBlockCount);
break;
case PacketIncomingType.HeldItemChange:
byte slot = dataTypes.ReadNextByte(packetData);

View file

@ -61,7 +61,7 @@ namespace MinecraftClient.Protocol.Handlers
case 0x06: return PacketIncomingType.UpdateHealth;
case 0x1F: return PacketIncomingType.SetExperience;
case 0x09: return PacketIncomingType.HeldItemChange;
case 0x1C: return PacketIncomingType.Explosion;
case 0x27: return PacketIncomingType.Explosion;
}
}
else if (protocol <= Protocol18Handler.MC1112Version) // MC 1.9, 1.10 and 1.11
@ -101,7 +101,7 @@ namespace MinecraftClient.Protocol.Handlers
case 0x3E: return PacketIncomingType.UpdateHealth;
case 0x3D: return PacketIncomingType.SetExperience;
case 0x37: return PacketIncomingType.HeldItemChange;
case 0x27: return PacketIncomingType.Explosion;
case 0x1C: return PacketIncomingType.Explosion;
}
}
else if (protocol <= Protocol18Handler.MC112Version) // MC 1.12.0