Advertisement
fridich

Untitled

Nov 20th, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.31 KB | None | 0 0
  1. ''
  2. ' Handles the BlacksmithWeapons message.
  3.  
  4. Private Sub HandleBlacksmithWeapons()
  5. '***************************************************
  6. 'Author: Juan Martín Sotuyo Dodero (Maraxus)
  7. 'Last Modification: 05/17/06
  8. '
  9. '***************************************************
  10. If incomingData.length < 3 Then
  11. Err.Raise incomingData.NotEnoughDataErrCode
  12. Exit Sub
  13. End If
  14.  
  15. On Error GoTo ErrHandler
  16. 'This packet contains strings, make a copy of the data to prevent losses if it's not complete yet...
  17. Dim Buffer As New clsByteQueue
  18. Call Buffer.CopyBuffer(incomingData)
  19.  
  20. 'Remove packet ID
  21. Call Buffer.ReadByte
  22.  
  23. Dim Count As Integer
  24. Dim i As Long
  25. Dim j As Long
  26. Dim k As Long
  27.  
  28. Count = Buffer.ReadInteger()
  29.  
  30. ReDim ArmasHerrero(Count) As tItemsConstruibles
  31. ReDim HerreroMejorar(0) As tItemsConstruibles
  32.  
  33. For i = 1 To Count
  34. With ArmasHerrero(i)
  35. .Name = Buffer.ReadASCIIString() 'Get the object's name
  36. .GrhIndex = Buffer.ReadInteger()
  37. .LinH = Buffer.ReadInteger() 'The iron needed
  38. .LinP = Buffer.ReadInteger() 'The silver needed
  39. .LinO = Buffer.ReadInteger() 'The gold needed
  40. .ObjIndex = Buffer.ReadInteger()
  41. .Upgrade = Buffer.ReadInteger()
  42. End With
  43. Next i
  44.  
  45. With frmHerrero
  46. ' Inicializo los inventarios
  47. Call InvLingosHerreria(1).Initialize(DirectDraw, .picLingotes0, 3, , , , , , False)
  48. Call InvLingosHerreria(2).Initialize(DirectDraw, .picLingotes1, 3, , , , , , False)
  49. Call InvLingosHerreria(3).Initialize(DirectDraw, .picLingotes2, 3, , , , , , False)
  50. Call InvLingosHerreria(4).Initialize(DirectDraw, .picLingotes3, 3, , , , , , False)
  51.  
  52. Call .HideExtraControls(Count)
  53. Call .RenderList(1, True)
  54. End With
  55.  
  56. For i = 1 To Count
  57. With ArmasHerrero(i)
  58. If .Upgrade Then
  59. For k = 1 To Count
  60. If .Upgrade = ArmasHerrero(k).ObjIndex Then
  61. j = j + 1
  62.  
  63. ReDim Preserve HerreroMejorar(j) As tItemsConstruibles
  64.  
  65. HerreroMejorar(j).Name = .Name
  66. HerreroMejorar(j).GrhIndex = .GrhIndex
  67. HerreroMejorar(j).ObjIndex = .ObjIndex
  68. HerreroMejorar(j).UpgradeName = ArmasHerrero(k).Name
  69. HerreroMejorar(j).UpgradeGrhIndex = ArmasHerrero(k).GrhIndex
  70. HerreroMejorar(j).LinH = ArmasHerrero(k).LinH - .LinH * 0.85
  71. HerreroMejorar(j).LinP = ArmasHerrero(k).LinP - .LinP * 0.85
  72. HerreroMejorar(j).LinO = ArmasHerrero(k).LinO - .LinO * 0.85
  73.  
  74. Exit For
  75. End If
  76. Next k
  77. End If
  78. End With
  79. Next i
  80.  
  81. 'If we got here then packet is complete, copy data back to original queue
  82. Call incomingData.CopyBuffer(Buffer)
  83.  
  84. ErrHandler:
  85. Dim error As Long
  86. error = Err.number
  87. On Error GoTo 0
  88.  
  89. 'Destroy auxiliar buffer
  90. Set Buffer = Nothing
  91.  
  92. If error <> 0 Then _
  93. Err.Raise error
  94. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement