quando eu dou run e vou testar a colisao no bloco da direita na parte esquerda nao vai mais na direita vai e no bloco da esquerda a parte esquerda nao vai e a parte direita vai
jogador = {
sprite = 32,
x = 120,
y = 68
}
constantes = {
LARGURA_DA_TELA = 240,
ALTURA_DA_TELA = 138
}
function temColisaoComMapa(ponto)
blocoId = mget(ponto.x / 8, ponto.y / 8)
if blocoId >= 128 then
return true
else
return false
end
end
function atualiza()
-- cima
if btn(0) then
superiorEsquerdo = {
x = jogador.x - 8,
y = jogador.y - 8 - 1
}
superiorDireito = {
x = jogador.x + 8,
y = jogador.x - 8 - 1
}
if temColisaoComMapa(superiorEsquerdo) or
temColisaoComMapa(superiorDireito) then
-- colisao!!
else
jogador.y = jogador.y - 1
end
end
-- baixo
if btn (1) then
jogador.y = jogador.y + 1
end
-- esquerda
if btn (2) then
jogador.x = jogador.x - 1
end
-- direita
if btn (3) then
jogador.x = jogador.x + 1
end
end
function desenhaMapa()
map(0, -- posicao x no mapa
0, -- posicao y no mapa
constantes.LARGURA_DA_TELA, -- quanto desenhar x
constantes.ALTURA_DA_TELA, -- quanto desenhar y
0, -- em qual ponto colocar o x
0) -- em qual ponto colocar o y
end
function desenhaJogador()
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 esquerda
end
function desenha()
cls()
desenhaMapa()
desenhaJogador()
print(jogador.y)
end
function TIC()
atualiza()
desenha()
end
eu nao consegui encontrar nenhum erro se vcs puderem me falar oq esta de errado por favor me respondem por favor ou me fale uma jeito pra funcionar