Sub CharRender

eKiz De.-

Newbie Lvl 2
Buenas noches ante todo . Estoy volviendo al Argentum Online despues de vario tiempo. Mi problema es el siguiente, al tirarme invi veo el personaje pero no veo el nick. Compare con otro codigo y esta practicamente casi igual. Queria saber si me podrian ayudar?. Les dejo el Sub !

Private Sub CharRender(ByVal CharIndex As Long, ByVal PixelOffsetX As Integer, _
ByVal PixelOffsetY As Integer)
'***************************************************
'Author: Juan Martín Sotuyo Dodero (Maraxus)
'Last Modify Date: 12/03/04
'Draw char's to screen without offcentering them
'***************************************************
Dim moved As Boolean
Dim Pos As Integer
Dim Line As String
Dim Color As Long

Dim lClan As String
Dim lPos As Integer

10 With charlist(CharIndex)
20 If .Moving Then
'If needed, move left and right
30 If .scrollDirectionX <> 0 Then
40 If Not UserMontando Then
50 .MoveOffsetX = .MoveOffsetX + ScrollPixelsPerFrameX * _
Sgn(.scrollDirectionX) * timerTicksPerFrame
60 Else
70 .MoveOffsetX = .MoveOffsetX + ScrollPixelsPerFrameX * _
Sgn(.scrollDirectionX) * timerTicksPerFrame * Velocidad / 10 _
'Reemplacen este 10 por el valor por el que quieran dividir la _
vel
80 End If

'Start animations
'TODO : Este parche es para evita los uncornos exploten al moverse!! REVER!!!
90 If .Body.Walk(.Heading).Speed > 0 Then _
.Body.Walk(.Heading).Started = 1
100 .Arma.WeaponWalk(.Heading).Started = 1
110 .Escudo.ShieldWalk(.Heading).Started = 1

'Char moved
120 moved = True

'Check if we already got there
130 If (Sgn(.scrollDirectionX) = 1 And .MoveOffsetX >= 0) Or _
(Sgn(.scrollDirectionX) = -1 And .MoveOffsetX <= 0) Then
140 .MoveOffsetX = 0
150 .scrollDirectionX = 0
160 End If
170 End If

'If needed, move up and down
180 If .scrollDirectionY <> 0 Then
190 If Not UserMontando Then
200 .MoveOffsetY = .MoveOffsetY + ScrollPixelsPerFrameY * _
Sgn(.scrollDirectionY) * timerTicksPerFrame
210 Else
220 .MoveOffsetY = .MoveOffsetY + ScrollPixelsPerFrameY * _
Sgn(.scrollDirectionY) * timerTicksPerFrame * Velocidad / 10
230 End If

'Start animations
'TODO : Este parche es para evita los uncornos exploten al moverse!! REVER!!!
240 If .Body.Walk(.Heading).Speed > 0 Then _
.Body.Walk(.Heading).Started = 1
250 .Arma.WeaponWalk(.Heading).Started = 1
260 .Escudo.ShieldWalk(.Heading).Started = 1

'Char moved
270 moved = True

'Check if we already got there
280 If (Sgn(.scrollDirectionY) = 1 And .MoveOffsetY >= 0) Or _
(Sgn(.scrollDirectionY) = -1 And .MoveOffsetY <= 0) Then
290 .MoveOffsetY = 0
300 .scrollDirectionY = 0
310 End If
320 End If
330 End If

'If done moving stop animation
340 If Not moved Then
350 If .Heading < 1 Or .Heading > 4 Then .Heading = EAST

'Stop animations
360 .Body.Walk(.Heading).Started = 0
370 .Body.Walk(.Heading).FrameCounter = 1

380 If Not .Movimient Then

390 .Arma.WeaponWalk(.Heading).Started = 0
400 .Arma.WeaponWalk(.Heading).FrameCounter = 1

410 .Escudo.ShieldWalk(.Heading).Started = 0
420 .Escudo.ShieldWalk(.Heading).FrameCounter = 1

430 End If

.Moving = False
End If


460 PixelOffsetX = PixelOffsetX + .MoveOffsetX
470 PixelOffsetY = PixelOffsetY + .MoveOffsetY
'(228, 158, 67)

If .iBody = 409 Then

If Len(.Nombre) > 0 Then
Line = "< " & .Nombre & " >"
Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, PixelOffsetY + 30, Line, RGB(255, 0, 0), frmMain.font)
End If
ElseIf .iBody = 410 Then

