En Game Maker puedes definir caminos o trayectorias (paths) y ordenar a las instancias que los sigan. Aunque puedes usar las acciones para esto, existen funciones que te dan más flexibilidad:
path_start(path,speed,endaction,absolute) Comienza un path para la instancia actual. path es el nombre del path que deseas iniciar. speed es la velocidad con la que la instancia debe moverse por el path (una velocidad negativa indica que la instancia se moverá al revés sobre el path). endaction indica que debería ocurrir cuando la instancia llegue al final del camino. Puedes usar los siguientes valores para esto:
0 : parase
1: continuar desde la posición inicial del path (s el path no está cerrado
saltamos a la posición inicial)
2: continuar desde la posición inicial
3: recorrer el path al revés (cambia el signo de la velocidad)
El argumento
absolute
debe ser true o false. Cuando es true se usan las
coordenadas absolutas del path. Cuando es false el path es relativo a la
posición actual de la instancia. Para ser más precisos, si la velocidad es
positiva el punto inicial del path se colocará en la posición actual de la
instancia y se seguirá desde ahí. Cuando la velocidad es negativa, el punto
final del path se colocará en la posición de la instancia y el path se seguirá
al revés desde ahí.
path_end()
Termina el path para la instancia actual.
path_index*
Índice del path que la instancia sigue. No se puede cambiar directamente, debes
utilizar la función
path_start(path,speed,endaction,absolute).
path_position
Posición en el path actual. 0 es el principio del path y 1 es el final. Los
valores deben estar entre 0 y 1.
path_positionprevious
Posición previa en el path. Esto se puede usar en eventos de colisión para
colocar la instancia en la posición anterior antes de una colisión.
path_speed
Velocidad (en píxels por paso) con la que la instancia sigue el path. Con una
velocidad negativa el path se recorre en sentido inverso.
path_orientation
Orientación (antihoraria) en la que se realiza el path. 0 es la orientación
normal del path.
path_scale
Escala del path. Auméntala para hacer el path más grande. 1 es el valor normal
del path.
path_endaction
La acción que se debe ejecutar al finalizar el path.
Puedes indicar
los valores explicados más arriba.