183 lines
3 KiB
C#
183 lines
3 KiB
C#
using SRMultiplayer;
|
|
using UnityEngine;
|
|
|
|
namespace Lidgren.Network
|
|
{
|
|
public partial class NetBuffer
|
|
{
|
|
public void Write(Vector2 vector)
|
|
{
|
|
Write(vector.x);
|
|
Write(vector.y);
|
|
}
|
|
|
|
public Vector2 ReadVector2()
|
|
{
|
|
return new Vector2(
|
|
x: ReadSingle(),
|
|
y: ReadSingle());
|
|
}
|
|
|
|
public void Write(Vector3 vector)
|
|
{
|
|
Write(vector.x);
|
|
Write(vector.y);
|
|
Write(vector.z);
|
|
}
|
|
|
|
public Vector3 ReadVector3()
|
|
{
|
|
return new Vector3(
|
|
x: ReadSingle(),
|
|
y: ReadSingle(),
|
|
z: ReadSingle());
|
|
}
|
|
|
|
public void Write(Vector4 vector)
|
|
{
|
|
Write(vector.x);
|
|
Write(vector.y);
|
|
Write(vector.z);
|
|
Write(vector.w);
|
|
}
|
|
|
|
public Vector4 ReadVector4()
|
|
{
|
|
return new Vector4(
|
|
x: ReadSingle(),
|
|
y: ReadSingle(),
|
|
z: ReadSingle(),
|
|
w: ReadSingle());
|
|
}
|
|
|
|
public void Write(Quaternion quaternion)
|
|
{
|
|
uint comp = Compression.CompressQuaternion(quaternion);
|
|
Write(comp);
|
|
}
|
|
|
|
public Quaternion ReadQuaternion()
|
|
{
|
|
return Compression.DecompressQuaternion(ReadUInt32());
|
|
}
|
|
|
|
public void WriteRgbColor(Color32 color)
|
|
{
|
|
Write(color.r);
|
|
Write(color.g);
|
|
Write(color.b);
|
|
}
|
|
|
|
public Color32 ReadRgbColor()
|
|
{
|
|
return new Color32(
|
|
r: ReadByte(),
|
|
g: ReadByte(),
|
|
b: ReadByte(),
|
|
a: byte.MaxValue);
|
|
}
|
|
|
|
public void WriteRgbaColor(Color32 color)
|
|
{
|
|
Write(color.r);
|
|
Write(color.g);
|
|
Write(color.b);
|
|
Write(color.a);
|
|
}
|
|
|
|
public Color32 ReadRgbaColor()
|
|
{
|
|
return new Color32(
|
|
r: ReadByte(),
|
|
g: ReadByte(),
|
|
b: ReadByte(),
|
|
a: ReadByte());
|
|
}
|
|
|
|
public void Write(Ray ray)
|
|
{
|
|
Write(ray.direction);
|
|
Write(ray.origin);
|
|
}
|
|
|
|
public Ray ReadRay()
|
|
{
|
|
return new Ray(
|
|
direction: ReadVector3(),
|
|
origin: ReadVector3());
|
|
}
|
|
|
|
public void Write(Plane plane)
|
|
{
|
|
Write(plane.normal);
|
|
Write(plane.distance);
|
|
}
|
|
|
|
public Plane ReadPlane()
|
|
{
|
|
return new Plane(
|
|
inNormal: ReadVector3(),
|
|
d: ReadSingle());
|
|
}
|
|
|
|
public void Write(Matrix4x4 matrix)
|
|
{
|
|
Write(matrix.m00);
|
|
Write(matrix.m01);
|
|
Write(matrix.m02);
|
|
Write(matrix.m03);
|
|
Write(matrix.m10);
|
|
Write(matrix.m11);
|
|
Write(matrix.m12);
|
|
Write(matrix.m13);
|
|
Write(matrix.m20);
|
|
Write(matrix.m21);
|
|
Write(matrix.m22);
|
|
Write(matrix.m23);
|
|
Write(matrix.m30);
|
|
Write(matrix.m31);
|
|
Write(matrix.m32);
|
|
Write(matrix.m33);
|
|
}
|
|
|
|
public Matrix4x4 ReadMatrix4X4()
|
|
{
|
|
return new Matrix4x4
|
|
{
|
|
m00 = ReadSingle(),
|
|
m01 = ReadSingle(),
|
|
m02 = ReadSingle(),
|
|
m03 = ReadSingle(),
|
|
m10 = ReadSingle(),
|
|
m11 = ReadSingle(),
|
|
m12 = ReadSingle(),
|
|
m13 = ReadSingle(),
|
|
m20 = ReadSingle(),
|
|
m21 = ReadSingle(),
|
|
m22 = ReadSingle(),
|
|
m23 = ReadSingle(),
|
|
m30 = ReadSingle(),
|
|
m31 = ReadSingle(),
|
|
m32 = ReadSingle(),
|
|
m33 = ReadSingle()
|
|
};
|
|
}
|
|
|
|
public void Write(Rect rect)
|
|
{
|
|
Write(rect.xMin);
|
|
Write(rect.yMin);
|
|
Write(rect.width);
|
|
Write(rect.height);
|
|
}
|
|
|
|
public Rect ReadRect()
|
|
{
|
|
return new Rect(
|
|
x: ReadSingle(),
|
|
y: ReadSingle(),
|
|
width: ReadSingle(),
|
|
height: ReadSingle());
|
|
}
|
|
}
|
|
}
|