Advertisement
Guest User

Untitled

a guest
Sep 25th, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.03 KB | None | 0 0
  1. package org.hannes.net.packet;
  2.  
  3. import org.hannes.entity.Player;
  4. import org.hannes.net.RSBuffer;
  5. import org.hannes.net.packet.PacketHandler.Packet;
  6.  
  7. public class WalkingPacket implements Packet {
  8.  
  9. @Override
  10. public void handle(Player player, RSBuffer buffer, int packetId, int size) {
  11. if(packetId == 236) {
  12. size -= 14;
  13. }
  14. player.getWalkingQueue().reset();
  15.  
  16. final int steps = (size - 5) / 2;
  17. final int[][] path = new int[steps][2];
  18.  
  19. final boolean runSteps = buffer.readSignedByte() == 1;
  20. final int firstX = buffer.readUnsignedWord();
  21. final int firstY = buffer.readUnsignedWord();
  22.  
  23. for (int i = 0; i < steps; i++) {
  24. path[i][0] = buffer.readSignedByte();
  25. path[i][1] = buffer.readSignedByte();
  26. }
  27.  
  28. player.getWalkingQueue().setRunningQueue(runSteps);
  29. player.getWalkingQueue().addStep(firstX, firstY);
  30. for (int i = 0; i < steps; i++) {
  31. path[i][0] += firstX;
  32. path[i][1] += firstY;
  33. player.getWalkingQueue().addStep(path[i][0], path[i][1]);
  34. }
  35. player.getWalkingQueue().finish();
  36. }
  37.  
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement