예제 #1
0
        public static void HandleAttackStartStart(Packet packet)
        {
            Misc.Guid creature = packet.ReadGuid("GUID");
            packet.ReadGuid("Victim GUID");

            if (creature.HasEntry() && creature.GetObjectType() == ObjectType.Unit)
            {
                CombatState combatState = new CombatState(packet.Time, packet.Number, "Attack Start");
                if (packet.SniffFileInfo.Stuffing.combatStates.ContainsKey(creature))
                    packet.SniffFileInfo.Stuffing.combatStates[creature].combateStates.Enqueue(combatState);
                else
                    packet.SniffFileInfo.Stuffing.combatStates.TryAdd(creature, new CombateStates(combatState));
            }
        }
예제 #2
0
        public static void HandleAttackStartStop(Packet packet)
        {
            Misc.Guid creature = packet.ReadPackedGuid("GUID");
            packet.ReadPackedGuid("Victim GUID");
            packet.ReadInt32("Unk int"); // Has something to do with facing?

            if (creature.GetEntry() != 0)
            {
                CombatState combatState = new CombatState(packet.Time, packet.Number, "Attack Stop");
                if (packet.SniffFileInfo.Stuffing.combatStates.ContainsKey(creature))
                    packet.SniffFileInfo.Stuffing.combatStates[creature].combateStates.Enqueue(combatState);
                else
                    packet.SniffFileInfo.Stuffing.combatStates.TryAdd(creature, new CombateStates(combatState));
            }
        }
예제 #3
0
 public CombateStates(CombatState combatState)
 {
     combateStates.Enqueue(combatState);
 }