ServerType21.pm
上传用户:market2
上传日期:2018-11-18
资源大小:18786k
文件大小:2k
源码类别:

外挂编程

开发平台:

Windows_Unix

  1. #########################################################################
  2. #  OpenKore - Network subsystem
  3. #  This module contains functions for sending messages to the server.
  4. #
  5. #  This software is open source, licensed under the GNU General Public
  6. #  License, version 2.
  7. #  Basically, this means that you're allowed to modify and distribute
  8. #  this software. However, if you distribute modified versions, you MUST
  9. #  also distribute the source code.
  10. #  See http://www.gnu.org/licenses/gpl.html for the full license.
  11. #########################################################################
  12. # tRO (Thai) for 2008-09-16Ragexe12_Th
  13. # Servertype overview: http://www.openkore.com/wiki/index.php/ServerType
  14. package Network::Send::ServerType21;
  15. use strict;
  16. use Globals;
  17. use Network::Send::ServerType0;
  18. use base qw(Network::Send::ServerType0);
  19. use Log qw(error debug);
  20. use I18N qw(stringToBytes);
  21. use Utils qw(getTickCount getHex getCoordString);
  22. sub new {
  23.    my ($class) = @_;
  24.    return $class->SUPER::new(@_);
  25. }
  26. sub sendMove {
  27.    my $self = shift;
  28.    my $x = int scalar shift;
  29.    my $y = int scalar shift;
  30.    my $msg;
  31.    $msg = pack("C*", 0x85, 0x00) . getCoordString($x, $y, 1);
  32.    $self->sendToServer($msg);
  33.    debug "Sent move to: $x, $yn", "sendPacket", 2;
  34. }
  35. sub sendHomunculusMove {
  36. my $self = shift;
  37. my $homunID = shift;
  38. my $x = int scalar shift;
  39. my $y = int scalar shift;
  40. my $msg = pack("C*", 0x32, 0x02) . $homunID . getCoordString($x, $y, 1);
  41. $self->sendToServer($msg);
  42. debug "Sent Homunculus move to: $x, $yn", "sendPacket", 2;
  43. }
  44. 1;