If Len(.Nombre) > 0 Then
Line = "< " & .Nombre & " >"
Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, PixelOffsetY + 30, Line, RGB(228, 158, 67), frmMain.font)
End If

ElseIf .iHead = 0 And .iBody > 0 Then
If Len(.Nombre) > 0 Then
Line = "< " & .Nombre & " >"
Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, PixelOffsetY + 30, Line, RGB(0, 100, 255), frmMain.font)
End If
End If

If LenB(.Nombre) > 0 Then 'INVI ENTRE MIEMBROS DE CLAN, Y NOMBRE EN BLANCO CUANDO ESTA INVISIBLE TAMBIEN
If Nombres Then

Pos = getTagPosition(.Nombre)
Line = mid$(.Nombre, Pos) 'ClanName

lPos = getTagPosition(charlist(UserCharIndex).Nombre)
lClan = mid$(charlist(UserCharIndex).Nombre, lPos) 'ClanName

If (UCase$(Line) = UCase$(lClan) And LenB(Line) > 3) Then 'SOn del mismo clan

Color = RGB(0, 204, 0)
Line = Left$(.Nombre, Pos - 2)
'Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, PixelOffsetY + 30, Line, Color, frmMain.font)

Call RenderTextCentered(PixelOffsetX + _
TilePixelWidth \ 2 + 5, PixelOffsetY + 30, Line, _
Color, frmMain.font)

'Clan
Line = mid$(.Nombre, Pos)
Call RenderTextCentered(PixelOffsetX + _
TilePixelWidth \ 2 + 5, PixelOffsetY + 45, Line, _
Color, frmMain.font)

End If

End If

End If 'LENB(.NOMBRE) > 0

480 If .Head.Head(.Heading).GrhIndex Then
490 If Not .Invisible Then
500 If ConAlfaB = 0 Then
510 Movement_Speed = 0.5
'Draw Body
520 If .Body.Walk(.Heading).GrhIndex Then
530 Call DDrawTransGrhtoSurface(.Body.Walk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)
540 End If

'Draw Head
550 If .Head.Head(.Heading).GrhIndex Then

560 Call DDrawTransGrhtoSurface(.Head.Head(.Heading), _
PixelOffsetX + .Body.HeadOffset.X, PixelOffsetY + _
.Body.HeadOffset.Y, 1, 0)

'Draw Helmet
570 If .Casco.Head(.Heading).GrhIndex Then

If .Casco.Head(.Heading).GrhIndex >= 24738 And .Casco.Head(.Heading).GrhIndex <= 24741 Then

Call _
DDrawTransGrhtoSurface(.Casco.Head(.Heading), PixelOffsetX _
+ .Body.HeadOffset.X, PixelOffsetY + .Body.HeadOffset.Y + 13, 1, _
0)

Else

Call _
DDrawTransGrhtoSurface(.Casco.Head(.Heading), PixelOffsetX _
+ .Body.HeadOffset.X, PixelOffsetY + .Body.HeadOffset.Y, 1, _
0)
End If
End If

'Draw Weapon
580 If .Arma.WeaponWalk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurface(.Arma.WeaponWalk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)

'Draw Shield
590 If .Escudo.ShieldWalk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurface(.Escudo.ShieldWalk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)

'Draw name over head
600 If LenB(.Nombre) > 0 Then
610 If Nombres Then
620 Pos = getTagPosition(.Nombre)
'Pos = InStr(.Nombre, "<")
'If Pos = 0 Then Pos = Len(.Nombre) + 2

630 If .priv = 0 Then
640 If .Criminal Or .Team = 1 Then
650 Color = RGB(ColoresPJ(50).r, _
ColoresPJ(50).g, ColoresPJ(50).b)
660 ElseIf Not .Criminal Or .Team = 2 Then
670 Color = RGB(ColoresPJ(49).r, _
ColoresPJ(49).g, ColoresPJ(49).b)
680 End If
690 Else
700 Color = RGB(ColoresPJ(.priv).r, _
ColoresPJ(.priv).g, ColoresPJ(.priv).b)
710 End If




'Nick
720 Line = Left$(.Nombre, Pos - 2)
730 Call RenderTextCentered(PixelOffsetX + _
TilePixelWidth \ 2 + 5, PixelOffsetY + 30, Line, _
Color, frmMain.font)

'Clan
740 Line = mid$(.Nombre, Pos)
750 Call RenderTextCentered(PixelOffsetX + _
TilePixelWidth \ 2 + 5, PixelOffsetY + 45, Line, _
Color, frmMain.font)


760 End If
770 End If
780 End If
790 End If
800 End If
810 End If

