chore: fixes for latest MCProtocolLib

This commit is contained in:
amyavi
2025-01-18 11:21:19 -03:00
parent 90fe3d1145
commit fc9b993c49
3 changed files with 11 additions and 15 deletions

View File

@@ -6,10 +6,11 @@ import me.chayapak1.chomens_bot.util.RandomStringUtilities;
import net.kyori.adventure.key.Key;
import org.geysermc.mcprotocollib.auth.GameProfile;
import org.geysermc.mcprotocollib.network.BuiltinFlags;
import org.geysermc.mcprotocollib.network.ClientSession;
import org.geysermc.mcprotocollib.network.Session;
import org.geysermc.mcprotocollib.network.event.session.*;
import org.geysermc.mcprotocollib.network.factory.ClientNetworkSessionFactory;
import org.geysermc.mcprotocollib.network.packet.Packet;
import org.geysermc.mcprotocollib.network.tcp.TcpClientSession;
import org.geysermc.mcprotocollib.protocol.MinecraftProtocol;
import org.geysermc.mcprotocollib.protocol.data.game.entity.player.HandPreference;
import org.geysermc.mcprotocollib.protocol.data.game.setting.ChatVisibility;
@@ -42,7 +43,7 @@ public class Bot {
public GameProfile profile;
public Session session;
public ClientSession session;
public boolean printDisconnectedCause = false;
@@ -167,7 +168,10 @@ public class Bot {
if (_username == null) username = RandomStringUtilities.generate(8);
else username = _username;
Session session = new TcpClientSession(host, port, new MinecraftProtocol(username), null);
final ClientSession session = ClientNetworkSessionFactory.factory()
.setAddress(host, port)
.setProtocol(new MinecraftProtocol(username))
.create();
this.session = session;

View File

@@ -69,17 +69,11 @@ public class VoiceChatPlugin extends Bot.Listener {
if (_packet.getChannel().equals(Key.key("voicechat:secret"))) { // fard
final byte[] bytes = _packet.getData();
final FriendlyByteBuf buf = new FriendlyByteBuf(Unpooled.wrappedBuffer(bytes));
final SecretPacket secretPacket = new SecretPacket().fromBytes(buf);
initializationData = new InitializationData(secretPacket);
initializationData = new InitializationData(bot.session.getHost(), secretPacket);
try {
final InetAddress address = InetAddress.getByName(bot.session.getHost());
socketAddress = new InetSocketAddress(address, initializationData.serverPort);
} catch (UnknownHostException e) {
throw new RuntimeException(e);
}
final InetSocketAddress mcAddress = (InetSocketAddress) bot.session.getRemoteAddress();
socketAddress = new InetSocketAddress(mcAddress.getAddress(), initializationData.serverPort);
socket = new ClientVoiceChatSocket();
try {

View File

@@ -6,7 +6,6 @@ import me.chayapak1.chomens_bot.voiceChat.customPayload.SecretPacket;
import java.util.UUID;
public class InitializationData {
public final String serverIP;
public final int serverPort;
public final UUID playerUUID;
public final UUID secret;
@@ -17,8 +16,7 @@ public class InitializationData {
public final boolean groupsEnabled;
public final boolean allowRecording;
public InitializationData(String serverIP, SecretPacket secretPacket) {
this.serverIP = serverIP;
public InitializationData(SecretPacket secretPacket) {
this.serverPort = secretPacket.serverPort;
this.playerUUID = secretPacket.playerUUID;
this.secret = secretPacket.secret;