Commit for release v1.0.3.

This commit is contained in:
JitseB 2018-04-19 19:09:10 +02:00
parent 9319c291e6
commit 38f164554a
42 changed files with 134 additions and 87 deletions

View File

@ -40,6 +40,8 @@ public class NPCLib {
+ versionName + ") is not supported.");
}
server.getConsoleSender().sendMessage(ChatColor.BLUE + "[NPCLib] " + ChatColor.WHITE + "Enabled for version " + version.toString() + ".");
registerInternal();
}
@ -82,4 +84,25 @@ public class NPCLib {
public NPC createNPC(Skin skin, List<String> lines) {
return createNPC(skin, 50, lines);
}
/**
* Create a new non-player character (NPC).
*
* @param skin The skin you want the NPC to have.
* @return The NPC object you may use to sendShowPackets it to players.
*/
public NPC createNPC(Skin skin) {
return createNPC(skin, 50, null);
}
/**
* Create a new non-player character (NPC).
*
* @return The NPC object you may use to sendShowPackets it to players.
*/
public NPC createNPC() {
return createNPC(null, 50, null);
}
}

View File

@ -2,14 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_10_r1;
package net.jitse.npclib.nms.v1_10_R1;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.holograms.Hologram;
import net.jitse.npclib.nms.v1_10_r1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_10_r1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_10_r1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_10_r1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.nms.v1_10_R1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_10_R1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_10_R1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_10_R1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.skin.Skin;
import net.minecraft.server.v1_10_R1.*;
import org.bukkit.Bukkit;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_10_r1.packets;
package net.jitse.npclib.nms.v1_10_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_10_R1.PacketPlayOutEntityHeadRotation;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_10_r1.packets;
package net.jitse.npclib.nms.v1_10_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_10_R1.DataWatcher;

View File

@ -2,13 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_10_r1.packets;
package net.jitse.npclib.nms.v1_10_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import com.mojang.authlib.GameProfile;
import net.minecraft.server.v1_10_R1.EnumGamemode;
import net.minecraft.server.v1_10_R1.IChatBaseComponent;
import net.minecraft.server.v1_10_R1.PacketPlayOutPlayerInfo;
import org.bukkit.ChatColor;
import java.util.List;
@ -28,7 +29,9 @@ public class PacketPlayOutPlayerInfoWrapper {
.set(packetPlayOutPlayerInfo, action);
Object playerInfoData = playerInfoDataConstructor.invoke(packetPlayOutPlayerInfo,
gameProfile, 1, EnumGamemode.NOT_SET, IChatBaseComponent.ChatSerializer.b(name));
gameProfile, 1, EnumGamemode.NOT_SET,
IChatBaseComponent.ChatSerializer.b("{\"text\":\"" + ChatColor.BLUE + "[NPC] " + name + "\"}")
);
Reflection.FieldAccessor<List> fieldAccessor = Reflection.getField(packetPlayOutPlayerInfo.getClass(), "b", List.class);
List list = fieldAccessor.get(packetPlayOutPlayerInfo);

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_10_r1.packets;
package net.jitse.npclib.nms.v1_10_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_10_R1.PacketPlayOutScoreboardTeam;

View File

@ -2,14 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_11_r1;
package net.jitse.npclib.nms.v1_11_R1;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.holograms.Hologram;
import net.jitse.npclib.nms.v1_11_r1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_11_r1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_11_r1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_11_r1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.nms.v1_11_R1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_11_R1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_11_R1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_11_R1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.skin.Skin;
import net.minecraft.server.v1_11_R1.*;
import org.bukkit.Bukkit;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_11_r1.packets;
package net.jitse.npclib.nms.v1_11_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_11_R1.PacketPlayOutEntityHeadRotation;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_11_r1.packets;
package net.jitse.npclib.nms.v1_11_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_11_R1.DataWatcher;

View File

