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


C# Common.MinecraftStream类代码示例

本文整理汇总了C#中Craft.Net.Common.MinecraftStream的典型用法代码示例。如果您正苦于以下问题:C# MinecraftStream类的具体用法?C# MinecraftStream怎么用?C# MinecraftStream使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


MinecraftStream类属于Craft.Net.Common命名空间,在下文中一共展示了MinecraftStream类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Log

 public Log(StreamWriter stream, ProxySettings settings)
 {
     Stream = stream;
     MemoryStream = new MemoryStream();
     MinecraftStream = new MinecraftStream(MemoryStream);
     Settings = settings;
 }
开发者ID:Niha911,项目名称:SMProxy,代码行数:7,代码来源:Log.cs

示例2: ReadPacket

 public NetworkMode ReadPacket(MinecraftStream stream, NetworkMode mode, PacketDirection direction)
 {
     ProtocolVersion = stream.ReadVarInt();
     ServerHostname = stream.ReadString();
     ServerPort = stream.ReadUInt16();
     NextState = (NetworkMode)stream.ReadVarInt();
     return NextState;
 }
开发者ID:umby24,项目名称:Craft.Net,代码行数:8,代码来源:Packets.cs

示例3: WritePacket

 public NetworkMode WritePacket(MinecraftStream stream, NetworkMode mode, PacketDirection direction)
 {
     stream.WriteVarInt(ProtocolVersion);
     stream.WriteString(ServerHostname);
     stream.WriteUInt16(ServerPort);
     stream.WriteVarInt((int)NextState);
     return NextState;
 }
开发者ID:umby24,项目名称:Craft.Net,代码行数:8,代码来源:Packets.cs

示例4: ReadPacket

 public void ReadPacket(MinecraftStream stream)
 {
     EntityId = stream.ReadInt32();
     LevelType = stream.ReadString();
     GameMode = (GameMode)stream.ReadUInt8();
     Dimension = (Dimension)stream.ReadInt8();
     Difficulty = (Difficulty)stream.ReadUInt8();
     Discarded = stream.ReadUInt8();
     MaxPlayers = stream.ReadUInt8();
 }
开发者ID:nevercast,项目名称:Craft.Net,代码行数:10,代码来源:Packets.cs

示例5: Proxy

 public Proxy(NetworkStream client, NetworkStream server, Log log, ProxySettings settings)
 {
     Client = client;
     Server = server;
     Log = log;
     ClientStream = new MinecraftStream(new BufferedStream(Client));
     ServerStream = new MinecraftStream(new BufferedStream(Server));
     CryptoServiceProvider = new RSACryptoServiceProvider(1024);
     ServerKey = CryptoServiceProvider.ExportParameters(true);
     Settings = settings;
 }
开发者ID:SirCmpwn,项目名称:SMProxy,代码行数:11,代码来源:Proxy.cs

示例6: WritePacket

 public void WritePacket(MinecraftStream stream)
 {
     stream.WriteUInt8(Id);
     stream.WriteInt32(EntityId);
     stream.WriteString(LevelType);
     stream.WriteUInt8((byte)GameMode);
     stream.WriteInt8((sbyte)Dimension);
     stream.WriteUInt8((byte)Difficulty);
     stream.WriteUInt8(Discarded);
     stream.WriteUInt8(MaxPlayers);
 }
开发者ID:nevercast,项目名称:Craft.Net,代码行数:11,代码来源:Packets.cs

示例7: MessageRecieved

 public override void MessageRecieved(RemoteClient client, byte[] data)
 {
     if (ServerPingReceived != null)
     {
         var stream = new MinecraftStream(new MemoryStream(data));
         var eventArgs = new ServerPingEventArgs(
             stream.ReadInt32(),
             stream.ReadString(),
             stream.ReadInt32());
         ServerPingReceived(this, eventArgs);
     }
 }
开发者ID:Booser,项目名称:Craft.Net,代码行数:12,代码来源:ServerPingChannel.cs

示例8: Connect

 public void Connect(IPEndPoint endPoint)
 {
     if (Client != null && Client.Connected)
         throw new InvalidOperationException("Already connected to a server!");
     EndPoint = endPoint;
     Client = new TcpClient();
     Client.Connect(EndPoint);
     NetworkStream = Client.GetStream();
     Stream = new MinecraftStream(new BufferedStream(NetworkStream));
     NetworkWorkerThread = new Thread(NetworkWorker);
     NetworkWorkerThread.Start();
     var handshake = new HandshakePacket(PacketReader.ProtocolVersion, Session.SelectedProfile.Name,
         EndPoint.Address.ToString(), EndPoint.Port);
     SendPacket(handshake);
 }
开发者ID:nevercast,项目名称:Craft.Net,代码行数:15,代码来源:MinecraftClient.cs

示例9: FromStream

        public static MetadataDictionary FromStream(MinecraftStream stream)
        {
            var value = new MetadataDictionary();
            while (true)
            {
                byte key = stream.ReadUInt8();
                if (key == 127) break;

                byte type = (byte)((key & 0xE0) >> 5);
                byte index = (byte)(key & 0x1F);

                var entry = EntryTypes[type]();
                entry.FromStream(stream);
                entry.Index = index;

                value[index] = entry;
            }
            return value;
        }
开发者ID:Bitterholz,项目名称:Craft.Net,代码行数:19,代码来源:MetadataDictionary.cs

示例10: WriteTo

 public override void WriteTo(MinecraftStream stream, byte index)
 {
     stream.WriteUInt8(GetKey(index));
     stream.WriteInt16(Value.Id);
     if (Value.Id != -1)
     {
         stream.WriteInt8(Value.Count);
         stream.WriteInt16(Value.Metadata);
         if (Value.Nbt != null)
         {
             var file = new NbtFile(Value.Nbt);
             var data = file.SaveToBuffer(NbtCompression.GZip);
             stream.WriteInt16((short)data.Length);
             stream.WriteUInt8Array(data);
         }
         else
             stream.WriteInt16(-1);
     }
 }
开发者ID:Booser,项目名称:Craft.Net,代码行数:19,代码来源:MetadataSlot.cs

示例11: DoPing

 public static ServerPing DoPing(IPEndPoint endPoint)
 {
     var client = new TcpClient();
     client.Connect(endPoint);
     var stream = new MinecraftStream(client.GetStream());
     var ping = new ServerListPingPacket();
     ping.WritePacket(stream);
     var response = PacketReader.ReadPacket(stream);
     client.Close();
     // TODO: Handle old pings
     var pong = (DisconnectPacket)response;
     var parts = pong.Reason.Substring(3).Split('\0');
     var result = new ServerPing();
     result.ProtocolVersion = int.Parse(parts[0]);
     result.ServerVersion = parts[1];
     result.MotD = parts[2];
     result.CurrentPlayers = int.Parse(parts[3]);
     result.MaxPlayers = int.Parse(parts[4]);
     return result;
 }
开发者ID:nevercast,项目名称:Craft.Net,代码行数:20,代码来源:ServerPing.cs

示例12: FromStream

 public override void FromStream(MinecraftStream stream)
 {
     Value = stream.ReadInt32();
 }
开发者ID:Bitterholz,项目名称:Craft.Net,代码行数:4,代码来源:MetadataInt.cs

示例13: FromStream

 public override void FromStream(MinecraftStream stream)
 {
     Value = ItemStack.FromStream(stream);
 }
开发者ID:Booser,项目名称:Craft.Net,代码行数:4,代码来源:MetadataSlot.cs

示例14: WriteTo

 public override void WriteTo(MinecraftStream stream, byte index)
 {
     stream.WriteUInt8(GetKey(index));
     stream.WriteInt32(Value);
 }
开发者ID:Bitterholz,项目名称:Craft.Net,代码行数:5,代码来源:MetadataInt.cs


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