Witam.
Od przedwczoraj babram się w js'ie z elementem <canvas>.
Postanowiłem napisać prostą platformówkę.
Napisałem poruszanie się, obracanie postaci tam gdzie idziemy, animację tańczenia i teraz chcę zrobić mapę.
Mam taką tablicę:
var mapTiles = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,],];
Zero oznacza powietrze, a 1 bloczek.
Dalej w funkcji wykonującej się co klatkę mam taką pętlę:
for(i=0; i<15; i++){
for(o=0; o<12; o++){
if(mapTiles[i][o] == 1){
//rysowanie bloczka
}
}
}
a konsola wywala mi taki błąd
script.js:164
Uncaught TypeError: Cannot read property '0' of undefined
at draw (script.js:164)
draw @ script.js:164
setInterval (async)
(anonymous) @ script.js:175
Co robię nie tak?