Advertisement
Luciano_fuentes

Untitled

Nov 15th, 2017
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.72 KB | None | 0 0
  1. Option Explicit
  2.  
  3. Private Const TIEMPO_ESTATICO As Byte = 3
  4.  
  5. Private Type tNicks
  6. letras() As String
  7. cadenaFinal As String
  8. contadorLetras As Integer
  9. contador As Integer
  10. ultimaLetra As Byte
  11. posicion As Byte
  12. posicionLetra As Byte
  13. posicionFinal As Byte
  14. End Type
  15.  
  16. Private nicks() As tNicks
  17. Private cantidadNicks As Byte
  18.  
  19.  
  20. Sub addNick(ByVal name As String)
  21.  
  22. Dim lenght As Integer, i As Long
  23.  
  24. cantidadNicks = cantidadNicks + 1
  25. lenght = Len(name)
  26.  
  27. ReDim Preserve nicks(1 To cantidadNicks) As tNicks
  28. ReDim nicks(cantidadNicks).letras(1 To lenght) As String
  29.  
  30. With nicks(cantidadNicks)
  31.  
  32. For i = 1 To lenght
  33. .letras(i) = Mid$(name, i, 1)
  34. Next i
  35.  
  36. .posicionFinal = lenght
  37. .posicion = .posicionFinal
  38. .posicionLetra = .posicion
  39. End With
  40.  
  41. End Sub
  42.  
  43. Sub moveNicks()
  44.  
  45. Dim x As Long
  46.  
  47. For x = 1 To cantidadNicks
  48. With nicks(x)
  49.  
  50. If .contador > 0 Then
  51. .contador = .contador - 1
  52. If .contador = 0 Then
  53. .ultimaLetra = 0
  54. .cadenaFinal = vbNullString
  55. Else
  56. Exit Sub
  57. End If
  58. End If
  59.  
  60. .ultimaLetra = .ultimaLetra + 1
  61.  
  62. .cadenaFinal = .cadenaFinal & .letras(.ultimaLetra)
  63.  
  64. If .ultimaLetra = UBound(.letras()) Then .contador = TIEMPO_ESTATICO
  65.  
  66. 'Label1.Caption = .cadenaFinal
  67. End With
  68. Next x
  69.  
  70. End Sub
  71.  
  72. Sub effectNick()
  73.  
  74. Dim strTemp As String, strCadenaFinal As String, x As Long, i As Long
  75.  
  76. For x = 1 To cantidadNicks
  77.  
  78. With nicks(x)
  79.  
  80. If .ultimaLetra = 0 Then moveNicks
  81.  
  82.  
  83.  
  84. For i = 1 To .posicionLetra
  85. strTemp = strTemp & " "
  86. Next i
  87.  
  88. .posicionLetra = .posicionLetra - 1
  89.  
  90. strCadenaFinal = .cadenaFinal
  91. strCadenaFinal = Mid$(strCadenaFinal, .ultimaLetra)
  92. strCadenaFinal = strTemp & strCadenaFinal
  93.  
  94. If .ultimaLetra > 1 Then
  95. strCadenaFinal = Mid$(.cadenaFinal, 1, .ultimaLetra - 1) & strCadenaFinal
  96. End If
  97. Label1(x).Caption = strCadenaFinal
  98.  
  99. If .posicionLetra = 0 Then
  100. moveNicks
  101. .posicionLetra = .posicionFinal
  102. End If
  103. End With
  104.  
  105. Next x
  106.  
  107. End Sub
  108.  
  109. Private Sub Form_Load()
  110. Call addNick("Toyz")
  111. End Sub
  112.  
  113. Private Sub Timer1_Timer()
  114. Call effectNick
  115. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement