本文整理汇总了C#中BigEndianStream类的典型用法代码示例。如果您正苦于以下问题:C# BigEndianStream类的具体用法?C# BigEndianStream怎么用?C# BigEndianStream使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
BigEndianStream类属于命名空间,在下文中一共展示了BigEndianStream类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Write
public override void Write(BigEndianStream stream)
{
stream.Write(EntityId);
stream.Write(Type);
stream.Write((int)(X * 32));
stream.Write((int)(Y * 32));
stream.Write((int)(Z * 32));
}
示例2: Read
public override void Read(BigEndianStream stream)
{
EntityId = stream.ReadInt();
Type = stream.ReadSByte();
X = (double)stream.ReadInt() / 32.0d;
Y = (double)stream.ReadInt() / 32.0d;
Z = (double)stream.ReadInt() / 32.0d;
}
示例3: Read
public override void Read(BigEndianStream stream)
{
EntityId = stream.ReadInt();
Type = (ObjectType)stream.ReadSByte();
X = (double)stream.ReadInt() / 32.0d; // ((double)intX / 32.0d) => representation of X as double
Y = (double)stream.ReadInt() / 32.0d;
Z = (double)stream.ReadInt() / 32.0d;
UnknownFlag = stream.ReadInt();
UnknownA = stream.ReadShort();
UnknownB = stream.ReadShort();
UnknownC = stream.ReadShort();
}
示例4: Write
public override void Write(BigEndianStream stream)
{
stream.Write(X);
stream.Write(Y);
stream.Write(Z);
stream.Write(SizeX);
stream.Write(SizeY);
stream.Write(SizeZ);
int o = 16 * 16 * 128;
byte[] data = new byte[o * 5 / 2];
int i = 0;
for (int x = 0; x < 16; x++)
{
for (int z = 0; z < 16; z++)
{
for (int y = 0; y < 128; y++)
{
int s = ((i + 1) & 1) * 4;
int ofst = i;
data[ofst] = Chunk[x, y, z];
ofst = i / 2 + o * 2 / 2;
data[ofst] = unchecked((byte)(data[ofst] | (Chunk.GetData(x, y, z) << s)));
ofst = i / 2 + o * 3 / 2;
data[ofst] = unchecked((byte)(data[ofst] | (Chunk.GetBlockLight(x, y, z) << s)));
ofst = i / 2 + o * 4 / 2;
data[ofst] = unchecked((byte)(data[ofst] | (Chunk.GetSkyLight(x, y, z) << s)));
i++;
}
}
}
byte[] comp = new byte[o * 5];
int len;
Deflater deflater = new Deflater(0);
try
{
deflater.setInput(data);
deflater.finish();
len = deflater.deflate(comp);
}
finally
{
deflater.end();
}
stream.Write(len);
stream.Write(comp, 0, len);
}
示例5: Read
public override void Read(BigEndianStream stream)
{
int posX = stream.ReadInt();
short posY = stream.ReadShort();
int posZ = stream.ReadInt();
byte sizeX = (byte)(stream.ReadByte() + 1);
byte sizeY = (byte)(stream.ReadByte() + 1);
byte sizeZ = (byte)(stream.ReadByte() + 1);
int o = sizeX * sizeY * sizeZ;
Chunk = new Chunk(null, posX, posZ);
int len = stream.ReadInt();
byte[] comp = new byte[len];
byte[] data = new byte[o * 5 / 2];
len = stream.Read(comp, 0, len);
}
示例6: Read
public override void Read(BigEndianStream stream)
{
EntityId = stream.ReadInt();
Yaw = stream.ReadSByte();
Pitch = stream.ReadSByte();
}
示例7: Write
public override void Write(BigEndianStream stream)
{
stream.Write(EntityId);
stream.Write(Slot);
stream.Write(ItemId);
stream.Write(Durability);
}