Colocando movimiento del fantasma que busca


Para este cambio, hicimos un laboratorio donde programamos el comportamiento del fantasma que persigue. Sigue teniendo un par de bugs, pero veamos primero como se comporta en el gameplay y decidimos si solucionamos o no. 


Movimiento Enemigo

Para el movimiento de los fantasmas para buscar a pacmen

será de la siguiente forma:

Tenemos que buscar el vector entre el fantasma y el PJ (pacmen) y definir en qué área del plano cartesiano está. Donde tendrá dos posibles direcciones de la lista:

  • Arriba
  • Abajo
  • Izquierda
  • Derecha

Al saber las dos posibles direcciones el cual se va a poder mover. Se tendrá que verificar si se puede mover o no en esas direcciones. Si no se puede mover, los eliminamos de las posibles direcciones en las que se moverá el personaje.

La dirección a la cual se va a mover será la más lejana entre X y Y del vector de distancia calculado anteriormente, o la disponible.

El comportamiento de huida será 

buscar el vector entre el fantasma y el PJ (pacmen) y definir en que área del plano cartesiano se puede mover. Invirtiendo el movimiento hacia los lados contrarios a los encontrados.

Ejemplo:

Si pacman está a:

derecha, abajo

Se cambiará a izquierda, arriba

Verificamos si se puede mover en esas direcciones. de lo contrario los eliminamos de las posibles direcciones para moverse.

La dirección a la cual se moverá será la más lejana o la disponible

Para solucionar el problema de las colisiones del fantasma al momento de cruzar una esquina lo que se realzará es que, en cada borde del “fantasma” colocaremos el rayo raycast para verificar que por ahí se puede o no mover.

Mientras haya colisión en alguna de las esquinas, obligaremos al fantasma a moverse en la dirección (falta buscar) hasta que no haya colisión.

para cada punto lo que vamos a hacer es dar un rayo de raycast hacia la cardinalidad que tenga el fantasma

Get PacMen_1981

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.