fix support for 1.19.1 & 1.19.2
This commit is contained in:
parent
7924fbae62
commit
ec9ee770a4
2 changed files with 9 additions and 1 deletions
|
@ -20,7 +20,7 @@ public class ListCommand implements CommandHandler {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run(CommandContext context) throws CommandExecutionException {
|
public void run(CommandContext context) throws CommandExecutionException {
|
||||||
TextComponent.Builder component = Component.text("Npc's:\n").color(NamedTextColor.GOLD).toBuilder();
|
TextComponent.Builder component = Component.text("Npc List:\n").color(NamedTextColor.GOLD).toBuilder();
|
||||||
for (String id : npcRegistry.getModifiableIds()) {
|
for (String id : npcRegistry.getModifiableIds()) {
|
||||||
NpcImpl npc = npcRegistry.get(id).getNpc();
|
NpcImpl npc = npcRegistry.get(id).getNpc();
|
||||||
NpcLocation location = npc.getLocation();
|
NpcLocation location = npc.getLocation();
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package lol.pyr.znpcsplus.packets;
|
package lol.pyr.znpcsplus.packets;
|
||||||
|
|
||||||
import com.github.retrooper.packetevents.PacketEventsAPI;
|
import com.github.retrooper.packetevents.PacketEventsAPI;
|
||||||
|
import com.github.retrooper.packetevents.manager.server.ServerVersion;
|
||||||
import com.github.retrooper.packetevents.protocol.entity.type.EntityTypes;
|
import com.github.retrooper.packetevents.protocol.entity.type.EntityTypes;
|
||||||
import com.github.retrooper.packetevents.protocol.player.GameMode;
|
import com.github.retrooper.packetevents.protocol.player.GameMode;
|
||||||
import com.github.retrooper.packetevents.protocol.player.UserProfile;
|
import com.github.retrooper.packetevents.protocol.player.UserProfile;
|
||||||
|
@ -19,12 +20,15 @@ import java.util.EnumSet;
|
||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
|
||||||
public class V1_19PacketFactory extends V1_16PacketFactory {
|
public class V1_19PacketFactory extends V1_16PacketFactory {
|
||||||
|
private final boolean oldTabPackets;
|
||||||
public V1_19PacketFactory(TaskScheduler scheduler, MetadataFactory metadataFactory, PacketEventsAPI<Plugin> packetEvents, EntityPropertyRegistryImpl propertyRegistry) {
|
public V1_19PacketFactory(TaskScheduler scheduler, MetadataFactory metadataFactory, PacketEventsAPI<Plugin> packetEvents, EntityPropertyRegistryImpl propertyRegistry) {
|
||||||
super(scheduler, metadataFactory, packetEvents, propertyRegistry);
|
super(scheduler, metadataFactory, packetEvents, propertyRegistry);
|
||||||
|
oldTabPackets = packetEvents.getServerManager().getVersion().isOlderThanOrEquals(ServerVersion.V_1_19_2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CompletableFuture<Void> addTabPlayer(Player player, PacketEntity entity, PropertyHolder properties) {
|
public CompletableFuture<Void> addTabPlayer(Player player, PacketEntity entity, PropertyHolder properties) {
|
||||||
|
if (oldTabPackets) return super.addTabPlayer(player, entity, properties);
|
||||||
if (entity.getType() != EntityTypes.PLAYER) return CompletableFuture.completedFuture(null);
|
if (entity.getType() != EntityTypes.PLAYER) return CompletableFuture.completedFuture(null);
|
||||||
CompletableFuture<Void> future = new CompletableFuture<>();
|
CompletableFuture<Void> future = new CompletableFuture<>();
|
||||||
skinned(player, properties, new UserProfile(entity.getUuid(), Integer.toString(entity.getEntityId()))).thenAccept(profile -> {
|
skinned(player, properties, new UserProfile(entity.getUuid(), Integer.toString(entity.getEntityId()))).thenAccept(profile -> {
|
||||||
|
@ -39,6 +43,10 @@ public class V1_19PacketFactory extends V1_16PacketFactory {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void removeTabPlayer(Player player, PacketEntity entity) {
|
public void removeTabPlayer(Player player, PacketEntity entity) {
|
||||||
|
if (oldTabPackets) {
|
||||||
|
super.removeTabPlayer(player, entity);
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (entity.getType() != EntityTypes.PLAYER) return;
|
if (entity.getType() != EntityTypes.PLAYER) return;
|
||||||
sendPacket(player, new WrapperPlayServerPlayerInfoRemove(entity.getUuid()));
|
sendPacket(player, new WrapperPlayServerPlayerInfoRemove(entity.getUuid()));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue