Updated to 1.19.3
This commit is contained in:
parent
7311ddbeec
commit
e8ab59f070
2 changed files with 26 additions and 12 deletions
2
pom.xml
2
pom.xml
|
@ -188,7 +188,7 @@
|
|||
<dependency>
|
||||
<groupId>org.spigotmc</groupId>
|
||||
<artifactId>spigot-api</artifactId>
|
||||
<version>1.19.2-R0.1-SNAPSHOT</version>
|
||||
<version>1.19.3-R0.1-SNAPSHOT</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
|
|
@ -317,14 +317,6 @@ public class MapWrapper extends AbstractMapWrapper {
|
|||
private void sendItemFramePacket(Player player, int entityId, ItemStack stack, int mapId) {
|
||||
Object nmsStack = createCraftItemStack(stack, mapId);
|
||||
|
||||
Object dataWatcher = ReflectionUtil.callConstructorNull(dataWatcherClass, entityClass);
|
||||
|
||||
Object packet = ReflectionUtil.callConstructor(entityMetadataPacketClass,
|
||||
entityId,
|
||||
dataWatcher, //dummy watcher!
|
||||
true
|
||||
);
|
||||
|
||||
String dataWatcherObjectName;
|
||||
if (ReflectionUtil.supports(19)) { //1.19, same as 1.17 and 1.18(.2)
|
||||
dataWatcherObjectName = "ao";
|
||||
|
@ -340,10 +332,32 @@ public class MapWrapper extends AbstractMapWrapper {
|
|||
dataWatcherObjectName = "c";
|
||||
}
|
||||
Object dataWatcherObject = ReflectionUtil.getDeclaredField(entityItemFrameClass, dataWatcherObjectName);
|
||||
Object dataWatcherItem = ReflectionUtil.callFirstConstructor(dataWatcherItemClass, dataWatcherObject, nmsStack);
|
||||
|
||||
List list = new ArrayList<>();
|
||||
|
||||
Object packet;
|
||||
if (ReflectionUtil.supports(19, 3)) { //1.19.3
|
||||
Object dataWatcherField = ReflectionUtil.getDeclaredField(dataWatcherClass, "b");
|
||||
Object dataWatcherItem = ReflectionUtil.callDeclaredMethod(dataWatcherField, "a", dataWatcherObject, nmsStack);
|
||||
list.add(dataWatcherItem);
|
||||
|
||||
packet = ReflectionUtil.callConstructor(entityMetadataPacketClass,
|
||||
entityId,
|
||||
list
|
||||
);
|
||||
} else { //1.19.2 or lower
|
||||
Object dataWatcher = ReflectionUtil.callConstructorNull(dataWatcherClass, entityClass);
|
||||
|
||||
packet = ReflectionUtil.callConstructor(entityMetadataPacketClass,
|
||||
entityId,
|
||||
dataWatcher, //dummy watcher!
|
||||
true
|
||||
);
|
||||
|
||||
Object dataWatcherItem = ReflectionUtil.callFirstConstructor(dataWatcherItemClass, dataWatcherObject, nmsStack);
|
||||
list.add(dataWatcherItem);
|
||||
ReflectionUtil.setDeclaredField(packet, "b", list);
|
||||
}
|
||||
|
||||
ReflectionUtil.sendPacketSync(player, packet);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue