diff options
author | Nate Mortensen <nate.richard.mortensen@gmail.com> | 2013-12-17 19:23:26 -0700 |
---|---|---|
committer | Nate Mortensen <nate.richard.mortensen@gmail.com> | 2013-12-17 20:17:38 -0700 |
commit | 8da512628263584ab75b4fb932781a2f242d08a5 (patch) | |
tree | 63b59d2e2339f28062fb3cb0bf4cb4207e60d389 /src/main | |
parent | 091fb2ea9e687a193a0a31f199fc8363cd9546ba (diff) | |
download | craftbukkit-8da512628263584ab75b4fb932781a2f242d08a5.tar craftbukkit-8da512628263584ab75b4fb932781a2f242d08a5.tar.gz craftbukkit-8da512628263584ab75b4fb932781a2f242d08a5.tar.lz craftbukkit-8da512628263584ab75b4fb932781a2f242d08a5.tar.xz craftbukkit-8da512628263584ab75b4fb932781a2f242d08a5.zip |
Add new setResourcePack method. Fixes BUKKIT-5015
Minecraft now uses resource packs instead of texture packs, which broke
the setTexturePack method, as the client no longer listens on the MC|TPack
channel.
This commit fixes the issue by adding in a setResourcePack method, and by
deprecating setTexturePack and rewriting it to call the newly added
setResourcePack. In order to simplify the method and prevent this from
happening in the future, setResourcePack calls EntityPlayer.a(String) to use
the same logic as minecraft when sending resource packs.
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java index 48c5ae9c..33169e29 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -880,12 +880,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } public void setTexturePack(String url) { - Validate.notNull(url, "Texture pack URL cannot be null"); + setResourcePack(url); + } - byte[] message = (url + "\0" + "16").getBytes(); - Validate.isTrue(message.length <= Messenger.MAX_MESSAGE_SIZE, "Texture pack URL is too long"); + @Override + public void setResourcePack(String url) { + Validate.notNull(url, "Resource pack URL cannot be null"); - getHandle().playerConnection.sendPacket(new PacketPlayOutCustomPayload("MC|TPack", message)); + getHandle().a(url); // should be setResourcePack } public void addChannel(String channel) { |