820 If .Head.Head(.Heading).GrhIndex Then
830 If Not .Invisible Then
840 If ConAlfaB = 1 Then
850 Movement_Speed = 0.5

860 If .Body.Walk(.Heading).GrhIndex Then
870 If .iBody <> 8 And .iBody <> 145 Then
880 Call DDrawTransGrhtoSurface(.Body.Walk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)
890 Else
900 DDrawTransGrhtoSurfaceAlpha .Body.Walk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1
910 End If
920 End If

'Draw Head
930 If .Head.Head(.Heading).GrhIndex Then
940 If .iHead <> 500 And .iHead <> 501 Then
950 Call DDrawTransGrhtoSurface(.Head.Head(.Heading), _
PixelOffsetX + .Body.HeadOffset.X, PixelOffsetY + _
.Body.HeadOffset.Y, 1, 0)
960 Else
970 DDrawTransGrhtoSurfaceAlpha .Head.Head(.Heading), _
PixelOffsetX + .Body.HeadOffset.X, PixelOffsetY + _
.Body.HeadOffset.Y, 1, 0
980 End If

'Draw Helmet
990 If .Casco.Head(.Heading).GrhIndex Then

If .Casco.Head(.Heading).GrhIndex >= 24738 And .Casco.Head(.Heading).GrhIndex <= 24741 Then
Call _
DDrawTransGrhtoSurface(.Casco.Head(.Heading), PixelOffsetX _
+ .Body.HeadOffset.X, PixelOffsetY + .Body.HeadOffset.Y + 13, 1, _
0)
Else
Call _
DDrawTransGrhtoSurface(.Casco.Head(.Heading), PixelOffsetX _
+ .Body.HeadOffset.X, PixelOffsetY + .Body.HeadOffset.Y, 1, _
0)

End If
End If

'Draw Weapon
1000 If .Arma.WeaponWalk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurface(.Arma.WeaponWalk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)

'Draw Shield
1010 If .Escudo.ShieldWalk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurface(.Escudo.ShieldWalk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)

'Draw name over head
1020 If LenB(.Nombre) > 0 Then
1030 If Nombres Then
1040 Pos = getTagPosition(.Nombre)
'Pos = InStr(.Nombre, "<")
'If Pos = 0 Then Pos = Len(.Nombre) + 2

1050 If .priv = 0 Then
1060 If .Team > 0 Then
1070 Select Case .Team
Case 1
1080 Color = RGB(57, 255, 0)
1090 Case 2
1100 Color = RGB(224, 255, 37)
1110 End Select
1120 Else
1130 If .Criminal Then
1140 Color = RGB(ColoresPJ(50).r, _
ColoresPJ(50).g, ColoresPJ(50).b)
1150 Else
1160 Color = RGB(ColoresPJ(49).r, _
ColoresPJ(49).g, ColoresPJ(49).b)
1170 End If
1180 End If
1190 Else
1200 Color = RGB(ColoresPJ(.priv).r, _
ColoresPJ(.priv).g, ColoresPJ(.priv).b)
1210 End If



'Nick
1220 Line = Left$(.Nombre, Pos - 2)
1230 Call RenderTextCentered(PixelOffsetX + _
TilePixelWidth \ 2 + 5, PixelOffsetY + 30, Line, _
Color, frmMain.font)

'Clan
1240 Line = mid$(.Nombre, Pos)
1250 Call RenderTextCentered(PixelOffsetX + _
TilePixelWidth \ 2 + 5, PixelOffsetY + 45, Line, _
Color, frmMain.font)

1260 End If
1270 End If
1280 End If
1290 End If

1300 ElseIf .Invisible Then
1310 If ConAlfaB = 1 Then
1320 If esGM(UserCharIndex) = True Then Exit Sub
1330 If UserOcu = 1 Then Exit Sub
1340 If .cCont > 0 Then .cCont = .cCont - 1
1350 If .cCont = 0 Then
1360 .Drawers = .Drawers + 1
1370 If .Drawers = 156 Then .Drawers = 0: .cCont = 400

1380 If .Body.Walk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurfaceAlpha(.Body.Walk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)

'Draw Head
1390 If .Head.Head(.Heading).GrhIndex Then
1400 Call DDrawTransGrhtoSurfaceAlpha(.Head.Head(.Heading), _
PixelOffsetX + .Body.HeadOffset.X, PixelOffsetY + _
.Body.HeadOffset.Y, 1, 0)


