private Task PlayerSetRemoveBlockAsync(ISendingAsyncArgs args) { var data = (PlayerSetRemoveBlockAsyncArgs)args; switch (data.Mode) { case PlayerSetRemoveBlockMode.Place: { var pdata = (PlayerSetRemoveBlockDataPlace)data.Data; return(null); } case PlayerSetRemoveBlockMode.Dig: { var pdata = (PlayerSetRemoveBlockDataDig)data.Data; return(null); } case PlayerSetRemoveBlockMode.Remove: { var pdata = (PlayerSetRemoveBlockDataRemove)data.Data; return(SendPacketAsync(new SetBlockPacket { Coordinates = pdata.Location, BlockType = (byte)pdata.BlockID, Mode = (SetBlockMode)pdata.Mode })); } default: throw new Exception("PacketError"); } }
private Task SendMessageAsync(ISendingAsyncArgs args) { var data = (SendMessageAsyncArgs)args; return(SendPacketAsync(new MessagePacket { Message = data.Message })); }
public void DoSending(Type sendingType, ISendingAsyncArgs args) { var any = sendingType.GetTypeInfo().ImplementedInterfaces.Any(p => p == typeof(ISendingAsync)); if (!any) { throw new InvalidOperationException("AsyncSending type must implement MineLib.Network.IAsyncSending"); } SendingAsyncHandlers[sendingType](args).Wait(); }
private async Task ConnectToServerAsync(ISendingAsyncArgs args) { var data = (ConnectToServerAsyncArgs)args; State = ConnectionState.Joining; await SendPacketAsync(new HandshakePacket { Username = _minecraft.ClientUsername }); await SendPacketAsync(new LoginRequestPacket { ProtocolVersion = 14, Username = "******" }); }
private Task ConnectToServerAsync(ISendingAsyncArgs args) { var data = (ConnectToServerAsyncArgs)args; State = ConnectionState.Joining; return(SendPacketAsync(new PlayerIdentificationPacket { ProtocolVersion = 0x07, Username = _minecraft.ClientUsername, VerificationKey = _minecraft.AccessToken, UnUsed = 0x42 })); }
private Task PlayerMovedAsync(ISendingAsyncArgs args) { var data = (PlayerMovedAsyncArgs)args; switch (data.Mode) { case PlaverMovedMode.OnGround: { var pdata = (PlaverMovedDataOnGround)data.Data; return(null); } case PlaverMovedMode.Vector3: { var pdata = (PlaverMovedDataVector3)data.Data; return(null); } case PlaverMovedMode.YawPitch: { var pdata = (PlaverMovedDataYawPitch)data.Data; return(null); } case PlaverMovedMode.All: { var pdata = (PlaverMovedDataAll)data.Data; return(SendPacketAsync(new PositionAndOrientationPacket { Position = pdata.Vector3, Yaw = (byte)pdata.Yaw, Pitch = (byte)pdata.Pitch, PlayerID = 255 })); } default: throw new Exception("PacketError"); } }
private Task KeepAliveAsync(ISendingAsyncArgs args) { var data = (KeepAliveAsyncArgs)args; return(SendPacketAsync(new KeepAlivePacket())); }