@ -2,13 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_11_r1.packets;
package net.jitse.npclib.nms.v1_11_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import com.mojang.authlib.GameProfile;
import net.minecraft.server.v1_11_R1.EnumGamemode;
import net.minecraft.server.v1_11_R1.IChatBaseComponent;
import net.minecraft.server.v1_11_R1.PacketPlayOutPlayerInfo;
import org.bukkit.ChatColor;
import java.util.List;
@ -28,7 +29,9 @@ public class PacketPlayOutPlayerInfoWrapper {
.set(packetPlayOutPlayerInfo, action);
Object playerInfoData = playerInfoDataConstructor.invoke(packetPlayOutPlayerInfo,
gameProfile, 1, EnumGamemode.NOT_SET, IChatBaseComponent.ChatSerializer.b(name));
gameProfile, 1, EnumGamemode.NOT_SET,
IChatBaseComponent.ChatSerializer.b("{\"text\":\"" + ChatColor.BLUE + "[NPC] " + name + "\"}")
);
Reflection.FieldAccessor<List> fieldAccessor = Reflection.getField(packetPlayOutPlayerInfo.getClass(), "b", List.class);
List list = fieldAccessor.get(packetPlayOutPlayerInfo);

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_11_r1.packets;
package net.jitse.npclib.nms.v1_11_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_11_R1.PacketPlayOutScoreboardTeam;

View File

