当前位置: 首页>>代码示例>>C#>>正文


C# BigEndianStream类代码示例

本文整理汇总了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));
 }
开发者ID:dredge20,项目名称:c-raft,代码行数:8,代码来源:Packet.cs

示例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;
 }
开发者ID:dredge20,项目名称:c-raft,代码行数:8,代码来源:Packet.cs

示例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();
 }
开发者ID:Farkie,项目名称:c-raft,代码行数:12,代码来源:Packet.cs

示例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);
        }
开发者ID:Farkie,项目名称:c-raft,代码行数:51,代码来源:MapChunkPacket.cs

示例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);
        }
开发者ID:Farkie,项目名称:c-raft,代码行数:17,代码来源:MapChunkPacket.cs

示例6: Read

 public override void Read(BigEndianStream stream)
 {
     EntityId = stream.ReadInt();
     Yaw = stream.ReadSByte();
     Pitch = stream.ReadSByte();
 }
开发者ID:RevolutionSmythe,项目名称:c-raft,代码行数:6,代码来源:Packet.cs

示例7: Write

 public override void Write(BigEndianStream stream)
 {
     stream.Write(EntityId);
     stream.Write(Slot);
     stream.Write(ItemId);
     stream.Write(Durability);
 }
开发者ID:RevolutionSmythe,项目名称:c-raft,代码行数:7,代码来源:Packet.cs


注:本文中的BigEndianStream类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。