Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Meu personagem não está mais andando

quando eu terminei tudo o que o professor falou e escrevi ¨run¨, o jogo roda, porem não tem como movimentar meu personagem em nenhuma direção, alguém poderia ver e me falar aonde eu errei, por favor?

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() 
end 

 -- cima
if btn(0) then
superiorEsquerdo = {
    x = jogador.x - 8,
    y = jogador.y - 8 - 1
    }
superiorDireito = {
    x = jogador.x + 8,
    y = jogador.y - 8 - 1
}
    if temColisaoComMapa(superiorEsquerdo) or
         temColisaoComMapa(superiorDireito) then
        -- colisao!!
    else
        jogador.y = jogador.y -1
    end
end
    -- esquerda
    if btn (2) then
     jogador.x = jogador.x - 1
    end

    -- direita 
    if btn (3) then
    jogador.x = jogador.x + 1
    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 x
                    0)   -- em qual ponto colocar 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 pra direita
        2) -- quantos blocos para baixo    
    end 

function desenha()
 cls()
    desenhaMapa()
    desenhaJogador()

    print(jogador.y)


end     


function TIC()
  atualiza()
        desenha()
end 
1 resposta
solução!

Você esqueceu de colocar o código dentro da função atualiza(), ela está vazia.