@ -2,14 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_12_r1;
package net.jitse.npclib.nms.v1_12_R1;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.holograms.Hologram;
import net.jitse.npclib.nms.v1_12_r1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_12_r1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_12_r1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_12_r1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.nms.v1_12_R1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_12_R1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_12_R1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_12_R1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.skin.Skin;
import net.minecraft.server.v1_12_R1.*;
import org.bukkit.Bukkit;
@ -75,7 +75,7 @@ public class NPC_V1_12_R1 extends NPC {
public void sendShowPackets(Player player) {
PlayerConnection playerConnection = ((CraftPlayer) player).getHandle().playerConnection;
playerConnection.sendPacket(packetPlayOutScoreboardTeamRegister);
// playerConnection.sendPacket(packetPlayOutScoreboardTeamRegister);
playerConnection.sendPacket(packetPlayOutPlayerInfoAdd);
playerConnection.sendPacket(packetPlayOutNamedEntitySpawn);
playerConnection.sendPacket(packetPlayOutEntityHeadRotation);

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_12_r1.packets;
package net.jitse.npclib.nms.v1_12_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_12_R1.PacketPlayOutEntityHeadRotation;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_12_r1.packets;
package net.jitse.npclib.nms.v1_12_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_12_R1.DataWatcher;

View File

@ -2,13 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_12_r1.packets;
package net.jitse.npclib.nms.v1_12_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import com.mojang.authlib.GameProfile;
import net.minecraft.server.v1_12_R1.EnumGamemode;
import net.minecraft.server.v1_12_R1.IChatBaseComponent;
import net.minecraft.server.v1_12_R1.PacketPlayOutPlayerInfo;
import org.bukkit.ChatColor;
import java.util.List;
@ -28,7 +29,9 @@ public class PacketPlayOutPlayerInfoWrapper {
.set(packetPlayOutPlayerInfo, action);
Object playerInfoData = playerInfoDataConstructor.invoke(packetPlayOutPlayerInfo,
gameProfile, 1, EnumGamemode.NOT_SET, IChatBaseComponent.ChatSerializer.b(name));
gameProfile, 1, EnumGamemode.NOT_SET,
IChatBaseComponent.ChatSerializer.b("{\"text\":\"" + ChatColor.BLUE + "[NPC] " + name + "\"}")
);
Reflection.FieldAccessor<List> fieldAccessor = Reflection.getField(packetPlayOutPlayerInfo.getClass(), "b", List.class);
List list = fieldAccessor.get(packetPlayOutPlayerInfo);

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_12_r1.packets;
package net.jitse.npclib.nms.v1_12_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_12_R1.PacketPlayOutScoreboardTeam;

View File

@ -2,14 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r1;
package net.jitse.npclib.nms.v1_8_R1;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.holograms.Hologram;
import net.jitse.npclib.nms.v1_8_r1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_8_r1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_8_r1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_8_r1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.nms.v1_8_R1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_8_R1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_8_R1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_8_R1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.skin.Skin;
import net.minecraft.server.v1_8_R1.*;
import org.bukkit.Bukkit;
@ -82,7 +82,6 @@ public class NPC_V1_8_R1 extends NPC {
hologram.spawn(player);
Bukkit.getScheduler().runTaskLater(plugin, () ->
playerConnection.sendPacket(packetPlayOutPlayerInfoRemove), 5);
}

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r1.packets;
package net.jitse.npclib.nms.v1_8_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R1.PacketPlayOutEntityHeadRotation;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r1.packets;
package net.jitse.npclib.nms.v1_8_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R1.DataWatcher;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r1.packets;
package net.jitse.npclib.nms.v1_8_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import com.mojang.authlib.GameProfile;

View File

@ -2,10 +2,11 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r1.packets;
package net.jitse.npclib.nms.v1_8_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R1.PacketPlayOutScoreboardTeam;
import org.bukkit.ChatColor;
import java.util.Collection;
@ -27,6 +28,9 @@ public class PacketPlayOutScoreboardTeamWrapper {
.set(packetPlayOutScoreboardTeam, "never");
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "i", int.class)
.set(packetPlayOutScoreboardTeam, 1);
// Could not get this working in the PacketPlayOutPlayerInfoWrapper class.
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "c", String.class)
.set(packetPlayOutScoreboardTeam, ChatColor.BLUE + "[NPC] ");
Reflection.FieldAccessor<Collection> collectionFieldAccessor = Reflection.getField(
packetPlayOutScoreboardTeam.getClass(), "g", Collection.class);
Collection collection = collectionFieldAccessor.get(packetPlayOutScoreboardTeam);

View File

@ -2,14 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r2;
package net.jitse.npclib.nms.v1_8_R2;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.holograms.Hologram;
import net.jitse.npclib.nms.v1_8_r2.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_8_r2.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_8_r2.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_8_r2.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.nms.v1_8_R2.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_8_R2.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_8_R2.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_8_R2.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.skin.Skin;
import net.minecraft.server.v1_8_R2.*;
import org.bukkit.Bukkit;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r2.packets;
package net.jitse.npclib.nms.v1_8_R2.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R2.PacketPlayOutEntityHeadRotation;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r2.packets;
package net.jitse.npclib.nms.v1_8_R2.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R2.DataWatcher;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r2.packets;
package net.jitse.npclib.nms.v1_8_R2.packets;
import com.comphenix.tinyprotocol.Reflection;
import com.mojang.authlib.GameProfile;

View File

@ -2,10 +2,11 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r2.packets;
package net.jitse.npclib.nms.v1_8_R2.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R2.PacketPlayOutScoreboardTeam;
import org.bukkit.ChatColor;
import java.util.Collection;
@ -27,6 +28,9 @@ public class PacketPlayOutScoreboardTeamWrapper {
.set(packetPlayOutScoreboardTeam, "never");
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "i", int.class)
.set(packetPlayOutScoreboardTeam, 1);
// Could not get this working in the PacketPlayOutPlayerInfoWrapper class.
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "c", String.class)
.set(packetPlayOutScoreboardTeam, ChatColor.BLUE + "[NPC] ");
Reflection.FieldAccessor<Collection> collectionFieldAccessor = Reflection.getField(
packetPlayOutScoreboardTeam.getClass(), "g", Collection.class);
Collection collection = collectionFieldAccessor.get(packetPlayOutScoreboardTeam);

View File

