mrjaime1999

Untitled

Sep 10th, 2016
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.44 KB | None | 0 0
  1. public void sendSignEdit(Player player, String... lines) {
  2. BlockPosition position = new BlockPosition(100, 100, 100);
  3.  
  4. PacketContainer blockPacket = manager.createPacket(PacketType.Play.Server.BLOCK_CHANGE);
  5. blockPacket.getBlockPositionModifier().write(0, position);
  6. blockPacket.getBlockData().write(0, WrappedBlockData.createData(Material.SIGN_POST));
  7.  
  8. PacketContainer dataPacket = manager.createPacket(PacketType.Play.Server.TILE_ENTITY_DATA);
  9. dataPacket.getBlockPositionModifier().write(0, position);
  10. dataPacket.getIntegers().write(0, 9);
  11. try {
  12. WrappedChatComponent[] components = new WrappedChatComponent[4];
  13. for (int i = 0; i < 4; i++) {
  14. components[i] = WrappedChatComponent.fromText(lines[i]);
  15. }
  16. blockPacket.getChatComponentArrays().write(0, components);
  17. } catch (FieldAccessException e) {
  18. //Sign already has text?
  19. }
  20.  
  21. PacketContainer editorPacket = manager.createPacket(PacketType.Play.Server.OPEN_SIGN_EDITOR);
  22. editorPacket.getBlockPositionModifier().write(0, position);
  23.  
  24. try {
  25. manager.sendServerPacket(player, blockPacket);
  26. manager.sendServerPacket(player, dataPacket);
  27. manager.sendServerPacket(player, editorPacket);
  28. } catch (InvocationTargetException e) {
  29. e.printStackTrace();
  30. }
  31. }
Advertisement
Add Comment
Please, Sign In to add comment