public virtual bool CheckPassiveDetect(Mobile m) { if (Visible && 0.05 > Utility.RandomDouble()) { if (m.NetState != null) { Packet p = new MessageLocalized(Serial, ItemID, MessageType.Regular, 0x65, 3, 500813, Name, string.Empty); p.Acquire(); m.NetState.Send(p); Packet.Release(p); return(true); } } return(false); }
public void TestMessageLocalized() { Serial serial = (Serial)0x1024; var graphic = 0x100; var messageType = MessageType.Label; var hue = 1024; var font = 3; var number = 150000; var name = "Stuff"; var args = "Arguments"; var expected = new MessageLocalized( serial, graphic, messageType, hue, font, number, name, args ).Compile(); var ns = PacketTestUtilities.CreateTestNetState(); ns.SendMessageLocalized( serial, graphic, messageType, hue, font, number, name, args ); var result = ns.SendPipe.Reader.TryRead(); AssertThat.Equal(result.Buffer[0].AsSpan(0), expected); }
public void TestMessageLocalized() { Serial serial = 0x1; var graphic = 0x100; var messageType = MessageType.Label; var hue = 1024; var font = 3; var number = 150000; var name = "Stuff"; var args = "Arguments"; var data = new MessageLocalized( serial, graphic, messageType, hue, font, number, name, args ).Compile(); Span <byte> expectedData = stackalloc byte[50 + args.Length * 2]; var pos = 0; expectedData.Write(ref pos, (byte)0xC1); // Packet ID expectedData.Write(ref pos, (ushort)expectedData.Length); // Length expectedData.Write(ref pos, serial); expectedData.Write(ref pos, (ushort)graphic); expectedData.Write(ref pos, (byte)messageType); expectedData.Write(ref pos, (ushort)hue); expectedData.Write(ref pos, (ushort)font); expectedData.Write(ref pos, number); expectedData.WriteAsciiFixed(ref pos, name, 30); expectedData.WriteLittleUniNull(ref pos, args); AssertThat.Equal(data, expectedData); }