mirror of
https://github.com/MCCTeam/Minecraft-Console-Client
synced 2025-10-14 21:22:49 +00:00
1.19.3 PlayerRemove & Explosion packet
This commit is contained in:
parent
052060b23c
commit
e0294f1beb
2 changed files with 1587 additions and 1575 deletions
|
|
@ -329,8 +329,10 @@ namespace MinecraftClient.Protocol.Handlers
|
||||||
/// <returns>TRUE if the packet was processed, FALSE if ignored or unknown</returns>
|
/// <returns>TRUE if the packet was processed, FALSE if ignored or unknown</returns>
|
||||||
internal bool HandlePacket(int packetID, Queue<byte> packetData)
|
internal bool HandlePacket(int packetID, Queue<byte> packetData)
|
||||||
{
|
{
|
||||||
|
#if Release
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
if (login_phase)
|
if (login_phase)
|
||||||
{
|
{
|
||||||
switch (packetID) //Packet IDs are different while logging in
|
switch (packetID) //Packet IDs are different while logging in
|
||||||
|
|
@ -1237,11 +1239,9 @@ namespace MinecraftClient.Protocol.Handlers
|
||||||
if (hasIcon)
|
if (hasIcon)
|
||||||
iconBase64 = dataTypes.ReadNextString(packetData);
|
iconBase64 = dataTypes.ReadNextString(packetData);
|
||||||
|
|
||||||
|
|
||||||
bool previewsChat = false;
|
bool previewsChat = false;
|
||||||
|
|
||||||
if (protocolVersion < MC_1_19_3_Version)
|
if (protocolVersion < MC_1_19_3_Version)
|
||||||
dataTypes.ReadNextBool(packetData);
|
previewsChat = dataTypes.ReadNextBool(packetData);
|
||||||
|
|
||||||
handler.OnServerDataRecived(hasMotd, motd, hasIcon, iconBase64, previewsChat);
|
handler.OnServerDataRecived(hasMotd, motd, hasIcon, iconBase64, previewsChat);
|
||||||
break;
|
break;
|
||||||
|
|
@ -1507,6 +1507,14 @@ namespace MinecraftClient.Protocol.Handlers
|
||||||
else handler.OnPlayerLeave(FakeUUID);
|
else handler.OnPlayerLeave(FakeUUID);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case PacketTypesIn.PlayerRemove:
|
||||||
|
int numberOfLeavePlayers = dataTypes.ReadNextVarInt(packetData);
|
||||||
|
for (int i = 0; i < numberOfLeavePlayers; ++i)
|
||||||
|
{
|
||||||
|
Guid playerUuid = dataTypes.ReadNextUUID(packetData);
|
||||||
|
handler.OnPlayerLeave(playerUuid);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case PacketTypesIn.TabComplete:
|
case PacketTypesIn.TabComplete:
|
||||||
if (protocolVersion >= MC_1_13_Version)
|
if (protocolVersion >= MC_1_13_Version)
|
||||||
{
|
{
|
||||||
|
|
@ -1903,7 +1911,11 @@ namespace MinecraftClient.Protocol.Handlers
|
||||||
handler.OnSetExperience(experiencebar, level, totalexperience);
|
handler.OnSetExperience(experiencebar, level, totalexperience);
|
||||||
break;
|
break;
|
||||||
case PacketTypesIn.Explosion:
|
case PacketTypesIn.Explosion:
|
||||||
Location explosionLocation = new(dataTypes.ReadNextFloat(packetData), dataTypes.ReadNextFloat(packetData), dataTypes.ReadNextFloat(packetData));
|
Location explosionLocation;
|
||||||
|
if (protocolVersion >= MC_1_19_3_Version)
|
||||||
|
explosionLocation = new(dataTypes.ReadNextDouble(packetData), dataTypes.ReadNextDouble(packetData), dataTypes.ReadNextDouble(packetData));
|
||||||
|
else
|
||||||
|
explosionLocation = new(dataTypes.ReadNextFloat(packetData), dataTypes.ReadNextFloat(packetData), dataTypes.ReadNextFloat(packetData));
|
||||||
|
|
||||||
float explosionStrength = dataTypes.ReadNextFloat(packetData);
|
float explosionStrength = dataTypes.ReadNextFloat(packetData);
|
||||||
int explosionBlockCount = protocolVersion >= MC_1_17_Version
|
int explosionBlockCount = protocolVersion >= MC_1_17_Version
|
||||||
|
|
@ -1972,6 +1984,7 @@ namespace MinecraftClient.Protocol.Handlers
|
||||||
return false; //Ignored packet
|
return false; //Ignored packet
|
||||||
}
|
}
|
||||||
return true; //Packet processed
|
return true; //Packet processed
|
||||||
|
#if Release
|
||||||
}
|
}
|
||||||
catch (Exception innerException)
|
catch (Exception innerException)
|
||||||
{
|
{
|
||||||
|
|
@ -1986,6 +1999,7 @@ namespace MinecraftClient.Protocol.Handlers
|
||||||
innerException.GetType()),
|
innerException.GetType()),
|
||||||
innerException);
|
innerException);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -264,9 +264,7 @@ namespace MinecraftClient.Protocol.Handlers
|
||||||
|
|
||||||
int[] palette = new int[paletteLength];
|
int[] palette = new int[paletteLength];
|
||||||
for (int i = 0; i < paletteLength; i++)
|
for (int i = 0; i < paletteLength; i++)
|
||||||
{
|
|
||||||
palette[i] = dataTypes.ReadNextVarInt(cache);
|
palette[i] = dataTypes.ReadNextVarInt(cache);
|
||||||
}
|
|
||||||
|
|
||||||
// Bit mask covering bitsPerBlock bits
|
// Bit mask covering bitsPerBlock bits
|
||||||
// EG, if bitsPerBlock = 5, valueMask = 00011111 in binary
|
// EG, if bitsPerBlock = 5, valueMask = 00011111 in binary
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue