diff --git a/MinecraftClient/ChatBots/AutoAttack.cs b/MinecraftClient/ChatBots/AutoAttack.cs index 9225e370..4b203497 100644 --- a/MinecraftClient/ChatBots/AutoAttack.cs +++ b/MinecraftClient/ChatBots/AutoAttack.cs @@ -100,7 +100,7 @@ namespace MinecraftClient.ChatBots private Double attackSpeed = 4; private Double attackCooldownSeconds; private readonly bool overrideAttackSpeed = false; - private readonly int attackRange = 4; + private readonly double attackRange = 4.0; private Double serverTPS; private float health = 100; private readonly bool attackHostile = true; diff --git a/MinecraftClient/McClient.cs b/MinecraftClient/McClient.cs index d4c8a739..afd78df0 100644 --- a/MinecraftClient/McClient.cs +++ b/MinecraftClient/McClient.cs @@ -2415,7 +2415,7 @@ namespace MinecraftClient /// /// Called when a server was successfully joined /// - public void OnGameJoined() + public void OnGameJoined(bool isOnlineMode) { string? bandString = Config.Main.Advanced.BrandInfo.ToBrandString(); if (!String.IsNullOrWhiteSpace(bandString)) @@ -2432,7 +2432,7 @@ namespace MinecraftClient (byte)Config.MCSettings.MainHand); if (protocolversion >= Protocol18Handler.MC_1_19_3_Version - && playerKeyPair != null) + && playerKeyPair != null && isOnlineMode) handler.SendPlayerSession(playerKeyPair); if (protocolversion < Protocol18Handler.MC_1_19_3_Version) diff --git a/MinecraftClient/Protocol/Handlers/Protocol18.cs b/MinecraftClient/Protocol/Handlers/Protocol18.cs index 39f0ed18..022aa14b 100644 --- a/MinecraftClient/Protocol/Handlers/Protocol18.cs +++ b/MinecraftClient/Protocol/Handlers/Protocol18.cs @@ -367,7 +367,7 @@ namespace MinecraftClient.Protocol.Handlers SendPacket(PacketTypesOut.Pong, packetData); break; case PacketTypesIn.JoinGame: - handler.OnGameJoined(); + handler.OnGameJoined(isOnlineMode); int playerEntityID = dataTypes.ReadNextInt(packetData); handler.OnReceivePlayerEntityID(playerEntityID); @@ -3383,7 +3383,7 @@ namespace MinecraftClient.Protocol.Handlers public bool SendPlayerSession(PlayerKeyPair? playerKeyPair) { - if (playerKeyPair == null) + if (playerKeyPair == null || !isOnlineMode) return false; if (protocolVersion >= MC_1_19_3_Version) diff --git a/MinecraftClient/Protocol/IMinecraftComHandler.cs b/MinecraftClient/Protocol/IMinecraftComHandler.cs index 1adc9d65..549d070d 100644 --- a/MinecraftClient/Protocol/IMinecraftComHandler.cs +++ b/MinecraftClient/Protocol/IMinecraftComHandler.cs @@ -80,7 +80,7 @@ namespace MinecraftClient.Protocol /// /// Called when a server was successfully joined /// - void OnGameJoined(); + void OnGameJoined(bool isOnlineMode); /// /// Received chat/system message from the server diff --git a/MinecraftClient/Protocol/ProfileKey/PublicKey.cs b/MinecraftClient/Protocol/ProfileKey/PublicKey.cs index 4fd1c176..2208e04e 100644 --- a/MinecraftClient/Protocol/ProfileKey/PublicKey.cs +++ b/MinecraftClient/Protocol/ProfileKey/PublicKey.cs @@ -24,6 +24,12 @@ namespace MinecraftClient.Protocol.ProfileKey if (!string.IsNullOrEmpty(sigV2)) SignatureV2 = Convert.FromBase64String(sigV2!); + + if (SignatureV2 == null || SignatureV2.Length == 0) + SignatureV2 = Signature; + + if (Signature == null || Signature.Length == 0) + Signature = SignatureV2; } public PublicKey(byte[] key, byte[] signature)