public ProtocolExtensionPacket(PacketReader reader) : base(0xF0, "Protocol Extension Packet") { Subcommand = reader.ReadByte(); switch (Subcommand) { case SubcommandNegotiateFeatures: DisabledFeatures = (AssistantFeatures)reader.ReadUInt64(); break; } }
private void receiveSpellBookContents(PacketReader reader) { ushort unknown = reader.ReadUInt16(); // always 1 Serial serial = (Serial)reader.ReadInt32(); ushort itemID = reader.ReadUInt16(); ushort spellbookType = reader.ReadUInt16(); // 1==regular, 101=necro, 201=paladin, 401=bushido, 501=ninjitsu, 601=spellweaving ulong spellBitfields = reader.ReadUInt64(); // first bit of first byte = spell #1, second bit of first byte = spell #2, first bit of second byte = spell #8, etc Spellbook = new SpellbookData(serial, itemID, spellbookType, spellBitfields); }