|
17 | 17 | import net.minecraft.server.level.ServerLevel;
|
18 | 18 | import net.minecraft.server.level.ServerPlayer;
|
19 | 19 | import net.minecraft.server.network.CommonListenerCookie;
|
20 |
| -import net.minecraft.server.network.ServerGamePacketListenerImpl; |
21 | 20 | import net.minecraft.world.entity.boss.EnderDragonPart;
|
22 | 21 | import org.bukkit.Bukkit;
|
23 | 22 | import org.bukkit.GameRule;
|
|
47 | 46 | import org.bukkit.plugin.Plugin;
|
48 | 47 | import org.jetbrains.annotations.NotNull;
|
49 | 48 |
|
| 49 | +import java.io.IOException; |
50 | 50 | import java.util.Collections;
|
51 | 51 | import java.util.List;
|
52 | 52 | import java.util.Objects;
|
@@ -160,13 +160,18 @@ private ServerPlayer getFakePlayer(final String name) {
|
160 | 160 | final UUID uuid = UUID.randomUUID();
|
161 | 161 | final ServerPlayer fakePlayer = new ServerPlayer(minecraftServer, worldServer, new GameProfile(uuid, name), ClientInformation.createDefault());
|
162 | 162 |
|
163 |
| - final Connection connection = new Connection(PacketFlow.CLIENTBOUND); |
164 |
| - final CommonListenerCookie cookie = CommonListenerCookie.createInitial(fakePlayer.getGameProfile()); |
165 |
| - fakePlayer.connection = new ServerGamePacketListenerImpl(minecraftServer, connection, fakePlayer, cookie); |
166 |
| - fakePlayer.getBukkitEntity().setMetadata("NPC", new FixedMetadataValue(this.plugin, "UUID")); |
167 |
| - fakePlayer.forceSetPositionRotation(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch()); |
168 |
| - worldServer.addDuringPortalTeleport(fakePlayer); |
169 |
| - Bukkit.getOnlinePlayers().forEach(player1 -> player1.hidePlayer(fakePlayer.getBukkitEntity())); |
| 163 | + try { |
| 164 | + final Connection connection = new EmptyConnection_1_20_R3(PacketFlow.SERVERBOUND); |
| 165 | + final CommonListenerCookie cookie = CommonListenerCookie.createInitial(fakePlayer.getGameProfile()); |
| 166 | + fakePlayer.connection = new EmptyPacketListener_1_20_R3(minecraftServer, connection, fakePlayer, cookie); |
| 167 | + fakePlayer.getBukkitEntity().setMetadata("NPC", new FixedMetadataValue(this.plugin, "UUID")); |
| 168 | + fakePlayer.forceSetPositionRotation(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch()); |
| 169 | + worldServer.addDuringPortalTeleport(fakePlayer); |
| 170 | + Bukkit.getOnlinePlayers().forEach(player1 -> player1.hidePlayer(fakePlayer.getBukkitEntity())); |
| 171 | + } catch (IOException e) { |
| 172 | + e.printStackTrace(); |
| 173 | + } |
| 174 | + |
170 | 175 | return fakePlayer;
|
171 | 176 | }
|
172 | 177 |
|
|
0 commit comments