eu consegui criar o mapa, o personagem e fazer ele se mecher, mas na hora de fazer a colisão para cima da erro ( ele para de andar para cima porém continua para os lados e para baixo) , alguem pode me dizer o que estou fazendo de errado :D
-- title: primeiro jogo
-- author: alura
-- desc: rpg 2d
-- script: lua
t=0
x=96
y=24
constantes = {
larguratela = 240,
alturatela = 136
}
jogador = {
sprite = 0,
x = 120,
y = 68
}
function atualiza()
-- cima
if btn(0) then
blocoId = mget((jogador.x-8) / 8, (jogador.y-8) / 8)
if blocoId < 128 then
jogador.y = jogador.y + 1
end
end
if btn(1)then
jogador.y = jogador.y + 1
end
if btn(2)then
jogador.x = jogador.x - 1
end
if btn(3)then
jogador.x = jogador.x + 1
end
end
function desenhamapa()
cls()
map(0, -- posicao x no mapa
0, -- posicao y no mapa
constantes.larguratela, -- quanto desenhar x
constantes.alturatela, -- quanto desenhar y
0, -- em qual ponto colocar o x
0) -- em qual ponto colocar o y
end
function desnhajogador()
spr(jogador.sprite,
jogador.x - 8,
jogador.y - 8,
0, -- cor de fundo
1, -- escala
0, -- espelhar
0, -- rotacionar
2, -- quantos blocos para direita
2) -- quantos blocos para baix
end
function TIC()
atualiza()
desenhamapa()
desnhajogador()
print(jogador.y)
end