@ -2,14 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r3;
package net.jitse.npclib.nms.v1_8_R3;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.holograms.Hologram;
import net.jitse.npclib.nms.v1_8_r3.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_8_r3.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_8_r3.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_8_r3.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.nms.v1_8_R3.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_8_R3.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_8_R3.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_8_R3.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.skin.Skin;
import net.minecraft.server.v1_8_R3.*;
import org.bukkit.Bukkit;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r3.packets;
package net.jitse.npclib.nms.v1_8_R3.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R3.PacketPlayOutEntityHeadRotation;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r3.packets;
package net.jitse.npclib.nms.v1_8_R3.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R3.DataWatcher;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r3.packets;
package net.jitse.npclib.nms.v1_8_R3.packets;
import com.comphenix.tinyprotocol.Reflection;
import com.mojang.authlib.GameProfile;

View File

@ -2,10 +2,11 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_8_r3.packets;
package net.jitse.npclib.nms.v1_8_R3.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_8_R3.PacketPlayOutScoreboardTeam;
import org.bukkit.ChatColor;
import java.util.Collection;
@ -27,6 +28,9 @@ public class PacketPlayOutScoreboardTeamWrapper {
.set(packetPlayOutScoreboardTeam, "never");
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "i", int.class)
.set(packetPlayOutScoreboardTeam, 1);
// Could not get this working in the PacketPlayOutPlayerInfoWrapper class.
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "c", String.class)
.set(packetPlayOutScoreboardTeam, ChatColor.BLUE + "[NPC] ");
Reflection.FieldAccessor<Collection> collectionFieldAccessor = Reflection.getField(
packetPlayOutScoreboardTeam.getClass(), "g", Collection.class);
Collection collection = collectionFieldAccessor.get(packetPlayOutScoreboardTeam);

View File

@ -2,14 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r1;
package net.jitse.npclib.nms.v1_9_R1;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.holograms.Hologram;
import net.jitse.npclib.nms.v1_9_r1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_9_r1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_9_r1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_9_r1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.nms.v1_9_R1.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_9_R1.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_9_R1.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_9_R1.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.skin.Skin;
import net.minecraft.server.v1_9_R1.*;
import org.bukkit.Bukkit;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r1.packets;
package net.jitse.npclib.nms.v1_9_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_9_R1.PacketPlayOutEntityHeadRotation;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r1.packets;
package net.jitse.npclib.nms.v1_9_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_9_R1.DataWatcher;

View File

@ -2,13 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r1.packets;
package net.jitse.npclib.nms.v1_9_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import com.mojang.authlib.GameProfile;
import net.minecraft.server.v1_9_R1.IChatBaseComponent;
import net.minecraft.server.v1_9_R1.PacketPlayOutPlayerInfo;
import net.minecraft.server.v1_9_R1.WorldSettings;
import org.bukkit.ChatColor;
import java.util.List;
@ -23,7 +24,7 @@ public class PacketPlayOutPlayerInfoWrapper {
.set(packetPlayOutPlayerInfo, action);
PacketPlayOutPlayerInfo.PlayerInfoData playerInfoData = new PacketPlayOutPlayerInfo().new PlayerInfoData(gameProfile, 1,
WorldSettings.EnumGamemode.NOT_SET, IChatBaseComponent.ChatSerializer.b(name));
WorldSettings.EnumGamemode.NOT_SET, IChatBaseComponent.ChatSerializer.b("{\"text\":\"" + ChatColor.BLUE + "[NPC] " + name + "\"}"));
Reflection.FieldAccessor<List> fieldAccessor = Reflection.getField(packetPlayOutPlayerInfo.getClass(),
"b", List.class);

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r1.packets;
package net.jitse.npclib.nms.v1_9_R1.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_9_R1.PacketPlayOutScoreboardTeam;

View File

