I am tring to create a NPC plugin and it is working, but since there is alredy the feature of name changing (not in the bukkit API), there must be a skin changing feature (not in the bukkit API) using the UUID. I have tried to use UUIDFetcher to get the "skin" UUID and it did, but the skin is not showing up. Code: Code:java public class Human extends EntityPlayer { private Location l;private CraftPlayer p; public Human(Player player, String skinPlayer) {super(((CraftServer) Main.getInstance().getServer()).getHandle().getServer(), ((CraftWorld) player.getWorld()).getHandle(),new GameProfile(new UUIDFetcher(skinPlayer).call().get(skinPlayer), player.getName()),new PlayerInteractManager(((CraftWorld) player.getWorld()).getHandle()));this.l = player.getLocation();p = (CraftPlayer) player;playerConnection = new PlayerConnection(((CraftServer) Main.getInstance().getServer()).getHandle().getServer(), new NullNetworkManager(), this);} public void spawn() {try {World ws = world;ws.addEntity(this);getBukkitEntity().teleport(p);if(p != null) {playerInteractManager.setGameMode(EnumGamemode.valueOf(p.getGameMode().toString()));inventory.setCarried(CraftItemStack.asNMSCopy(p.getItemInHand()));for(int i = 0; i < inventory.armor.length; i++) {inventory.armor = CraftItemStack.asNMSCopy(p.getInventory().getArmorContents());}} PacketPlayOutNamedEntitySpawn packet = new PacketPlayOutNamedEntitySpawn(this);for(Player p : Bukkit.getOnlinePlayers()) ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet);} catch (Exception e) {e.printStackTrace();}} public void h() { } public void a(PacketPlayInSettings packetplayinsettings) {} public void sendMessage(IChatBaseComponent ichatbasecomponent) {} public void sendMessage(IChatBaseComponent[] arg0) {} public Location getLocation() {return l;}} Line 8
There is a database of skins and blablabla... If there is way to change player's skin, there is a same way to change EntityPlayer's skin (There is a EntityPlayer variable in CraftPlayer class)
Nope, the client looks up the username of a player and then downloads the skin from an url on the skin server https://s3.amazonaws.com/MinecraftSkins/username.png and then renders the player with that skin. However it only looks up playernames and not mob or npc names.