public static AutoWalkPacket Parse(NetworkMessage message) { AutoWalkPacket packet = new AutoWalkPacket(); packet.Directions = new Queue<Direction>(); byte count = message.GetByte(); for (int i = 0; i < count; i++) { Direction direction; byte dir = message.GetByte(); switch (dir) { case 1: direction = Direction.East; break; case 2: direction = Direction.NorthEast; break; case 3: direction = Direction.North; break; case 4: direction = Direction.NorthWest; break; case 5: direction = Direction.West; break; case 6: direction = Direction.SouthWest; break; case 7: direction = Direction.South; break; case 8: direction = Direction.SouthEast; break; default: continue; } packet.Directions.Enqueue(direction); } return packet; }
public static LoginPacket Parse(NetworkMessage message) { LoginPacket packet = new LoginPacket(); packet.Os = message.GetUInt16(); // OS packet.Version = message.GetUInt16(); // version message.RSADecrypt(); message.GetByte(); // should be zero packet.XteaKey = new uint[4]; packet.XteaKey[0] = message.GetUInt32(); packet.XteaKey[1] = message.GetUInt32(); packet.XteaKey[2] = message.GetUInt32(); packet.XteaKey[3] = message.GetUInt32(); packet.GmMode = message.GetByte(); packet.AccountName = message.GetString(); packet.CharacterName = message.GetString(); packet.Password = message.GetString(); message.SkipBytes(6); // 841 specific (according to OT) return(packet); }
public static LoginPacket Parse(NetworkMessage message) { LoginPacket packet = new LoginPacket(); packet.Os = message.GetUInt16(); // OS packet.Version = message.GetUInt16(); // version message.RSADecrypt(); message.GetByte(); // should be zero packet.XteaKey = new uint[4]; packet.XteaKey[0] = message.GetUInt32(); packet.XteaKey[1] = message.GetUInt32(); packet.XteaKey[2] = message.GetUInt32(); packet.XteaKey[3] = message.GetUInt32(); packet.GmMode = message.GetByte(); packet.AccountName = message.GetString(); packet.CharacterName = message.GetString(); packet.Password = message.GetString(); message.SkipBytes(6); // 841 specific (according to OT) return packet; }
public static FightModesPacket Parse(NetworkMessage msg) { FightModesPacket p = new FightModesPacket(); p.FightMode = (FightMode)msg.GetByte(); p.ChaseMode = Convert.ToBoolean(msg.GetByte()); p.SafeMode = Convert.ToBoolean(msg.GetByte()); return(p); }
public static ItemUsePacket Parse(NetworkMessage message) { ItemUsePacket packet = new ItemUsePacket(); packet.FromLocation = message.GetLocation(); packet.SpriteId = message.GetUInt16(); packet.FromStackPosition = message.GetByte(); packet.Index = message.GetByte(); return packet; }
public static ItemUsePacket Parse(NetworkMessage message) { ItemUsePacket packet = new ItemUsePacket(); packet.FromLocation = message.GetLocation(); packet.SpriteId = message.GetUInt16(); packet.FromStackPosition = message.GetByte(); packet.Index = message.GetByte(); return(packet); }
public static AccountPacket Parse(NetworkMessage message) { AccountPacket packet = new AccountPacket(); packet.Os = message.GetUInt16(); // OS packet.Version = message.GetUInt16(); // version // File checks message.GetUInt32(); message.GetUInt32(); message.GetUInt32(); message.RSADecrypt(); message.GetByte(); // should be zero packet.XteaKey = new uint[4]; packet.XteaKey[0] = message.GetUInt32(); packet.XteaKey[1] = message.GetUInt32(); packet.XteaKey[2] = message.GetUInt32(); packet.XteaKey[3] = message.GetUInt32(); packet.AccountName = message.GetString(); // account name packet.Password = message.GetString(); // password return(packet); }
public static ContainerClosePacket Parse(NetworkMessage message) { ContainerClosePacket p = new ContainerClosePacket(); p.ContainerIndex = message.GetByte(); return(p); }
public static PlayerSpeechPacket Parse(NetworkMessage message) { PlayerSpeechPacket packet = new PlayerSpeechPacket(); packet.Speech = new Speech(); packet.Speech.Type = (SpeechType)message.GetByte(); switch (packet.Speech.Type) { case SpeechType.Private: case SpeechType.PrivateRed: case SpeechType.RuleViolationAnswer: packet.Speech.Receiver = message.GetString(); break; case SpeechType.ChannelYellow: case SpeechType.ChannelRed: case SpeechType.ChannelRedAnonymous: case SpeechType.ChannelWhite: packet.Speech.ChannelId = (ChatChannel)message.GetUInt16(); break; default: break; } packet.Speech.Message = message.GetString(); return(packet); }
public static PlayerSpeechPacket Parse(NetworkMessage message) { PlayerSpeechPacket packet = new PlayerSpeechPacket(); packet.Speech = new Speech(); packet.Speech.Type = (SpeechType)message.GetByte(); switch (packet.Speech.Type) { case SpeechType.Private: case SpeechType.PrivateRed: case SpeechType.RuleViolationAnswer: packet.Speech.Receiver = message.GetString(); break; case SpeechType.ChannelYellow: case SpeechType.ChannelRed: case SpeechType.ChannelRedAnonymous: case SpeechType.ChannelWhite: packet.Speech.ChannelId = (ChatChannel)message.GetUInt16(); break; default: break; } packet.Speech.Message = message.GetString(); return packet; }
public static LookAtPacket Parse(NetworkMessage message) { LookAtPacket packet = new LookAtPacket(); packet.Location = message.GetLocation(); packet.Id = message.GetUInt16(); packet.StackPosition = message.GetByte(); return(packet); }
public static LookAtPacket Parse(NetworkMessage message) { LookAtPacket packet = new LookAtPacket(); packet.Location = message.GetLocation(); packet.Id = message.GetUInt16(); packet.StackPosition = message.GetByte(); return packet; }
public static AutoWalkPacket Parse(NetworkMessage message) { AutoWalkPacket packet = new AutoWalkPacket(); packet.Directions = new Queue <Direction>(); byte count = message.GetByte(); for (int i = 0; i < count; i++) { Direction direction; byte dir = message.GetByte(); switch (dir) { case 1: direction = Direction.East; break; case 2: direction = Direction.NorthEast; break; case 3: direction = Direction.North; break; case 4: direction = Direction.NorthWest; break; case 5: direction = Direction.West; break; case 6: direction = Direction.SouthWest; break; case 7: direction = Direction.South; break; case 8: direction = Direction.SouthEast; break; default: continue; } packet.Directions.Enqueue(direction); } return(packet); }
public static ContainerOpenParentPacket Parse(NetworkMessage message) { ContainerOpenParentPacket p = new ContainerOpenParentPacket(); p.ContainerIndex = message.GetByte(); return p; }