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); }
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); }
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); }