Re-update based on missing commit
This commit is contained in:
parent
bc055e0041
commit
5f9cbe7425
4 changed files with 10 additions and 10 deletions
|
@ -30,8 +30,6 @@ import tech.sbdevelopment.mapreflectionapi.api.ArrayImage;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import static tech.sbdevelopment.mapreflectionapi.utils.ReflectionUtil.supports;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The {@link MapSender_v1_20_R4} sends the Map packets to players.
|
* The {@link MapSender_v1_20_R4} sends the Map packets to players.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -108,7 +108,7 @@ public class MapSender_v1_21_R1 {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
final MapId id = new MapId(-id0);
|
final int id = -id0;
|
||||||
Bukkit.getScheduler().runTaskAsynchronously(MapReflectionAPI.getInstance(), () -> {
|
Bukkit.getScheduler().runTaskAsynchronously(MapReflectionAPI.getInstance(), () -> {
|
||||||
try {
|
try {
|
||||||
WorldMap.b updateData = new WorldMap.b(
|
WorldMap.b updateData = new WorldMap.b(
|
||||||
|
@ -119,8 +119,10 @@ public class MapSender_v1_21_R1 {
|
||||||
content.array //Data
|
content.array //Data
|
||||||
);
|
);
|
||||||
|
|
||||||
|
MapId mapId = new MapId(id);
|
||||||
|
|
||||||
PacketPlayOutMap packet = new PacketPlayOutMap(
|
PacketPlayOutMap packet = new PacketPlayOutMap(
|
||||||
id, //ID
|
mapId, //ID
|
||||||
(byte) 0, //Scale
|
(byte) 0, //Scale
|
||||||
false, //Show icons
|
false, //Show icons
|
||||||
new ArrayList<>(), //Icons
|
new ArrayList<>(), //Icons
|
||||||
|
|
|
@ -19,14 +19,13 @@
|
||||||
package tech.sbdevelopment.mapreflectionapi.nms;
|
package tech.sbdevelopment.mapreflectionapi.nms;
|
||||||
|
|
||||||
import net.minecraft.core.component.DataComponentType;
|
import net.minecraft.core.component.DataComponentType;
|
||||||
import net.minecraft.core.registries.BuiltInRegistries;
|
import net.minecraft.core.component.DataComponents;
|
||||||
import net.minecraft.network.protocol.game.PacketPlayOutEntityMetadata;
|
import net.minecraft.network.protocol.game.PacketPlayOutEntityMetadata;
|
||||||
import net.minecraft.network.protocol.game.PacketPlayOutSetSlot;
|
import net.minecraft.network.protocol.game.PacketPlayOutSetSlot;
|
||||||
import net.minecraft.network.syncher.DataWatcher;
|
import net.minecraft.network.syncher.DataWatcher;
|
||||||
import net.minecraft.resources.MinecraftKey;
|
|
||||||
import net.minecraft.world.entity.Entity;
|
import net.minecraft.world.entity.Entity;
|
||||||
import net.minecraft.world.entity.decoration.EntityItemFrame;
|
import net.minecraft.world.entity.decoration.EntityItemFrame;
|
||||||
import net.minecraft.world.item.Items;
|
import net.minecraft.world.level.saveddata.maps.MapId;
|
||||||
import org.bukkit.*;
|
import org.bukkit.*;
|
||||||
import org.bukkit.craftbukkit.v1_21_R1.CraftWorld;
|
import org.bukkit.craftbukkit.v1_21_R1.CraftWorld;
|
||||||
import org.bukkit.craftbukkit.v1_21_R1.entity.CraftPlayer;
|
import org.bukkit.craftbukkit.v1_21_R1.entity.CraftPlayer;
|
||||||
|
@ -221,7 +220,8 @@ public class MapWrapper_v1_21_R1 extends MapWrapper {
|
||||||
|
|
||||||
private void sendItemFramePacket(Player player, int entityId, ItemStack stack, int mapId) {
|
private void sendItemFramePacket(Player player, int entityId, ItemStack stack, int mapId) {
|
||||||
net.minecraft.world.item.ItemStack nmsStack = CraftItemStack.asNMSCopy(stack);
|
net.minecraft.world.item.ItemStack nmsStack = CraftItemStack.asNMSCopy(stack);
|
||||||
nmsStack.a().a(BuiltInRegistries.aq.a(MinecraftKey.a("minecraft:map_id")), mapId); //getOrCreateTag putInt
|
MapId mapId1 = new MapId(mapId);
|
||||||
|
nmsStack.b(DataComponents.B, mapId1); //set
|
||||||
|
|
||||||
List<DataWatcher.c<?>> list = new ArrayList<>();
|
List<DataWatcher.c<?>> list = new ArrayList<>();
|
||||||
DataWatcher.c<?> dataWatcherItem = DataWatcher.c.a(EntityItemFrame.f, nmsStack);
|
DataWatcher.c<?> dataWatcherItem = DataWatcher.c.a(EntityItemFrame.f, nmsStack);
|
||||||
|
|
|
@ -89,8 +89,8 @@ public class PacketListener_v1_21_R1 extends PacketListener {
|
||||||
return false;
|
return false;
|
||||||
}).get(1, TimeUnit.SECONDS)) return;
|
}).get(1, TimeUnit.SECONDS)) return;
|
||||||
} else if (packet instanceof PacketPlayInSetCreativeSlot packetPlayInSetCreativeSlot) {
|
} else if (packet instanceof PacketPlayInSetCreativeSlot packetPlayInSetCreativeSlot) {
|
||||||
int slot = packetPlayInSetCreativeSlot.b();
|
int slot = (int) getDeclaredField(packetPlayInSetCreativeSlot, supports(20, 4) ? "b" : "a"); //slot, 1.20.5 = b, lower is a
|
||||||
ItemStack item = packetPlayInSetCreativeSlot.e();
|
ItemStack item = (ItemStack) getDeclaredField(packetPlayInSetCreativeSlot, supports(20, 4) ? "e" : "d"); //item, 1.20.5 = e, lower is d
|
||||||
|
|
||||||
boolean async = !plugin.getServer().isPrimaryThread();
|
boolean async = !plugin.getServer().isPrimaryThread();
|
||||||
CreateInventoryMapUpdateEvent event = new CreateInventoryMapUpdateEvent(p, slot, CraftItemStack.asBukkitCopy(item), async);
|
CreateInventoryMapUpdateEvent event = new CreateInventoryMapUpdateEvent(p, slot, CraftItemStack.asBukkitCopy(item), async);
|
||||||
|
|
Loading…
Add table
Reference in a new issue