Código:
' *Procedimiento para dibujar el mapa.
Sub DibujarMapa()
Dim nMapa As Integer ' Número de archivo.
Dim sMapa As String ' Ruta y nombre de archivo.
Dim TilesMapa As String ' Variable para leer los tiles de cada linea.
Dim Columnas As Integer ' Número de columnas
Dim Filas As Integer ' Número de filas
Dim ch As String ' Variable para cambiar caracteres
Dim i As Integer ' Contador
Dim c As Integer ' Contador2
Dim n As Integer ' Contador3
Dim m As Integer ' Contador4
Dim f As Integer
i = 1
n = 0
m = 0
nMapa = FreeFile
sMapa = MapasDir & "mapa.map"
Open sMapa For Input As #nMapa
' Coge el número de columnas y filas
Input #nMapa, Filas, Columnas
For f = 1 To Filas
m = 0
Line Input #nMapa, TilesMapa
For c = 1 To Columnas
ch = Mid$(TilesMapa, c, 1)
' Hierba
If LCase$(ch) = "#" Then
Load FrmMapa.tile(i)
FrmMapa.tile(i).Top = 0 + n
FrmMapa.tile(i).Left = 0 + m
FrmMapa.tile(i).Picture = LoadPicture(GraficosDir & "200.jpg")
FrmMapa.tile(i).Visible = True
' Agua
ElseIf LCase$(ch) = "A" Then
Load FrmMapa.tile(i)
FrmMapa.tile(i).Picture = LoadPicture(GraficosDir & "204.jpg")
FrmMapa.tile(i).Top = 0 + n
FrmMapa.tile(i).Left = 0 + m
FrmMapa.tile(i).Visible = True
' Tierra
ElseIf LCase$(ch) = "T" Then
Load FrmMapa.tile(i)
FrmMapa.tile(i).Top = 0 + n
FrmMapa.tile(i).Left = 0 + m
FrmMapa.tile(i).Picture = LoadPicture(GraficosDir & "201.jpg")
FrmMapa.tile(i).Visible = True
' Desierto
ElseIf LCase$(ch) = "D" Then
Load FrmMapa.tile(i)
FrmMapa.tile(i).Top = 0 + n
FrmMapa.tile(i).Left = 0 + m
FrmMapa.tile(i).Picture = LoadPicture(GraficosDir & "202.jpg")
FrmMapa.tile(i).Visible = True
End If
i = i + 1
m = m + 50
If c = Columnas Then
n = n + 50
'MsgBox "n + 50"
End If
Next c
Next f
Close #nMapa
End Sub
Lee el mapa muy bien y tal el carácter "#", pero al cambiar el caracter a "D" por ejemplo, no se ve, directamente, no carga el tile(i)... Alguien tiene alguna idea de porque ocurre esto? Si no se entiendo, decidlo y lo intento explicar mejor... Gracias.