Exemple #1
0
        protected void HandlePartyList(InPacket packet)
        {
            GroupType groupType = (GroupType)packet.ReadByte();

            packet.ReadByte();
            packet.ReadByte();
            packet.ReadByte();
            if (groupType.HasFlag(GroupType.GROUPTYPE_LFG))
            {
                packet.ReadByte();
                packet.ReadUInt32();
            }
            packet.ReadUInt64();
            packet.ReadUInt32();
            uint membersCount = packet.ReadUInt32();

            GroupMembersGuids.Clear();
            for (uint index = 0; index < membersCount; index++)
            {
                packet.ReadCString();
                UInt64 memberGuid = packet.ReadUInt64();
                GroupMembersGuids.Add(memberGuid);
                packet.ReadByte();
                packet.ReadByte();
                packet.ReadByte();
                packet.ReadByte();
            }
            GroupLeaderGuid = packet.ReadUInt64();
        }
Exemple #2
0
        protected void HandleMessage(InPacket packet)
        {
            var    chatType     = (Client.Chat.Definitions.ChatMessageType)packet.ReadByte();
            var    language     = (Client.Chat.Definitions.Language)packet.ReadInt32();
            UInt64 senderGuid   = packet.ReadUInt64();
            var    unkInt       = packet.ReadUInt32();
            var    receiverGuid = packet.ReadUInt64();
            UInt32 messageLen   = packet.ReadUInt32();
            string message      = packet.ReadCString();

            Console.WriteLine(chatType + "." + language + "." + senderGuid + "." + message);
            if (message == "heal")
            {
                var response = new OutPacket(WorldCommand.CMSG_CAST_SPELL);
                response.Write((Byte)1);
                response.Write((UInt32)2050);
                response.Write((Byte)0x00000000);
                response.Write((UInt32)0x00000000);

                SendPacket(response);
                Console.WriteLine("SendPacket Heal!");
            }
            else if (message == "targetme")
            {
                TargetLeader();
            }
        }
Exemple #3
0
        public Character(InPacket packet)
        {
            GUID    = packet.ReadUInt64();
            Name    = packet.ReadCString();
            Race    = (Race)packet.ReadByte();
            Class   = (Class)packet.ReadByte();
            Gender  = (Gender)packet.ReadByte();
            Bytes   = packet.ReadBytes(5);
            Level   = packet.ReadByte();
            ZoneId  = packet.ReadUInt32();
            MapId   = packet.ReadUInt32();
            X       = packet.ReadSingle();
            Y       = packet.ReadSingle();
            Z       = packet.ReadSingle();
            GuildId = packet.ReadUInt32();
            Flags   = packet.ReadUInt32();
            packet.ReadUInt32();    // customize (rename, etc)
            packet.ReadByte();      // first login
            PetInfoId   = packet.ReadUInt32();
            PetLevel    = packet.ReadUInt32();
            PetFamilyId = packet.ReadUInt32();

            // read items
            for (int i = 0; i < 19; ++i)
            {
                packet.ReadUInt32();
                packet.ReadByte();
                packet.ReadUInt32();    // ???
            }

            // read bags
            for (int i = 0; i < 4; ++i)
            {
                packet.ReadUInt32();
                packet.ReadByte();
                packet.ReadUInt32();
            }
        }