public void TestEquipUpdate()
        {
            var m = new Mobile(0x1);

            m.DefaultMobileInit();

            var item = new Item(Serial.LastItem + 1)
            {
                Parent = m
            };

            Span <byte> data = new EquipUpdate(item).Compile();

            Span <byte> expectedData = stackalloc byte[]
            {
                0x2E,                   // Packet ID
                0x00, 0x00, 0x00, 0x00, // Serial
                0x00, 0x00,             // Item ID
                0x00, (byte)item.Layer,
                0x00, 0x00, 0x00, 0x00, // Parent Serial
                0x00, 0x00,             // Hue
            };

            item.Serial.CopyTo(expectedData.Slice(1, 4));
            ((ushort)item.ItemID).CopyTo(expectedData.Slice(5, 2));
            item.Parent.Serial.CopyTo(expectedData.Slice(9, 4));
            ((ushort)item.Hue).CopyTo(expectedData.Slice(13, 2));

            AssertThat.Equal(data, expectedData);
        }
Esempio n. 2
0
        public void TestEquipUpdate()
        {
            var m = new Mobile(0x1);

            m.DefaultMobileInit();

            var item = new Item(Serial.LastItem + 1)
            {
                Parent = m
            };

            var data = new EquipUpdate(item).Compile();

            Span <byte> expectedData = stackalloc byte[15];
            var         pos          = 0;

            expectedData.Write(ref pos, (byte)0x2E); // Packet ID
            expectedData.Write(ref pos, item.Serial);
            expectedData.Write(ref pos, (ushort)item.ItemID);

#if NO_LOCAL_INIT
            expectedData.Write(ref pos, (byte)0);
#else
            pos++;
#endif

            expectedData.Write(ref pos, (byte)item.Layer);
            expectedData.Write(ref pos, item.Parent.Serial);
            expectedData.Write(ref pos, (ushort)item.Hue);

            AssertThat.Equal(data, expectedData);
        }
Esempio n. 3
0
        public void TestEquipUpdate()
        {
            var m = new Mobile(0x1);

            m.DefaultMobileInit();

            var item = new Item(World.NewItem)
            {
                Parent = m
            };

            var expected = new EquipUpdate(item).Compile();

            using var ns = PacketTestUtilities.CreateTestNetState();
            ns.SendEquipUpdate(item);

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }