Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Sub drawBarByVital(Vital As Vitals, Pos As VectorXY, Width As Integer, Color As SFML.Graphics.Color)
- Dim uiTexture As Integer, sString As String
- Dim textPos, barValue As New VectorXY(0, 0)
- Try
- With Player(MapIndex)
- Select Case Vital
- Case Vitals.HP, Vitals.MP
- ' Definir la textura de la barra
- uiTexture = IIf(Vital = Vitals.HP, 7, 13)
- Dim fVital As Double = (GetPlayerVital(MapIndex, Vital) / Width)
- Dim sVital As Double = (GetPlayerMaxVital(MapIndex, Vital) / Width)
- If fVital > 0 And sVital > 0 Then
- If Vital = Vitals.HP Then
- BarWidth_GuiHP_Max = (fVital / sVital) * Width
- Else BarWidth_GuiMP_Max = (fVital / sVital) * Width
- End If
- barValue = VecXY(Tex_GUI(uiTexture).Size.X, IIf(Vital = Vitals.HP, 67 - BarWidth_GuiHP, 67 - BarWidth_GuiMP))
- Else barValue = VecXY(Tex_GUI(uiTexture).Size.X, Tex_GUI(uiTexture).Size.Y)
- End If
- Color = D3DColorRGBA(25, 25, 25, Color.A)
- ' Definir la cantidad de vida o mana
- sString = GetPlayerVital(MapIndex, Vital)
- textPos = IIf(Vital = Vitals.HP, VecXY(Pos.X + 21, Pos.Y + 24), VecXY(Pos.X + 17, Pos.Y + 24))
- Case Else ' Experiencia
- ' Definir la textura de la barra
- uiTexture = 24
- If .EXP <> TNL Then
- BarWidth_GuiEXP_Max = ((.EXP / Width) / (TNL / Width)) * Width
- Else BarWidth_GuiEXP = Width
- End If
- barValue = VecXY(BarWidth_GuiEXP, Tex_GUI(uiTexture).Size.Y)
- ' Definir la cantidad de experiencia
- sString = IIf(.EXP = TNL, "MAX", .EXP & "/" & TNL)
- textPos = VecXY(Pos.X + 146, Pos.Y - 6)
- End Select
- RenderTexture(Tex_GUI(uiTexture), Pos.X, Pos.Y, 0, 0, barValue.X, barValue.Y, barValue.X, barValue.Y, Color, GameWindow)
- DrawFonte(sString, D3DColorRGBA(255, 255, 255, Color.A), AlignCenter(sString, textPos.X), textPos.Y, 0, GameWindow)
- End With
- Catch ex As Exception
- Exit Sub
- End Try
- End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement