Exemplo n.º 1
0
        public void MoveItemWillSendDragPacket()
        {
            AutoResetEvent are = new AutoResetEvent(false);

            void OnInternalPacketSentEvent(byte[] data, int length)
            {
                if (data[0] != 0x07)
                {
                    return;
                }

                int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4];

                Assert.AreEqual(0x00aabbcc, serial);

                are.Set();
            }

            Engine.InternalPacketSentEvent += OnInternalPacketSentEvent;

            Engine.Items.Add(new Item(0x00aabbcc)
            {
                Count = 50
            });

            ObjectCommands.MoveItem(0x00aabbcc, 0xaabbdd);

            bool result = are.WaitOne(5000);

            Assert.IsTrue(result);

            Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent;
        }