Guest User

Source Code

a guest
Dec 29th, 2015
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 3.19 KB | None | 0 0
  1. ' New Packet Structure & Functions Library
  2. ' Developer: Tony Araújo (OrochiElf)
  3. ' Version: 0.0.1
  4. ' Compress/Tested Date: 27/12/2015 - 3PM | 15H (BRA)
  5.  
  6. Public Class Packet
  7.     Public packetData As String = Nothing ' Armazena os valores em uma linha de texto
  8.  
  9.     Private readerPos As Integer = 1 ' Início da leitura dos valores da linha de texto
  10.  
  11.     Public Sub New(ByVal _packetData As String)
  12.         Me.packetData = _packetData
  13.     End Sub
  14.  
  15.     Public Function write(ByVal _writeValue As Object) ' Escreve um novo valor na memoria do packet
  16.         If Me.packetData = Nothing Then
  17.             Me.packetData = "|"
  18.         End If
  19.         Me.packetData = Me.packetData & _writeValue.ToString & "|"
  20.         Return True
  21.     End Function
  22.  
  23.     Public Function read(ByVal index As Integer) ' Faz leitura e separação de cada valor da memoria
  24.         If Me.packetData.ToString = Nothing Then
  25.             Return False
  26.         End If
  27.  
  28.         Dim packetValues As String() = Me.packetData.Split(New Char() {"|"})
  29.         If index > 0 Then
  30.             Return packetValues(index).ToString
  31.         End If
  32.         Return packetValues.Length
  33.     End Function
  34.  
  35.     Public Function length() As Integer ' retorna o tamanho total do packet
  36.         Return read(0)
  37.     End Function
  38.  
  39.     Public Function readInteger() As Integer ' retorna um valor numérico de dentro do packet de acordo com a posição do leitor
  40.         Dim retInt As New Integer
  41.  
  42.         If readerPos > read(0) Then
  43.             retInt = read(readerPos)
  44.             Me.readerPos += 1
  45.             Return retInt
  46.         End If
  47.         Me.readerPos = 0
  48.         Return Nothing
  49.     End Function
  50.  
  51.     Public Function readString() As String ' ' retorna um valor de texto de dentro do packet de acordo com a posição do leitor
  52.         Dim retStr As String
  53.  
  54.         If readerPos < read(0) Then
  55.             retStr = read(readerPos)
  56.             Me.readerPos += 1
  57.             Return retStr
  58.         End If
  59.         Me.readerPos = 0
  60.         Return Nothing
  61.     End Function
  62.  
  63.     Public Function readBoolean() As Boolean  ' retorna um valor booleano de dentro do packet de acordo com a posição do leitor
  64.         Dim retBool As New Boolean
  65.  
  66.         If readerPos < read(0) Then
  67.             retBool = read(readerPos)
  68.             Me.readerPos += 1
  69.             Return retBool
  70.         End If
  71.         Me.readerPos = 0
  72.         Return Nothing
  73.     End Function
  74.  
  75.     Public Function readPacket() As Packet ' retorna um valor em formato de packet do packet de acordo com a posição do leitor
  76.         Dim retPckt As New Packet("")
  77.  
  78.         If readerPos < read(0) Then
  79.             retPckt.write(read(readerPos))
  80.             Me.readerPos += 1
  81.             Return retPckt
  82.         End If
  83.         Me.readerPos = 0
  84.         Return Nothing
  85.     End Function
  86.  
  87.     Public Function toBytes() As Byte() ' transforma o packet em bytes
  88.         Dim retBytes() As Byte = System.Text.Encoding.UTF8.GetBytes(Me.packetData)
  89.         Return retBytes
  90.     End Function
  91.  
  92.     Public Function toPacket(ByVal _bytes As Byte()) ' transforma as bytes em packet
  93.         Me.packetData = System.Text.Encoding.UTF8.GetString(_bytes)
  94.         Return True
  95.     End Function
  96. End Class
Add Comment
Please, Sign In to add comment