Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Posição inicial do heroi

Nesse trecho do código eu não entendi as posições heroi[0] e heroi[1].

def calcula_nova_posicao heroi, direcao
    case direcao
        when "W"
            heroi[0] -= 1
        when "S"
            heroi[0] += 1
        when "A"
            heroi[1] -= 1
        when "D"
            heroi[1] += 1
    end
    heroi
end
2 respostas

Ola Lucas, tudo bem ?

Ao que consigo perceber a variável heroi armazena um array contendo duas posições, posição inicial 0 (acessada através de heroi[0]) e outra posição (acessada através de heroi[1]).

Ao que parece quando o usuário pressiona as teclas W e S, a posição 0 do array heroi (heroi[0]) altera seu valor, dando uma idéia de controle de movimentação do heroi para frente e para trás.

O mesmo deve ocorrer quando pressionadas as teclas A e D. A posição 1 do array heroi (heroi[1]) altera seu valor controlando a movimentação à esquerda e à direita. Como se cada posição do array controlasse um dos eixos pelo qual o heroi se movimenta.

Espero ter ajudado no pensamento. Abraço!

solução!

Eu acabei de ver a solução aqui nesse link: https://cursos.alura.com.br/forum/topico-lidando-com-arrays-video-7-23707

Mas obrigado mesmo assim!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software