- Joined
- Dec 31, 2013
- Messages
- 3
- Reaction score
- 1
Hello, I would like to share a Java class that did, serves to render maps 32x32, was very simple and easy to understand so I'm posting.
The class renders what should be seen as soon as it consumes very little memory. [old version]
Since a 5x5 map would be:
The project already has some new updates, latest video project:
http://www.youtube.com/watch?v=Za6mYKac3tc
note: i'm using google translator, but my english is understandable. [:
The class renders what should be seen as soon as it consumes very little memory. [old version]
Code:
[LIST=1]
[*]package com.[COLOR=#007788]primedi[/COLOR].[COLOR=#007788]ig[/COLOR][COLOR=#008080];[/COLOR]
[*]import java.[COLOR=#007788]awt[/COLOR].[COLOR=#007788]Color[/COLOR][COLOR=#008080];[/COLOR]
[*][COLOR=#0000ff]public[/COLOR] [COLOR=#0000ff]class[/COLOR] Mapa extends JFrame [COLOR=#008000]{[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]static[/COLOR] final [COLOR=#0000ff]long[/COLOR] serialVersionUID [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]1L[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]public[/COLOR] String nomeMapa [COLOR=#000080]=[/COLOR] null[COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] JPanel panMapa[COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] JScrollPane brPanMapa[COLOR=#008080];[/COLOR]
[*] [COLOR=#666666]// alcance da tela em tiles *[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]static[/COLOR] final [COLOR=#0000ff]int[/COLOR] alcanceX [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]20[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]static[/COLOR] final [COLOR=#0000ff]int[/COLOR] alcanceY [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]15[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#666666]// alcance da tela em tiles[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] JLabel[COLOR=#008000][[/COLOR][COLOR=#008000]][/COLOR][COLOR=#008000][[/COLOR][COLOR=#008000]][/COLOR] tilesImaginarios [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]new[/COLOR] JLabel[COLOR=#008000][[/COLOR]alcanceX[COLOR=#008000]][/COLOR][COLOR=#008000][[/COLOR]alcanceY[COLOR=#008000]][/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#666666]//public static int X_POS_TILE = -1;[/COLOR]
[*] [COLOR=#666666]//public static int Y_POS_TILE = -1;[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] Arquivo arqMapa [COLOR=#000080]=[/COLOR] null[COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]public[/COLOR] Mapa[COLOR=#008000]([/COLOR]String nomeMapa[COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] [COLOR=#0000dd]this[/COLOR].[COLOR=#007788]nomeMapa[/COLOR] [COLOR=#000080]=[/COLOR] nomeMapa[COLOR=#008080];[/COLOR]
[*] inicializarJanela[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] setVisible[COLOR=#008000]([/COLOR][COLOR=#0000ff]true[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] processosCons[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]void[/COLOR] criarJanela[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] [COLOR=#666666]//setTitle("zMeck - Início");[/COLOR]
[*] setSize[COLOR=#008000]([/COLOR][COLOR=#0000dd]1352[/COLOR], [COLOR=#0000dd]594[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] getContentPane[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]setLayout[/COLOR][COLOR=#008000]([/COLOR]null[COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] setResizable[COLOR=#008000]([/COLOR][COLOR=#0000ff]false[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] setLocationRelativeTo[COLOR=#008000]([/COLOR]null[COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] setUndecorated[COLOR=#008000]([/COLOR][COLOR=#0000ff]true[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] getContentPane[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]setBackground[/COLOR][COLOR=#008000]([/COLOR]Color.[COLOR=#007788]BLACK[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] setDefaultCloseOperation[COLOR=#008000]([/COLOR]EXIT_ON_CLOSE[COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]void[/COLOR] criarPaineis[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] panMapa [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]new[/COLOR] JPanel[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] panMapa.[COLOR=#007788]setLayout[/COLOR][COLOR=#008000]([/COLOR]null[COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] panMapa.[COLOR=#007788]setBackground[/COLOR][COLOR=#008000]([/COLOR]Color.[COLOR=#007788]BLACK[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]void[/COLOR] criarBarrasDeRolagem[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] brPanMapa [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]new[/COLOR] JScrollPane[COLOR=#008000]([/COLOR]panMapa[COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] brPanMapa.[COLOR=#007788]setBounds[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000dd]0[/COLOR], [COLOR=#0000dd]0[/COLOR], [COLOR=#0000dd]658[/COLOR], [COLOR=#0000dd]498[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] brPanMapa.[COLOR=#007788]getHorizontalScrollBar[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]setUnitIncrement[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000dd]16[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]void[/COLOR] adicionarComponentes[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] getContentPane[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]add[/COLOR][COLOR=#008000]([/COLOR]brPanMapa[COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]void[/COLOR] inicializarJanela[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] criarJanela[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] criarPaineis[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] criarBarrasDeRolagem[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] adicionarComponentes[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] carregarInfosMapa[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]void[/COLOR] carregarInfosMapa[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] arqMapa [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]new[/COLOR] Arquivo[COLOR=#008000]([/COLOR][COLOR=#FF0000]"mapas"[/COLOR], nomeMapa [COLOR=#000040]+[/COLOR] [COLOR=#FF0000]".pmp"[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] arqMapa.[COLOR=#007788]carregarArquivo[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] Dimension d [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]new[/COLOR] Dimension[COLOR=#008000]([/COLOR][COLOR=#008000]([/COLOR]arqMapa.[COLOR=#007788]lerLinha[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000dd]0[/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]length[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR] [COLOR=#000040]*[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008000])[/COLOR], arqMapa.[COLOR=#007788]pegarNumeroLinhas[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR] [COLOR=#000040]*[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] panMapa.[COLOR=#007788]setPreferredSize[/COLOR][COLOR=#008000]([/COLOR]d[COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] panMapa.[COLOR=#007788]setVisible[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000ff]true[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]for[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000ff]int[/COLOR] j [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]0[/COLOR][COLOR=#008080];[/COLOR] j [COLOR=#000080]<[/COLOR] alcanceY[COLOR=#008080];[/COLOR] j[COLOR=#000040]++[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] [COLOR=#0000ff]for[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000ff]int[/COLOR] i [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]0[/COLOR][COLOR=#008080];[/COLOR] i [COLOR=#000080]<[/COLOR] alcanceX[COLOR=#008080];[/COLOR] i[COLOR=#000040]++[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] tilesImaginarios[COLOR=#008000][[/COLOR]i[COLOR=#008000]][/COLOR][COLOR=#008000][[/COLOR]j[COLOR=#008000]][/COLOR] [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]new[/COLOR] JLabel[COLOR=#008000]([/COLOR][COLOR=#0000dd]new[/COLOR] ImageIcon[COLOR=#008000]([/COLOR][COLOR=#FF0000]"tiles/tile2.PNG"[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] tilesImaginarios[COLOR=#008000][[/COLOR]i[COLOR=#008000]][/COLOR][COLOR=#008000][[/COLOR]j[COLOR=#008000]][/COLOR].[COLOR=#007788]setBounds[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000]([/COLOR]i [COLOR=#000040]*[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008000])[/COLOR] [COLOR=#000040]+[/COLOR] [COLOR=#0000dd]658[/COLOR], j [COLOR=#000040]*[/COLOR] [COLOR=#0000dd]32[/COLOR], [COLOR=#0000dd]32[/COLOR], [COLOR=#0000dd]32[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] getContentPane[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]add[/COLOR][COLOR=#008000]([/COLOR]tilesImaginarios[COLOR=#008000][[/COLOR]i[COLOR=#008000]][/COLOR][COLOR=#008000][[/COLOR]j[COLOR=#008000]][/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]void[/COLOR] altImg[COLOR=#008000]([/COLOR][COLOR=#0000ff]int[/COLOR] x, [COLOR=#0000ff]int[/COLOR] y[COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] [COLOR=#0000ff]for[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000ff]int[/COLOR] j [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]0[/COLOR][COLOR=#008080];[/COLOR] j [COLOR=#000080]<[/COLOR] alcanceY[COLOR=#008080];[/COLOR] j[COLOR=#000040]++[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] [COLOR=#0000ff]for[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000ff]int[/COLOR] i [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]0[/COLOR][COLOR=#008080];[/COLOR] i [COLOR=#000080]<[/COLOR] alcanceX[COLOR=#008080];[/COLOR] i[COLOR=#000040]++[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] tilesImaginarios[COLOR=#008000][[/COLOR]i[COLOR=#008000]][/COLOR][COLOR=#008000][[/COLOR]j[COLOR=#008000]][/COLOR].[COLOR=#007788]setIcon[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000dd]new[/COLOR] ImageIcon[COLOR=#008000]([/COLOR][COLOR=#FF0000]"tiles/tile"[/COLOR] [COLOR=#000040]+[/COLOR] arqMapa.[COLOR=#007788]lerLinha[/COLOR][COLOR=#008000]([/COLOR]y [COLOR=#000040]+[/COLOR] j[COLOR=#008000])[/COLOR].[COLOR=#007788]charAt[/COLOR][COLOR=#008000]([/COLOR]x [COLOR=#000040]+[/COLOR] i[COLOR=#008000])[/COLOR] [COLOR=#000040]+[/COLOR] [COLOR=#FF0000]".PNG"[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]private[/COLOR] [COLOR=#0000ff]void[/COLOR] processosCons[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] Timer t [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]new[/COLOR] Timer[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] t.[COLOR=#007788]schedule[/COLOR][COLOR=#008000]([/COLOR][COLOR=#0000dd]new[/COLOR] TimerTask[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR] [COLOR=#008000]{[/COLOR]
[*] [COLOR=#0000ff]int[/COLOR] posInicialScrollX [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]0[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]int[/COLOR] posInicialScrollY [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]0[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]int[/COLOR] c32 [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]int[/COLOR] c32y [COLOR=#000080]=[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]public[/COLOR] [COLOR=#0000ff]void[/COLOR] run[COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR] [COLOR=#008000]{[/COLOR]
[*] [COLOR=#0000ff]if[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]x[/COLOR] [COLOR=#000040]![/COLOR][COLOR=#000080]=[/COLOR] posInicialScrollX[COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] posInicialScrollX [COLOR=#000080]=[/COLOR] brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]x[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]if[/COLOR][COLOR=#008000]([/COLOR]posInicialScrollX [COLOR=#000080]>[/COLOR] c32[COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] altImg[COLOR=#008000]([/COLOR]C32.[COLOR=#007788]pixelPara32[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]x[/COLOR][COLOR=#008000])[/COLOR], C32.[COLOR=#007788]pixelPara32[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]y[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] c32 [COLOR=#000040]+[/COLOR][COLOR=#000080]=[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]return[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]if[/COLOR][COLOR=#008000]([/COLOR]posInicialScrollX [COLOR=#000080]<[/COLOR] c32[COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] altImg[COLOR=#008000]([/COLOR]C32.[COLOR=#007788]pixelPara32[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]x[/COLOR][COLOR=#008000])[/COLOR], C32.[COLOR=#007788]pixelPara32[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]y[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] c32 [COLOR=#000040]-[/COLOR][COLOR=#000080]=[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]return[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]if[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]y[/COLOR] [COLOR=#000040]![/COLOR][COLOR=#000080]=[/COLOR] posInicialScrollY[COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] posInicialScrollY [COLOR=#000080]=[/COLOR] brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]y[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]if[/COLOR][COLOR=#008000]([/COLOR]posInicialScrollY [COLOR=#000080]>[/COLOR] c32y[COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] altImg[COLOR=#008000]([/COLOR]C32.[COLOR=#007788]pixelPara32[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]x[/COLOR][COLOR=#008000])[/COLOR], C32.[COLOR=#007788]pixelPara32[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]y[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] c32y [COLOR=#000040]+[/COLOR][COLOR=#000080]=[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]return[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#0000ff]if[/COLOR][COLOR=#008000]([/COLOR]posInicialScrollY [COLOR=#000080]<[/COLOR] c32y[COLOR=#008000])[/COLOR][COLOR=#008000]{[/COLOR]
[*] altImg[COLOR=#008000]([/COLOR]C32.[COLOR=#007788]pixelPara32[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]x[/COLOR][COLOR=#008000])[/COLOR], C32.[COLOR=#007788]pixelPara32[/COLOR][COLOR=#008000]([/COLOR]brPanMapa.[COLOR=#007788]getViewport[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]getViewPosition[/COLOR][COLOR=#008000]([/COLOR][COLOR=#008000])[/COLOR].[COLOR=#007788]y[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] c32y [COLOR=#000040]-[/COLOR][COLOR=#000080]=[/COLOR] [COLOR=#0000dd]32[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#0000ff]return[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*] [COLOR=#008000]}[/COLOR], [COLOR=#0000dd]1[/COLOR], [COLOR=#0000dd]1[/COLOR][COLOR=#008000])[/COLOR][COLOR=#008080];[/COLOR]
[*] [COLOR=#008000]}[/COLOR]
[*][COLOR=#008000]}[/COLOR]
[/LIST]
Since a 5x5 map would be:
Code:
00000
00000
00000
00000
00000
The project already has some new updates, latest video project:
http://www.youtube.com/watch?v=Za6mYKac3tc
note: i'm using google translator, but my english is understandable. [:

