public byte[] ToBytes()
{
ByteBuffer byteBuffer = new ByteBuffer();
byteBuffer.WriteByte((Byte)PrefabName.Length);
byteBuffer.WriteString(PrefabName);
byteBuffer.WriteInt((int)(X * 100f));
byteBuffer.WriteInt((int)(Y * 100f));
byteBuffer.WriteInt((int)(Z * 100f));
byteBuffer.WriteShort((short)(RotationX * 100f));
byteBuffer.WriteShort((short)(RotationX * 100f));
byteBuffer.WriteShort((short)(RotationX * 100f));
byteBuffer.WriteShort((short)(ScaleX * 100f));
byteBuffer.WriteShort((short)(ScaleY * 100f));
byteBuffer.WriteShort((short)(ScaleZ * 100f));
byteBuffer.WriteByte((Byte)(type));
if (type != GameObjectTypes.Block)
{
return(byteBuffer.ToBytes());
}
byteBuffer.WriteByte((Byte)(ColliderType));
byteBuffer.WriteShort((Byte)(Radius * 100f));
if (ColliderType == ColliderTypes.CapsuleCollider)
{
byteBuffer.WriteShort((Byte)(Height * 100f));
}
return(byteBuffer.ToBytes());
}