9
0
mirror of https://github.com/HibiscusMC/HMCCosmetics.git synced 2025-12-30 04:19:28 +00:00

Wardrobe NPC no longer have visible names

This commit is contained in:
LoJoSho
2022-12-29 13:29:04 -06:00
parent 152ec24d76
commit 6d2d4cb30a
4 changed files with 40 additions and 2 deletions

View File

@@ -45,6 +45,10 @@ public interface NMSHandler {
List<Player> sendTo
);
void hideNPCName(
Player player,
String NPCName);
default boolean getSupported () {
return false;
}

View File

@@ -25,6 +25,7 @@ import java.util.concurrent.atomic.AtomicInteger;
public class Wardrobe {
private int NPC_ID;
private String npcName;
private UUID WARDROBE_UUID;
private int ARMORSTAND_ID;
private GameMode originalGamemode;
@@ -66,15 +67,21 @@ public class Wardrobe {
PacketManager.sendCameraPacket(ARMORSTAND_ID, viewer);
// NPC
PacketManager.sendFakePlayerInfoPacket(player, NPC_ID, WARDROBE_UUID, viewer);
npcName = "WardrobeNPC-" + NPC_ID;
while (npcName.length() > 16) {
npcName = npcName.substring(16);
}
PacketManager.sendFakePlayerInfoPacket(player, NPC_ID, WARDROBE_UUID, npcName, viewer);
// NPC 2
Bukkit.getScheduler().runTaskLater(HMCCosmeticsPlugin.getInstance(), () -> {
PacketManager.sendFakePlayerSpawnPacket(WardrobeSettings.getWardrobeLocation(), WARDROBE_UUID, NPC_ID, viewer);
MessagesUtil.sendDebugMessages("Spawned Fake Player on " + WardrobeSettings.getWardrobeLocation());
NMSHandlers.getHandler().hideNPCName(player, npcName);
}, 4);
// Location
PacketManager.sendLookPacket(NPC_ID, WardrobeSettings.getWardrobeLocation(), viewer);
PacketManager.sendRotationPacket(NPC_ID, WardrobeSettings.getWardrobeLocation(), true, viewer);

View File

@@ -244,12 +244,13 @@ public class PacketManager extends BasePacket {
final Player skinnedPlayer,
final int entityId,
final UUID uuid,
final String NPCName,
final List<Player> sendTo
) {
WrapperPlayServerPlayerInfo info = new WrapperPlayServerPlayerInfo();
info.setAction(EnumWrappers.PlayerInfoAction.ADD_PLAYER);
String name = "Mannequin-" + entityId;
String name = NPCName;
while (name.length() > 16) {
name = name.substring(16);
}