Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package de.cynfos.api;
- import java.lang.reflect.Field;
- import net.minecraft.server.v1_8_R1.ChatSerializer;
- import net.minecraft.server.v1_8_R1.EnumTitleAction;
- import net.minecraft.server.v1_8_R1.IChatBaseComponent;
- import net.minecraft.server.v1_8_R1.PacketPlayOutChat;
- import net.minecraft.server.v1_8_R1.PacketPlayOutPlayerListHeaderFooter;
- import net.minecraft.server.v1_8_R1.PacketPlayOutTitle;
- import net.minecraft.server.v1_8_R1.PlayerConnection;
- import org.bukkit.craftbukkit.v1_8_R1.entity.CraftPlayer;
- import org.bukkit.entity.Player;
- public class PacketAPI {
- public static void sendActionBar(Player p, String msg) {
- if (msg == null) msg = "";
- PlayerConnection con = ((CraftPlayer)p).getHandle().playerConnection;
- IChatBaseComponent chat = ChatSerializer.a("{\"text\": \"" + msg + "\"}");
- PacketPlayOutChat packet = new PacketPlayOutChat(chat, (byte) 2);
- con.sendPacket(packet);
- }
- public static void sendTablist(Player p, String header, String footer) {
- if (header == null) header = "";
- if (footer == null) footer = "";
- PlayerConnection con = ((CraftPlayer)p).getHandle().playerConnection;
- IChatBaseComponent tabheader = ChatSerializer.a("{\"text\": \"" + header + "\"}");
- IChatBaseComponent tabfooter = ChatSerializer.a("{\"text\": \"" + footer + "\"}");
- PacketPlayOutPlayerListHeaderFooter packet = new PacketPlayOutPlayerListHeaderFooter(tabheader);
- try {
- Field f = packet.getClass().getDeclaredField("b");
- f.setAccessible(true);
- f.set(packet, tabfooter);
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- con.sendPacket(packet);
- }
- }
- public static void sendTitle(Player p, String msg) {
- if (msg == null) msg = "";
- PlayerConnection con = ((CraftPlayer)p).getHandle().playerConnection;
- IChatBaseComponent title = ChatSerializer.a("{\"text\": \"" + msg + "\"}");
- PacketPlayOutTitle packet = new PacketPlayOutTitle(EnumTitleAction.TITLE, title);
- con.sendPacket(packet);
- }
- public static void sendSubTitle(Player p, String msg) {
- if (msg == null) msg = "";
- PlayerConnection con = ((CraftPlayer)p).getHandle().playerConnection;
- IChatBaseComponent subtitle = ChatSerializer.a("{\"text\": \"" + msg + "\"}");
- PacketPlayOutTitle packet = new PacketPlayOutTitle(EnumTitleAction.SUBTITLE, subtitle);
- con.sendPacket(packet);
- }
- public static void sendKlickableChatMessage(Player p, String startMessage, String linkedMessage, String endMessage, String hoverMessage, String commandToRun) {
- if (startMessage == null) startMessage = "";
- if (endMessage == null) endMessage = "";
- if (hoverMessage == null) hoverMessage = "";
- if (commandToRun == null) commandToRun = "";
- PlayerConnection con = ((CraftPlayer)p).getHandle().playerConnection;
- IChatBaseComponent chat = ChatSerializer.a("{\"text\":\"" + startMessage + "\",\"extra\":"
- + "[{\"text\":\"" + linkedMessage + "\",\"clickEvent\":{\"action\":\"run_command\","
- + "\"value\":\"/" + commandToRun + "\"},\"hoverEvent\":{\"action\":\"show_text\","
- + "\"value\":\"" + hoverMessage + "\"}}]}").a(endMessage);
- PacketPlayOutChat packet = new PacketPlayOutChat(chat);
- con.sendPacket(packet);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement