Guest User

Untitled

a guest
Jul 21st, 2018
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. public void execute(GameEngine context) {
  2. RSOutputStream mainPacket = new RSOutputStream().setId(24).setSize(RSInputStream.Size.VariableShort).initBitAccess();
  3. RSOutputStream updateBlock = new RSOutputStream().setBare(true);
  4. updateThisPlayerMovement(mainPacket);
  5. appendMasks(player, updateBlock);
  6. mainPacket.addBits(8, player.playerList().size());
  7. /**
  8. * Loops players doing some checks
  9. */
  10. for (Iterator<Player> it = player.playerList().iterator(); it.hasNext();) {
  11. Player p2 = it.next();
  12. if (!p2.Details().isConnected()|| !player.location().withinDistance(p2) || player.movement().didTeleport()) {
  13. mainPacket.addBits(1, 1);
  14. mainPacket.addBits(2, 3);
  15. it.remove();
  16. } else {
  17. updatePlayerMovement(p2, mainPacket);
  18. appendMasks(p2, updateBlock);
  19. }
  20. }
  21. /**
  22. * Add New Player
  23. */
  24. synchronized(Server.getServer().getWorld().players) {
  25. for(Player p2 : Server.getServer().getWorld().players) {
  26. if(p2 == null || player.equals(p2) || player.playerList().contains(p2) || !p2.location().withinDistance(player) || !p2.Details().isConnected()) {
  27. continue;
  28. }
  29. addNewPlayer(p2, mainPacket);
  30. p2.setForceUpdate(true);
  31. p2.appearance().setApply(true);
  32. appendMasks(p2, updateBlock);
  33. }
  34. }
  35. if(updateBlock.getLength() > 0) {
  36. mainPacket.addBits(11, 2047);
  37. }
  38. mainPacket.finishBitAccess();
  39. if(updateBlock.getLength() > 0) {
  40. mainPacket.addBytes(updateBlock.toPacket().getData());
  41. }
  42. player.Details().getSession().write(mainPacket.toPacket());
  43. }
Add Comment
Please, Sign In to add comment