Game Maker Studio

Tutorial: Bloques apilables con gravedad

Un bloque apilable al que le afecta la gravedad tiene varias características:

  • Mientras no colisione con un bloque fijo, la gravedad actúa en él y le hace caer.
  • El jugador puede montarse encima
  • Pueden apilarse uno sobre otro, es decir, no comparten el mismo espacio físico

Un ejemplo de este tipo de bloques lo tenemos en el juego Emoji World 2, con forma de tomates. Estos tomates pueden formar estructuras al colocarse unos sobre otros, permaneciendo inmóviles una vez se apilan. Vemos el ejemplo:

apilables

Para montarte tu propio bloque apilable con gravedad, basta con que crees un nuevo objeto, actives el flag de Solid para que el jugador pueda subirse a él, y a continuación, introducir el siguiente código en el evento Step:

if (place_empty(x,y+1+vspeed)){     
    gravity_direction=270;     
    gravity=0.25;     
}else{     
    move_contact_all(270,vspeed)  
    gravity=0;     
    speed=0;
    move_snap(32,32)     
}

¿Que hace este código? El primer if comprueba si hay hueco justo debajo del objeto, y de ser así, deja que la gravedad actúe un frame más. En caso contrario, hace que el objeto contacte con el que tiene justo debajo, anula la gravedad y la velocidad del objeto, y además lo fija a la cuadrícula (la cuadrícula debería de tener el tamaño del sprite del objeto) para que el aspecto del conjunto sea más vistoso (el ejemplo de los tomates, todos en su sitio, ninguno más cerca ni más lejos de los otros).

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s