Imports RebirthAPI.Network
Namespace Dofus.Network.Messages.Connection
Public Class SelectedServerDataMessage
Inherits NetworkMessage
Public Overrides Property ProtocolID As UInteger = 42
Private _ServerId As UShort
Private _Address As String
Private _Port As UShort
Private _CanCreateNewCharacter As Boolean
Private _Ticket As SByte()
Public Property [ServerId] As UShort
Get
Return Me._ServerId
End Get
Set(value As UShort)
Me._ServerId = value
End Set
End Property
Public Property [Address] As String
Get
Return Me._Address
End Get
Set(value As String)
Me._Address = value
End Set
End Property
Public Property [Port] As UShort
Get
Return Me._Port
End Get
Set(value As UShort)
Me._Port = value
End Set
End Property
Public Property [CanCreateNewCharacter] As Boolean
Get
Return Me._CanCreateNewCharacter
End Get
Set(value As Boolean)
Me._CanCreateNewCharacter = value
End Set
End Property
Public Property [Ticket] As SByte()
Get
Return Me._Ticket
End Get
Set(value As SByte())
Me._Ticket = value
End Set
End Property
Public Overrides Sub Serialize(ByVal Writer As DofusMessage)
Writer.WriteVaruhshort(Me._ServerId)
Writer.WriteString(Me._Address)
Writer.WriteUInt16(Me._Port)
Writer.WriteBoolean(Me._CanCreateNewCharacter)
Writer.WriteVarint(CInt(CUShort(Ticket.Length)))
For Each entry As SByte In Ticket
Writer.WriteSByte(entry)
Next
End Sub
Public Overrides Sub Deserialize(ByVal Reader As DofusReader)
Me._ServerId = Reader.ReadVaruhshort
Me._Address = Reader.ReadString
Me._Port = Reader.ReadUInt16
Me._CanCreateNewCharacter = Reader.ReadBoolean
Dim limit = CUShort(Reader.ReadVarInt())
_Ticket = New SByte(limit - 1) {}
For i As Integer = 0 To limit - 1
_Ticket(i) = Reader.ReadSByte()
Next
End Sub
End Class
End Namespace