'Draw Helmet
1410 If .Casco.Head(.Heading).GrhIndex Then
If .Casco.Head(.Heading).GrhIndex >= 24738 And .Casco.Head(.Heading).GrhIndex <= 24741 Then
Call _
DDrawTransGrhtoSurfaceAlpha(.Casco.Head(.Heading), _
PixelOffsetX + .Body.HeadOffset.X, PixelOffsetY + _
.Body.HeadOffset.Y + 13, 1, 0)

Else
Call _
DDrawTransGrhtoSurfaceAlpha(.Casco.Head(.Heading), _
PixelOffsetX + .Body.HeadOffset.X, PixelOffsetY + _
.Body.HeadOffset.Y, 1, 0)

End If

End If
'Draw Weapon
1420 If .Arma.WeaponWalk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurfaceAlpha(.Arma.WeaponWalk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)

'Draw Shield
1430 If .Escudo.ShieldWalk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurfaceAlpha(.Escudo.ShieldWalk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)

1440 End If
1450 End If



1460 ElseIf ConAlfaB = 0 Then
1470 If .cCont > 0 Then .cCont = .cCont - 1
1480 If esGM(UserCharIndex) = True Then Exit Sub
1490 If UserOcu = 1 Then Exit Sub
1500 If .cCont = 0 Then
1510 .Drawers = .Drawers + 1
1520 If .Drawers = 156 Then .Drawers = 0: .cCont = 400
1530 If .Body.Walk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurface(.Body.Walk(.Heading), PixelOffsetX, _
PixelOffsetY, 1, 1)

'Draw Head
1540 If .Head.Head(.Heading).GrhIndex Then
1550 Call DDrawTransGrhtoSurface(.Head.Head(.Heading), _
PixelOffsetX + .Body.HeadOffset.X, PixelOffsetY + _
.Body.HeadOffset.Y, 1, 0)

'Draw Helmet
1560 If .Casco.Head(.Heading).GrhIndex Then

If .Casco.Head(.Heading).GrhIndex >= 24738 And .Casco.Head(.Heading).GrhIndex <= 24741 Then
Call _
DDrawTransGrhtoSurface(.Casco.Head(.Heading), PixelOffsetX _
+ .Body.HeadOffset.X, PixelOffsetY + .Body.HeadOffset.Y + 13, 1, _
0)

Else
Call _
DDrawTransGrhtoSurface(.Casco.Head(.Heading), PixelOffsetX _
+ .Body.HeadOffset.X, PixelOffsetY + .Body.HeadOffset.Y, 1, _
0)

End If
End If

'Draw Weapon
1570 If .Arma.WeaponWalk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurface(.Arma.WeaponWalk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)

'Draw Shield
1580 If .Escudo.ShieldWalk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurface(.Escudo.ShieldWalk(.Heading), _
PixelOffsetX, PixelOffsetY, 1, 1)
1590 End If
1600 End If
1610 End If
1620 End If

1630 Else
'Draw Body
1640 If .Body.Walk(.Heading).GrhIndex Then Call _
DDrawTransGrhtoSurface(.Body.Walk(.Heading), PixelOffsetX, _
PixelOffsetY, 1, 1)
1650 End If

1660 If .Infected = 1 Then
'Nick infectado
1670 Line = Left$(.Nombre, Pos - 2)
1680 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 30, Line, RGB(255, 255, 255), frmMain.font)

'Clan infectado
1690 Line = mid$(.Nombre, Pos)
1700 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 45, Line, RGB(255, 255, 255), frmMain.font)

'Tagged Infected for user
1710 Line = " [EVENT BOSS]"
1720 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 60, Line, RGB(255, 255, 255), frmMain.font)
1730 End If

1740 If .Angel = 1 Then
'Nick infectado
1750 Line = Left$(.Nombre, Pos - 2)
1760 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 30, Line, RGB(255, 255, 255), frmMain.font)

'Clan infectado
1770 Line = mid$(.Nombre, Pos)
1780 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 45, Line, RGB(255, 255, 255), frmMain.font)

'Tagged Infected for user
1790 Line = " [EVENT BOSS]"
1800 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 90, Line, RGB(255, 255, 255), frmMain.font)
1810 End If

1820 If .Demonio = 1 Then
'Nick infectado
1830 Line = Left$(.Nombre, Pos - 2)
1840 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 30, Line, RGB(255, 255, 255), frmMain.font)

'Clan infectado
1850 Line = mid$(.Nombre, Pos)
1860 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 45, Line, RGB(255, 255, 255), frmMain.font)

