예제 #1
0
        public static void ReadSetInfo(Parser packet)
        {
            packet.ReadPackedGuid("SetID");
            packet.ReadInt32("Index");
            packet.ReadString("SetName");
            packet.ReadString("SetIcon");

            for (var j = 0; j < 19; j++)
                packet.ReadPackedGuid("Item GUID");
        }
예제 #2
0
 public void HandleRemove_Invite(Parser packet)
 {
     WriteLine("Removee'sGuid: " + packet.ReadPackedGuid());
     WriteLine("Removee'sInviteID: " + packet.ReadInt64());
     WriteLine("unk: " + packet.ReadInt64());
     WriteLine("EventID: " + packet.ReadInt64());
 }
예제 #3
0
 public void HandleEventInviteAlert(Parser packet)
 {
     WriteLine("EventID: " + packet.ReadInt64());
     WriteLine("EventName: " + packet.ReadString());
     WriteLine("EventTime: " + packet.ReadTime());
     WriteLine("EventFlags: " + packet.ReadInt32());
     WriteLine("EventType: " + packet.ReadInt32());
     WriteLine("DungeonID: " + packet.ReadInt32());
     WriteLine("unk: " + packet.ReadInt32());
     WriteLine("InviteID: " + packet.ReadInt64());
     WriteLine("InviteStatus: " + packet.ReadInt8());
     WriteLine("Mod_Type: " + packet.ReadInt8());
     WriteLine("unk: " + packet.ReadInt32());
     WriteLine("Inviter_1: " + packet.ReadPackedGuid());
     WriteLine("Inviter_2: " + packet.ReadPackedGuid());
 }
예제 #4
0
        public void HandleDestructibleBuildingDamage(Parser packet)
        {
            var goGuid = packet.ReadPackedGuid();
            WriteLine("GO GUID: " + goGuid);

            var vehGuid = packet.ReadPackedGuid();
            WriteLine("Vehicle GUID: " + vehGuid);

            var plrGuid = packet.ReadPackedGuid();
            WriteLine("Player GUID: " + plrGuid);

            var dmg = packet.ReadInt32();
            WriteLine("Damage: " + dmg);

            var spellId = packet.ReadInt32();
            WriteLine("Spell ID: " + spellId);
        }
예제 #5
0
        public void HandleAddEvent(Parser packet)
        {
            WriteLine("Name: " + packet.ReadString());
            WriteLine("Description: " + packet.ReadString());
            WriteLine("Type: " + packet.ReadInt8());
            WriteLine("Repeat_Option: " + packet.ReadInt8());
            WriteLine("maxSize: " + packet.ReadInt32());
            WriteLine("dungeonID: " + packet.ReadInt32());
            WriteLine("time: " + packet.ReadPackedTime());
            WriteLine("lockoutTime: " + packet.ReadInt32());
            WriteLine("flags: " + packet.ReadInt32());

            var inviteCount = packet.ReadInt32("inviteCount");
            WriteLine("");
            WriteLine("Invited Players");

            for (var i = 0; i < inviteCount; ++i)
            {
                WriteLine(" PlayerGuid: " + packet.ReadPackedGuid());
                WriteLine(" inviteStatus: " + packet.ReadInt8());
                WriteLine(" modType: " + packet.ReadInt8());
                WriteLine("");
            }
        }
예제 #6
0
        public void HandleThreatlistUpdate(Parser packet)
        {
            var guid = packet.ReadPackedGuid();
            WriteLine("GUID: " + guid);

            if (Packet.Code == OpCodes.SMSG_HIGHEST_THREAT_UPDATE)
            {
                var newhigh = packet.ReadPackedGuid();
                WriteLine("New Highest: " + newhigh);
            }

            var count = packet.ReadUInt32();
            WriteLine("Size: " + count);
            for (int i = 0; i < count; i++)
            {
                var unit = packet.ReadPackedGuid();
                WriteLine("Hostile: " + unit);
                var threat = packet.ReadUInt32();
                // No idea why, but this is in core.
                /*if (packet.GetOpcode() == Opcode.SMSG_THREAT_UPDATE)
                    threat *= 100;*/
                WriteLine("Threat: " + threat);
            }
        }
예제 #7
0
        public void HandleRemoveThreatlist(Parser packet)
        {
            var guid = packet.ReadPackedGuid();
            WriteLine("GUID: " + guid);

            if (Packet.Code == OpCodes.SMSG_THREAT_REMOVE)
            {
                var victim = packet.ReadPackedGuid();
                WriteLine("Victim GUID: " + victim);
            }
        }
