Untitled
moveInimigo :: Tempo -> Inimigo -> Mapa -> (Direcao,Posicao) moveInimigo t Inimigo {posicaoInimigo = (x,y), direcaoInimigo = direcao, velocidadeInimigo = velocidade, projeteisInimigo = lprojeteis} mapa = if any (\proj -> tipoProjetil proj == Gelo) lprojeteis then (direcao,(x,y)) else case direcao of Norte -> if validaPosicaoTerra (x,y+0.501) mapa then (direcao,(x,y+(velocidade*t))) else if validaPosicaoTerra (x+0.501,y) mapa then (Este,(x+(velocidade*t),y)) else (Oeste,(x-velocidade*t,y)) Sul -> if validaPosicaoTerra (x,(y-0.501)) mapa then (direcao,(x,(y-velocidade*t))) else if validaPosicaoTerra (x+0.501,y) mapa then (Este,(x+(velocidade*t),y)) else (Oeste,(x-velocidade*t,y)) Este -> if validaPosicaoTerra (x+0.501,y) mapa then (direcao,(x+(velocidade*t),y)) else if validaPosicaoTerra (x,y+0.501) mapa then (Norte,(x,y+(velocidade*t))) else (Sul,(x,y-velocidade*t)) Oeste -> if validaPosicaoTerra (x-0.501,y) mapa then (direcao,(x-(velocidade*t),y)) else if validaPosicaoTerra (x,y+0.501) mapa then (Norte,(x,y+(velocidade*t))) else (Sul,(x,y-velocidade*t))
Leave a Comment