Fixes, two new features.
Fixed the new Follow pathfinder goals. Added new optional syntax to NBTListIndex. Removed unused code in NBTOf. Added new NMS Method: makeClientSay. Added ClientChat effect. Added ResourcePackSound effect (1.9).
This commit is contained in:
@@ -4,6 +4,7 @@ import java.io.File;
|
||||
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public interface NMSInterface {
|
||||
@@ -57,4 +58,6 @@ public interface NMSInterface {
|
||||
public String getMCId(ItemStack itemStack);
|
||||
|
||||
public ItemStack getItemFromMcId(String mcId);
|
||||
|
||||
void makeClientSay(String msg, Player p);
|
||||
}
|
||||
|
||||
@@ -22,7 +22,9 @@ import org.bukkit.block.Block;
|
||||
import org.bukkit.craftbukkit.v1_7_R4.CraftWorld;
|
||||
import org.bukkit.craftbukkit.v1_7_R4.entity.CraftEntity;
|
||||
import org.bukkit.craftbukkit.v1_7_R4.inventory.CraftItemStack;
|
||||
import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import ch.njol.skript.Skript;
|
||||
@@ -49,7 +51,7 @@ import net.minecraft.server.v1_7_R4.NBTTagShort;
|
||||
import net.minecraft.server.v1_7_R4.NBTTagString;
|
||||
import net.minecraft.server.v1_7_R4.TileEntity;
|
||||
import net.minecraft.server.v1_7_R4.World;
|
||||
import net.minecraft.server.v1_9_R1.MinecraftKey;
|
||||
import net.minecraft.server.v1_7_R4.PacketPlayInChat;
|
||||
|
||||
public class NMS_v1_7_R4 implements NMSInterface {
|
||||
|
||||
@@ -358,8 +360,10 @@ public class NMS_v1_7_R4 implements NMSInterface {
|
||||
public NBTTagCompound getItemNBT(ItemStack itemStack) {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR)
|
||||
return null;
|
||||
NBTTagCompound NBT = CraftItemStack.asNMSCopy(itemStack).getTag();
|
||||
return NBT;
|
||||
NBTTagCompound itemNBT = CraftItemStack.asNMSCopy(itemStack).getTag();
|
||||
if (itemNBT == null || itemNBT.isEmpty())
|
||||
itemNBT = null;
|
||||
return itemNBT;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -488,8 +492,12 @@ public class NMS_v1_7_R4 implements NMSInterface {
|
||||
|
||||
@Override
|
||||
public ItemStack getItemFromMcId(String mcId) {
|
||||
MinecraftKey mcKey = new MinecraftKey(mcId);
|
||||
Item nmsItem = (Item) Item.REGISTRY.get(mcKey);
|
||||
return CraftItemStack.asNewCraftStack(nmsItem);
|
||||
return null; //Not supported in 1.7
|
||||
}
|
||||
|
||||
@Override
|
||||
public void makeClientSay(String msg, Player p) {
|
||||
PacketPlayInChat chatPacket = new PacketPlayInChat(msg);
|
||||
((CraftPlayer) p).getHandle().playerConnection.a(chatPacket);
|
||||
}
|
||||
}
|
||||
@@ -19,7 +19,9 @@ import org.bukkit.block.Block;
|
||||
import org.bukkit.craftbukkit.v1_8_R3.CraftWorld;
|
||||
import org.bukkit.craftbukkit.v1_8_R3.entity.CraftEntity;
|
||||
import org.bukkit.craftbukkit.v1_8_R3.inventory.CraftItemStack;
|
||||
import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import ch.njol.skript.Skript;
|
||||
@@ -52,6 +54,7 @@ import net.minecraft.server.v1_8_R3.PathfinderGoal;
|
||||
import net.minecraft.server.v1_8_R3.PathfinderGoalSelector;
|
||||
import net.minecraft.server.v1_8_R3.TileEntity;
|
||||
import net.minecraft.server.v1_8_R3.World;
|
||||
import net.minecraft.server.v1_8_R3.PacketPlayInChat;
|
||||
|
||||
public class NMS_v1_8_R3 implements NMSInterface {
|
||||
|
||||
@@ -409,6 +412,8 @@ public class NMS_v1_8_R3 implements NMSInterface {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR)
|
||||
return null;
|
||||
NBTTagCompound itemNBT = CraftItemStack.asNMSCopy(itemStack).getTag();
|
||||
if (itemNBT == null || itemNBT.isEmpty())
|
||||
itemNBT = null;
|
||||
return itemNBT;
|
||||
}
|
||||
|
||||
@@ -531,4 +536,10 @@ public class NMS_v1_8_R3 implements NMSInterface {
|
||||
Item nmsItem = (Item) Item.REGISTRY.get(mcKey);
|
||||
return CraftItemStack.asNewCraftStack(nmsItem);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void makeClientSay(String msg, Player p) {
|
||||
PacketPlayInChat chatPacket = new PacketPlayInChat(msg);
|
||||
((CraftPlayer) p).getHandle().playerConnection.a(chatPacket);
|
||||
}
|
||||
}
|
||||
@@ -18,8 +18,10 @@ import org.bukkit.Material;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.craftbukkit.v1_9_R1.CraftWorld;
|
||||
import org.bukkit.craftbukkit.v1_9_R1.entity.CraftEntity;
|
||||
import org.bukkit.craftbukkit.v1_9_R1.entity.CraftPlayer;
|
||||
import org.bukkit.craftbukkit.v1_9_R1.inventory.CraftItemStack;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import ch.njol.skript.Skript;
|
||||
@@ -49,6 +51,7 @@ import net.minecraft.server.v1_9_R1.NBTTagList;
|
||||
import net.minecraft.server.v1_9_R1.NBTTagLong;
|
||||
import net.minecraft.server.v1_9_R1.NBTTagShort;
|
||||
import net.minecraft.server.v1_9_R1.NBTTagString;
|
||||
import net.minecraft.server.v1_9_R1.PacketPlayInChat;
|
||||
import net.minecraft.server.v1_9_R1.PathfinderGoal;
|
||||
import net.minecraft.server.v1_9_R1.PathfinderGoalSelector;
|
||||
import net.minecraft.server.v1_9_R1.TileEntity;
|
||||
@@ -410,7 +413,7 @@ public class NMS_v1_9_R1 implements NMSInterface {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR)
|
||||
return null;
|
||||
NBTTagCompound itemNBT = CraftItemStack.asNMSCopy(itemStack).getTag();
|
||||
if (itemNBT.isEmpty())
|
||||
if (itemNBT == null || itemNBT.isEmpty())
|
||||
itemNBT = null;
|
||||
return itemNBT;
|
||||
}
|
||||
@@ -536,4 +539,10 @@ public class NMS_v1_9_R1 implements NMSInterface {
|
||||
Item nmsItem = (Item) Item.REGISTRY.get(mcKey);
|
||||
return CraftItemStack.asNewCraftStack(nmsItem);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void makeClientSay(String msg, Player p) {
|
||||
PacketPlayInChat chatPacket = new PacketPlayInChat(msg);
|
||||
((CraftPlayer) p).getHandle().playerConnection.a(chatPacket);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user