예제 #8
0
        public void HandleNameQueryResponse(Parser packet)
        {
            var pguid = packet.ReadPackedGuid();
            WriteLine("GUID: " + pguid);

            var end = packet.ReadBoolean();
            WriteLine("Name Found: " + !end);

            if (end)
                return;

            var name = packet.ReadCString();
            WriteLine("Name: " + name);

            var realmName = packet.ReadCString();
            WriteLine("Realm Name: " + realmName);

            var race = (Race)packet.ReadByte();
            WriteLine("Race: " + race);

            var gender = (Gender)packet.ReadByte();
            WriteLine("Gender: " + gender);

            var cClass = (Class)packet.ReadByte();
            WriteLine("Class: " + cClass);

            var decline = packet.ReadBoolean();
            WriteLine("Name Declined: " + decline);

            if (!decline)
                return;

            for (var i = 0; i < 5; i++)
            {
                var declinedName = packet.ReadCString();
                WriteLine("Declined Name " + i + ": " + declinedName);
            }
        }
예제 #9
0
        public void HandleSenddCalendar(Parser packet)
        {
            var inviteCount = packet.ReadInt32("InviteCount");
            for (var i = 0; i < inviteCount; ++i)
            {
                WriteLine("  EventID: " + packet.ReadInt64());
                WriteLine("  InviteID: " + packet.ReadInt64());
                WriteLine("  InviteStats: " + packet.ReadInt8());
                WriteLine("  Mod_Type: " + packet.ReadInt8());
                WriteLine("  Invite_Type: " + packet.ReadInt8());
                WriteLine("  InvitedBy: " + packet.ReadPackedGuid());
                WriteLine("");
            }

            var EventCount = packet.ReadInt32("EventCount");
            for (var i = 0; i < EventCount; ++i)
            {
                WriteLine("  EventID: " + packet.ReadInt64());
                WriteLine("  EventName: " + packet.ReadString());
                WriteLine("  EventModFlags: " + packet.ReadInt32());
                WriteLine("  EventDate: " + packet.ReadPackedTime());
                WriteLine("  EventFlags: " + packet.ReadInt32());
                WriteLine("  DungeonID: " + packet.ReadInt32());
                WriteLine("  unk: " + packet.ReadInt64());
                WriteLine("  InvitedBy: " + packet.ReadPackedGuid());
                WriteLine("");
            }

            WriteLine("CurrentUnixTime: " + packet.ReadTime());
            WriteLine("CurrentPacketTime: " + packet.ReadPackedTime());

            var InstanceResetCount = packet.ReadInt32("InstanceResetCount");
            for (var i = 0; i < InstanceResetCount; ++i)
            {
                WriteLine("  MapID: " + packet.ReadInt32());
                WriteLine("  Difficulty: " + packet.ReadInt32());
                WriteLine("  ResetTime: " + packet.ReadTime());
                WriteLine("  RaidID: " + packet.ReadInt64());
                WriteLine("");
            }

            WriteLine("BaseTime: " + packet.ReadTime());

            var RaidResetCount = packet.ReadInt32("RaidResetCount");
            for (var i = 0; i < RaidResetCount; ++i)
            {
                WriteLine("  MapID: " + packet.ReadInt32());
                WriteLine("  ResetTime: " + packet.ReadTime());
                WriteLine("  NegativeOffset: " + packet.ReadInt32());
                WriteLine("");
            }

            var Counter = packet.ReadInt32();
            WriteLine("Counter: " + Counter + "(Never seen this larger than 0)");
        }
예제 #10
0
        public void HandleSendEvent(Parser packet)
        {
            WriteLine("Invite_Type: " + packet.ReadInt8());
            WriteLine("Creator " + packet.ReadPackedGuid());
            WriteLine("EventID: " + packet.ReadInt32());
            WriteLine("unk: " + packet.ReadInt32());
            WriteLine("EventName: " + packet.ReadString());
            WriteLine("EventDescription: " + packet.ReadString());
            WriteLine("Event_Type: " + packet.ReadInt8());
            WriteLine("Repeat_Option: " + packet.ReadInt8());
            WriteLine("MaxSize: " + packet.ReadInt32());
            WriteLine("DungeonID: " + packet.ReadInt32());
            WriteLine("EventFlags: " + packet.ReadInt32());
            WriteLine("EventTime: " + packet.ReadPackedTime());
            WriteLine("LockOutTime: " + packet.ReadInt32());
            WriteLine("unk: " + packet.ReadInt32());
            WriteLine("unk: " + packet.ReadInt32());

            var inviteCount = packet.ReadInt32("InviteCount");
            for (var i = 0; i < inviteCount; ++i)
            {
                WriteLine("  PlayerGuid: " + packet.ReadPackedGuid());
                WriteLine("  PlayerLevel: " + packet.ReadInt8());
                WriteLine("  InviteStatus: " + packet.ReadInt8());
                WriteLine("  Mod_Type: " + packet.ReadInt8());
                WriteLine("  unk: " + packet.ReadInt8());
                WriteLine("  inviteID: " + packet.ReadInt64());
                WriteLine("  unk: " + packet.ReadInt8());
                WriteLine("  unk: " + packet.ReadInt32());
                WriteLine("");
            }
        }