@ -2,14 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r2;
package net.jitse.npclib.nms.v1_9_R2;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.holograms.Hologram;
import net.jitse.npclib.nms.v1_9_r2.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_9_r2.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_9_r2.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_9_r2.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.nms.v1_9_R2.packets.PacketPlayOutEntityHeadRotationWrapper;
import net.jitse.npclib.nms.v1_9_R2.packets.PacketPlayOutNamedEntitySpawnWrapper;
import net.jitse.npclib.nms.v1_9_R2.packets.PacketPlayOutPlayerInfoWrapper;
import net.jitse.npclib.nms.v1_9_R2.packets.PacketPlayOutScoreboardTeamWrapper;
import net.jitse.npclib.skin.Skin;
import net.minecraft.server.v1_9_R2.*;
import org.bukkit.Bukkit;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r2.packets;
package net.jitse.npclib.nms.v1_9_R2.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_9_R2.PacketPlayOutEntityHeadRotation;

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r2.packets;
package net.jitse.npclib.nms.v1_9_R2.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_9_R2.DataWatcher;

View File

@ -2,13 +2,14 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r2.packets;
package net.jitse.npclib.nms.v1_9_R2.packets;
import com.comphenix.tinyprotocol.Reflection;
import com.mojang.authlib.GameProfile;
import net.minecraft.server.v1_9_R2.IChatBaseComponent;
import net.minecraft.server.v1_9_R2.PacketPlayOutPlayerInfo;
import net.minecraft.server.v1_9_R2.WorldSettings;
import org.bukkit.ChatColor;
import java.util.List;
@ -28,7 +29,9 @@ public class PacketPlayOutPlayerInfoWrapper {
.set(packetPlayOutPlayerInfo, action);
Object playerInfoData = playerInfoDataConstructor.invoke(packetPlayOutPlayerInfo,
gameProfile, 1, WorldSettings.EnumGamemode.NOT_SET, IChatBaseComponent.ChatSerializer.b(name));
gameProfile, 1, WorldSettings.EnumGamemode.NOT_SET,
IChatBaseComponent.ChatSerializer.b("{\"text\":\"" + ChatColor.BLUE + "[NPC] " + name + "\"}")
);
Reflection.FieldAccessor<List> fieldAccessor = Reflection.getField(packetPlayOutPlayerInfo.getClass(), "b", List.class);
List list = fieldAccessor.get(packetPlayOutPlayerInfo);

View File

@ -2,7 +2,7 @@
* Copyright (c) 2018 Jitse Boonstra
*/
package net.jitse.npclib.nms.v1_9_r2.packets;
package net.jitse.npclib.nms.v1_9_R2.packets;
import com.comphenix.tinyprotocol.Reflection;
import net.minecraft.server.v1_9_R2.PacketPlayOutScoreboardTeam;

View File

@ -5,14 +5,14 @@
package net.jitse.npclib.version;
import net.jitse.npclib.api.NPC;
import net.jitse.npclib.nms.v1_10_r1.NPC_V1_10_R1;
import net.jitse.npclib.nms.v1_11_r1.NPC_V1_11_R1;
import net.jitse.npclib.nms.v1_12_r1.NPC_V1_12_R1;
import net.jitse.npclib.nms.v1_8_r1.NPC_V1_8_R1;
import net.jitse.npclib.nms.v1_8_r2.NPC_V1_8_R2;
import net.jitse.npclib.nms.v1_8_r3.NPC_V1_8_R3;
import net.jitse.npclib.nms.v1_9_r1.NPC_V1_9_R1;
import net.jitse.npclib.nms.v1_9_r2.NPC_V1_9_R2;
import net.jitse.npclib.nms.v1_10_R1.NPC_V1_10_R1;
import net.jitse.npclib.nms.v1_11_R1.NPC_V1_11_R1;
import net.jitse.npclib.nms.v1_12_R1.NPC_V1_12_R1;
import net.jitse.npclib.nms.v1_8_R1.NPC_V1_8_R1;
import net.jitse.npclib.nms.v1_8_R2.NPC_V1_8_R2;
import net.jitse.npclib.nms.v1_8_R3.NPC_V1_8_R3;
import net.jitse.npclib.nms.v1_9_R1.NPC_V1_9_R1;
import net.jitse.npclib.nms.v1_9_R2.NPC_V1_9_R2;
import java.lang.reflect.InvocationTargetException;
import java.util.Arrays;