public VNScreenEffect(ScreenEffectType type) : base(0x70, 28) { m_Stream.Write((byte)0x04); m_Stream.Fill(8); m_Stream.Write((short)type); m_Stream.Fill(16); }
public ScreenEffect(ScreenEffectType type) : base(0x70, 28) { Stream.Write((byte)0x04); Stream.Fill(8); Stream.Write((short)type); Stream.Fill(16); }
public void TestScreenEffect(ScreenEffectType screenType) { var expected = new ScreenEffect(screenType).Compile(); using var ns = PacketTestUtilities.CreateTestNetState(); ns.SendScreenEffect(screenType); var result = ns.SendPipe.Reader.TryRead(); AssertThat.Equal(result.Buffer[0].AsSpan(0), expected); }
public static void SendScreenEffect(this NetState ns, ScreenEffectType type) { if (ns.CannotSendPackets()) { return; } var writer = new SpanWriter(stackalloc byte[28]); writer.Write((byte)0x70); // Packet ID writer.Write((byte)0x4); writer.Clear(8); writer.Write((ushort)type); writer.Clear(16); ns.Send(writer.Span); }
public static void SendScreenEffect(this NetState ns, ScreenEffectType type) { if (ns == null || !ns.GetSendBuffer(out var buffer)) { return; } var writer = new CircularBufferWriter(buffer); writer.Write((byte)0x70); // Packet ID writer.Write((byte)0x4); writer.Clear(8); writer.Write((ushort)type); writer.Clear(16); ns.Send(ref buffer, writer.Position); }