'Tagged Infected for user
1870 Line = " [EVENT BOSS]"
1880 Call RenderTextCentered(PixelOffsetX + TilePixelWidth \ 2 + 5, _
PixelOffsetY + 60, Line, RGB(255, 255, 255), frmMain.font)
1890 End If


'Update dialogs
1900 Call Dialogos.UpdateDialogPos(PixelOffsetX + .Body.HeadOffset.X, _
PixelOffsetY + .Body.HeadOffset.Y, CharIndex) '34 son los pixeles del _
grh de la cabeza que quedan superpuestos al cuerpo
1910 Movement_Speed = 1

'Draw FX
1920 If .FxIndex <> 0 Then
Dim XDATAFX As Integer, YDATAFX As Integer

'@nota de Dunkan: Arreglar desde el INDICE.
1930 If .FxIndex = 1 Then
1940 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
1950 YDATAFX = PixelOffsetY + 25
1960 ElseIf .FxIndex = 18 Then
1970 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
1980 YDATAFX = PixelOffsetY - 15
1990 ElseIf .FxIndex = 17 Then
2000 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
2010 YDATAFX = PixelOffsetY - 15
2020 ElseIf .FxIndex = 19 Then
2030 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
2040 YDATAFX = PixelOffsetY + 25
2050 ElseIf .FxIndex = 7 Then 'TORMENTA DE FUEGO
2060 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
2070 YDATAFX = PixelOffsetY + 30
2080 ElseIf .FxIndex = 8 Then 'PARALIZAR
2090 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
2100 YDATAFX = PixelOffsetY + 35
2110 ElseIf .FxIndex = 9 Then 'CURAR GRAVES
2120 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
2130 YDATAFX = PixelOffsetY + 25
2140 ElseIf .FxIndex = 12 Then 'INMO
2150 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
2160 YDATAFX = PixelOffsetY + 20
2170 Else
2180 XDATAFX = (PixelOffsetX + FxData(.FxIndex).OffsetX)
2190 YDATAFX = PixelOffsetY
2200 End If
2210 If (ConAlfaB = 1) Then
2220 DDrawTransGrhtoSurfaceAlpha .fX, XDATAFX, YDATAFX, 1, 1
2230 Else
2240 Call DDrawTransGrhtoSurface(.fX, XDATAFX, YDATAFX, 1, 1)
2250 End If

'Check if animation is over
2260 If .fX.Started = 0 Then .FxIndex = 0
2270 End If
2280 End With
End Sub


Desde ya muchas gracias .
 

Mufarety

Destructor Lvl 6
No voy a leer todo .jpg

Lo que yo te recomiendo es que coloques llamados a la consola con cualquier frase que se te ocurra en las diferentes interacciones del ".invisible", ¿Me explico? De esta forma podrás encontrár el conjunto de lineas que actua cuando te tirás invi.
 

Bramhh

Fundador EvolutionAo
personaje pero no veo el nick...

Justo ando puliendo eso y logre q ande todo joya.

Te dejo esto pa q compares....

Éste lo uso pa clanes


Código:
If Nombres Then
                             Pos = getTagPosition(.Nombre)
                             line = Left$(.Nombre, Pos - 2)
                             color = RGB(255, 248, 0)
                             Call RenderText(PixelOffsetX - ((frmMain.TextWidth(line) / 2) - 17), PixelOffsetY + 30, line, color, frmMain.font)
    
                             'Clan
                             line = mid$(.Nombre, Pos)
                             Call RenderText(PixelOffsetX - ((frmMain.TextWidth(line) / 2) - 17), PixelOffsetY + 45, line, RGB(203, 203, 203), frmMain.font)
                        End If

y éste pa navegar...


Código:
line = Left$(.Nombre, Pos - 2)
            Call RenderText(PixelOffsetX - ((frmMain.TextWidth(line) / 2) - 17), PixelOffsetY + 30, line, color, frmMain.font)
            'RenderTextCentered PixelOffsetX + 15, PixelOffsetY + 30, line, color, frmMain.font
          
            line = mid$(.Nombre, Pos)
            'RenderTextCentered PixelOffsetX + 15, PixelOffsetY + 45, line, color, frmMain.font
            Call RenderText(PixelOffsetX - ((frmMain.TextWidth(line) / 2) - 17), PixelOffsetY + 45, line, RGB(203, 203, 203), frmMain.font)

Creo que es muy simple la cosa, fijate que esté bien ubicado, sino comparalo con un 13.0 base o un servidor q ande en paralelo, hiciste algo recientemente para q te pase eso?
 
Arriba